shithub: riscv

Download patch

ref: 9b28790494ff317b438c7d32a3b0736ac73a1ec9
parent: e06f8e061a54a663f12e41b30271c157a92c159e
parent: 3869d7a8437e2a9902529cd68915dddcb43e6782
author: cinap_lenrek <[email protected]>
date: Sat May 23 22:12:47 EDT 2020

merge

--- a/sys/src/9/port/usbehci.c
+++ b/sys/src/9/port/usbehci.c
@@ -2278,12 +2278,15 @@
 
 	if(poll->must != 0 && poll->does == 0){
 		lock(poll);
-		if(poll->must != 0 && poll->does == 0){
-			poll->does++;
-			print("ehci %#p: polling\n", ctlr->capio);
-			kproc("ehcipoll", ehcipoll, hp);
+		if(poll->must == 0 || poll->does != 0) {
+			unlock(poll);
+			return;
 		}
+		poll->does++;
 		unlock(poll);
+
+		print("ehci %#p: polling\n", ctlr->capio);
+		kproc("ehcipoll", ehcipoll, hp);
 	}
 }