usbehci: catch interrupt in tsleep

This commit is contained in:
aiju 2018-03-07 08:45:06 +00:00
parent 9226caf2a3
commit 56405e0919

View file

@ -3063,7 +3063,10 @@ cancelisoio(Ctlr *ctlr, Isoio *iso, ulong load)
*/ */
wakeup(iso); wakeup(iso);
diprint("cancelisoio iso %#p waiting for I/O to cease\n", iso); diprint("cancelisoio iso %#p waiting for I/O to cease\n", iso);
tsleep(&up->sleep, return0, 0, 5); if(!waserror()){
tsleep(&up->sleep, return0, 0, 5);
poperror();
}
qlock(iso); qlock(iso);
qunlock(iso); qunlock(iso);
diprint("cancelisoio iso %#p releasing iso\n", iso); diprint("cancelisoio iso %#p releasing iso\n", iso);