diff options
Diffstat (limited to 'src/libthread')
-rw-r--r-- | src/libthread/channel.c | 1 | ||||
-rw-r--r-- | src/libthread/fdwait.c | 5 |
2 files changed, 3 insertions, 3 deletions
diff --git a/src/libthread/channel.c b/src/libthread/channel.c index 957a352b..d0fff4a6 100644 --- a/src/libthread/channel.c +++ b/src/libthread/channel.c @@ -201,7 +201,6 @@ _threadnalt++; }else{ altexec(a, s); /* unlocks chanlock, does splx */ } - _sched(); t->chan = Channone; _threadnalt++; return a - alts; diff --git a/src/libthread/fdwait.c b/src/libthread/fdwait.c index e8e3129c..5dd7e868 100644 --- a/src/libthread/fdwait.c +++ b/src/libthread/fdwait.c @@ -146,10 +146,11 @@ pollidle(void *v) for(i=0; i<npoll; i++) if(pfd[i].fd != -1 && pfd[i].revents){ //fprint(2, " %d", pfd[i].fd); - nbsendul(polls[i].c, 1); pfd[i].fd = -1; pfd[i].events = 0; pfd[i].revents = 0; + nbsendul(polls[i].c, 1); + //fprint(2, " x%d", pfd[i].fd); } //fprint(2, "\n"); } @@ -192,7 +193,7 @@ _threadfdwait(int fd, int rw, ulong pc) pfd[i].fd = fd; pfd[i].events = rw=='r' ? POLLIN : POLLOUT; polls[i].c = &s.c; - //fprint(2, "%s [%3d] fdwait %d %c list *0x%lux\n", + if(0) fprint(2, "%s [%3d] fdwait %d %c list *0x%lux\n", argv0, threadid(), fd, rw, pc); recvul(&s.c); } |