git: 9front

Download patch

ref: b4e26834de668da270ca52b83a59dd257cfc1ecb
parent: 142723c0e88eb8a5866b4dd77ee23104dee7ef1b
parent: c3e470c29eae1b0750ccb61ea07223ff792a24a4
author: cinap_lenrek <cinap_lenrek@felloff.net>
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);
 	}
 }
 
--