ref: e594d98f14e6d77a0503b77848d46132dfb6e357
parent: 1f827e781f56f04679dcf1bd2a5531c1d599f662
author: cinap_lenrek <cinap_lenrek@felloff.net>
date: Thu Apr 16 12:07:36 EDT 2015
kernel: cannot interrupt segmentio commands once we submit a command to segmentio process, we have to wait for it to complete even if we got interrupted.
--- a/sys/src/9/port/segment.c
+++ b/sys/src/9/port/segment.c
@@ -799,8 +799,11 @@
{sio->err = nil;
sio->cmd = cmd;
+ while(waserror())
+ ;
wakeup(&sio->cmdwait);
sleep(&sio->replywait, cmddone, sio);
+ poperror();
if(sio->err != nil)
error(sio->err);
}
--
⑨