From fa080de7afc95aa1c19a6e6fc0e0708ced2eadc4 Mon Sep 17 00:00:00 2001 From: Joseph Hunkeler Date: Wed, 8 Jul 2015 20:46:52 -0400 Subject: Initial commit --- sys/ki/ksawait.x | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 sys/ki/ksawait.x (limited to 'sys/ki/ksawait.x') diff --git a/sys/ki/ksawait.x b/sys/ki/ksawait.x new file mode 100644 index 00000000..069826d5 --- /dev/null +++ b/sys/ki/ksawait.x @@ -0,0 +1,24 @@ +# Copyright(c) 1986 Association of Universities for Research in Astronomy Inc. + +include "ki.h" + +# KS_AWAIT -- Wait for i/o to the kernel server device driver given the node +# descriptor of a kernel server channel. If the error bit is set on the +# node return immediately, since the channel will have been closed. + +procedure ks_await (server, status) + +int server # node descriptor index of server +int status # receives i/o status + +int and() +include "kinode.com" + +begin + if (and (n_status[server], F_IOERR) == 0) { + call zawtks (n_kschan[server], status) + if (status == ERR) + call ki_error (server) + } else + status = ERR +end -- cgit