diff options
author | archie <archie@FreeBSD.org> | 2002-05-02 19:58:43 +0000 |
---|---|---|
committer | archie <archie@FreeBSD.org> | 2002-05-02 19:58:43 +0000 |
commit | b163f64d4ed7fcae172128db398cbc49e9c22536 (patch) | |
tree | 1119b760226c7870af16a85be9b494a6c3fa3a24 /lib/libpthread/thread/thr_poll.c | |
parent | 7efe637f5aea25bb5a5edc7e5b0b376e4bfaa671 (diff) | |
download | FreeBSD-src-b163f64d4ed7fcae172128db398cbc49e9c22536.zip FreeBSD-src-b163f64d4ed7fcae172128db398cbc49e9c22536.tar.gz |
Make these functions cancellation points like they should be:
poll(2), readv(2), select(2), wait4(2), writev(2).
PR: bin/37658
Reviewed by: deischen
MFC after: 1 week
Diffstat (limited to 'lib/libpthread/thread/thr_poll.c')
-rw-r--r-- | lib/libpthread/thread/thr_poll.c | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/lib/libpthread/thread/thr_poll.c b/lib/libpthread/thread/thr_poll.c index e2a7cc0..62b2613 100644 --- a/lib/libpthread/thread/thr_poll.c +++ b/lib/libpthread/thread/thr_poll.c @@ -41,7 +41,7 @@ #include <pthread.h> #include "pthread_private.h" -__weak_reference(_poll, poll); +__weak_reference(__poll, poll); int _poll(struct pollfd *fds, unsigned int nfds, int timeout) @@ -97,3 +97,15 @@ _poll(struct pollfd *fds, unsigned int nfds, int timeout) return (ret); } + +int +__poll(struct pollfd *fds, unsigned int nfds, int timeout) +{ + int ret; + + _thread_enter_cancellation_point(); + ret = _poll(fds, nfds, timeout); + _thread_leave_cancellation_point(); + + return ret; +} |