summaryrefslogtreecommitdiff
path: root/poll
Commit message (Collapse)AuthorAgeFilesLines
* Windows platform: Use WSAPoll directly.ivan2019-05-272-15/+2
| | | | git-svn-id: http://svn.apache.org/repos/asf/apr/apr/trunk@1860159 13f79535-47bb-0310-9956-ffa450edef68
* poll, epoll: pollset's pfd is not modified on poll(), mark it const.ylavic2018-01-031-1/+1
| | | | git-svn-id: http://svn.apache.org/repos/asf/apr/apr/trunk@1819935 13f79535-47bb-0310-9956-ffa450edef68
* poll, kqueue: save a pollfd (mem)copy per returned event.ylavic2018-01-031-5/+5
| | | | git-svn-id: http://svn.apache.org/repos/asf/apr/apr/trunk@1819934 13f79535-47bb-0310-9956-ffa450edef68
* poll, port: follow up to r1819860.ylavic2018-01-021-31/+29
| | | | | | | | This test is redundant now, axe it (no functional change). git-svn-id: http://svn.apache.org/repos/asf/apr/apr/trunk@1819861 13f79535-47bb-0310-9956-ffa450edef68
* poll, port: no need to release and re-acquire the lock in between walking theylavic2018-01-021-8/+5
| | | | | | | | | | pollset and handling the dead ring, all is simple/fast/nonblocking ops. Also, set types of "i" and "j" respectively to the ones of nget and *num. git-svn-id: http://svn.apache.org/repos/asf/apr/apr/trunk@1819860 13f79535-47bb-0310-9956-ffa450edef68
* poll, port: re-add the wakeup pipe to the pollset after it triggered.ylavic2018-01-021-18/+15
| | | | | | | | | | Just like user fds (file, socket), otherwise it's one shot only (PR-61786). Corresponding test committed in r1819857. git-svn-id: http://svn.apache.org/repos/asf/apr/apr/trunk@1819858 13f79535-47bb-0310-9956-ffa450edef68
* * include/arch/unix/apr_arch_poll_private.h,jorton2017-08-188-37/+37
| | | | | | | | poll/unix/poll/*.c: Constify all apr_pollcb_provider_t and apr_pollset_provider_t structures. git-svn-id: http://svn.apache.org/repos/asf/apr/apr/trunk@1805380 13f79535-47bb-0310-9956-ffa450edef68
* clear the aiocb structure used for asyncio cancel covener2016-09-021-1/+2
| | | | | | | | | | | | | | The underlying syscall sanity checks some fields we don't later specify, possibly even some fields that are n/a for a cancel operation, which may result in a cancel call failing. outstanding aysnc I/O requests are cancelled when the fd is closed, but with very long-lived sockets, failing cancels could result in elevated CPU during BP4XAIO of type select or cancel. git-svn-id: http://svn.apache.org/repos/asf/apr/apr/trunk@1759009 13f79535-47bb-0310-9956-ffa450edef68
* apr_pollset_poll(): don't return a positive (nay negative in case of error)ylavic2016-08-105-8/+9
| | | | | | | | | number of descriptors/events, before the returned descriptors are actually initialized. git-svn-id: http://svn.apache.org/repos/asf/apr/apr/trunk@1755758 13f79535-47bb-0310-9956-ffa450edef68
* apr_pollset_poll(): OS/2: follow up to r1755740.ylavic2016-08-101-3/+0
| | | | | | | | The UNIX socket is SOCK_DGRAM, so draining the pipe is another read().. git-svn-id: http://svn.apache.org/repos/asf/apr/apr/trunk@1755746 13f79535-47bb-0310-9956-ffa450edef68
* apr_pollset_poll(): OS/2: follow up to r923311.ylavic2016-08-101-4/+14
| | | | | | | | | | Don't return APR_EINTR (woken up) unless we actually read something on the wakeup pipe (which we must drain), and also return APR_SUCCESS if at least some other event is available simultaneously. git-svn-id: http://svn.apache.org/repos/asf/apr/apr/trunk@1755740 13f79535-47bb-0310-9956-ffa450edef68
* Fix a case where the cleanup for a pollset w/o the thread-safe flagcovener2016-06-271-3/+5
| | | | | | | | | | would try to zap a random/garbage message queue identifier. In httpd, this could happen with e.g. mod_cgi's short-lived, non-threadsafe pollset. git-svn-id: http://svn.apache.org/repos/asf/apr/apr/trunk@1750374 13f79535-47bb-0310-9956-ffa450edef68
* poll/unix/z_asio.c:271]: (style) Suspicious condition (assignment +covener2016-05-191-2/+2
| | | | | | | | | | comparison); Clarify expression with parentheses. PR59582 git-svn-id: http://svn.apache.org/repos/asf/apr/apr/trunk@1744600 13f79535-47bb-0310-9956-ffa450edef68
* Revert r1671389; apr_pollset_poll() should return APR_SUCCESStrawick2015-04-061-1/+3
| | | | | | | | and the real event if a real event occurs AND apr_pollset_wakeup() is called before apr_pollset_poll() is called and/or awakened. git-svn-id: http://svn.apache.org/repos/asf/apr/apr/trunk@1671513 13f79535-47bb-0310-9956-ffa450edef68
* poll() implementation of apr_pollset_poll(): Return APR_EINTR as appropriate.trawick2015-04-051-3/+2
| | | | | | | (APR_SUCCESS was returned instead in that scenario.) git-svn-id: http://svn.apache.org/repos/asf/apr/apr/trunk@1671389 13f79535-47bb-0310-9956-ffa450edef68
* Follow up to r1089433: handle impl_pollcb_poll().ylavic2015-03-201-1/+12
| | | | git-svn-id: http://svn.apache.org/repos/asf/apr/apr/trunk@1667915 13f79535-47bb-0310-9956-ffa450edef68
* Follow up to r1666341: fix timeout given to poll() from usecs to msecs.ylavic2015-03-201-2/+3
| | | | git-svn-id: http://svn.apache.org/repos/asf/apr/apr/trunk@1667914 13f79535-47bb-0310-9956-ffa450edef68
* apr_poll(cb): fix error paths returned values and leaks.ylavic2015-03-136-35/+94
| | | | git-svn-id: http://svn.apache.org/repos/asf/apr/apr/trunk@1666341 13f79535-47bb-0310-9956-ffa450edef68
* apr_pollset state fixes for z/OScovener2014-12-191-0/+2
| | | | | | | | | Submitted By: Pat Odonnell <patod us ibm com> Committed By: covener git-svn-id: http://svn.apache.org/repos/asf/apr/apr/trunk@1646891 13f79535-47bb-0310-9956-ffa450edef68
* fix memory leakgregames2013-02-021-1/+10
| | | | git-svn-id: http://svn.apache.org/repos/asf/apr/apr/trunk@1441742 13f79535-47bb-0310-9956-ffa450edef68
* Minor fixes to quiet valgrind warningssf2013-01-261-1/+1
| | | | git-svn-id: http://svn.apache.org/repos/asf/apr/apr/trunk@1438959 13f79535-47bb-0310-9956-ffa450edef68
* no functional change, just flesh out the commentgregames2013-01-231-1/+1
| | | | git-svn-id: http://svn.apache.org/repos/asf/apr/apr/trunk@1437607 13f79535-47bb-0310-9956-ffa450edef68
* initialize flags fields to avoid JRAsyncAuthErrgregames2013-01-221-1/+4
| | | | git-svn-id: http://svn.apache.org/repos/asf/apr/apr/trunk@1437109 13f79535-47bb-0310-9956-ffa450edef68
* * don't just initialize cancel_a, use it for the asyncio AIO_CANCEL callgregames2013-01-211-1/+2
| | | | | | | | | * reset the state to ASIO_INIT after finding something that wasn't apr_pollset_remove'd on the prior ready ring thanks to Pat O'Donnell / IBM for debugging assistance git-svn-id: http://svn.apache.org/repos/asf/apr/apr/trunk@1436667 13f79535-47bb-0310-9956-ffa450edef68
* apr_pollset_remove: use a separate aiocb pointing to the original for ↵gregames2013-01-181-1/+3
| | | | | | | | | cancelling async i/o. this fixes a leak in USS for every keepalive timeout combined with CPU growth on the httpd listener thread git-svn-id: http://svn.apache.org/repos/asf/apr/apr/trunk@1434976 13f79535-47bb-0310-9956-ffa450edef68
* * create/set new state ASIO_COMPLETE to track when async i/o is completegregames2013-01-171-13/+28
| | | | | | | * in apr_pollset_remove, don't cancel async i/o if it has already completed git-svn-id: http://svn.apache.org/repos/asf/apr/apr/trunk@1434971 13f79535-47bb-0310-9956-ffa450edef68
* change asyncio to take a struct aiocb input arggregames2013-01-171-7/+7
| | | | git-svn-id: http://svn.apache.org/repos/asf/apr/apr/trunk@1434941 13f79535-47bb-0310-9956-ffa450edef68
* rename state to ASIO_REMOVED to match the name of the apr_pollset_remove API ↵gregames2013-01-171-4/+4
| | | | | | that set it git-svn-id: http://svn.apache.org/repos/asf/apr/apr/trunk@1434929 13f79535-47bb-0310-9956-ffa450edef68
* no functional change, whitespace only. remove trailing blanksgregames2013-01-171-65/+65
| | | | git-svn-id: http://svn.apache.org/repos/asf/apr/apr/trunk@1434858 13f79535-47bb-0310-9956-ffa450edef68
* give John Brooks credit for his design, but don't feed hisgregames2013-01-081-1/+2
| | | | | | | email to the spammers git-svn-id: http://svn.apache.org/repos/asf/apr/apr/trunk@1430410 13f79535-47bb-0310-9956-ffa450edef68
* fix this gcc warning:trawick2012-08-121-0/+1
| | | | | | | | poll/unix/pollcb.c: In function 'pollcb_provider': poll/unix/pollcb.c:47:5: warning: enumeration value 'APR_POLLSET_AIO_MSGQ' not handled in switch git-svn-id: http://svn.apache.org/repos/asf/apr/apr/trunk@1372197 13f79535-47bb-0310-9956-ffa450edef68
* z/OS "threadsafe" apr_pollset_poll depends on async i/o feeding angregames2012-04-132-8/+8
| | | | | | | | IPC message queue. Create a configure test for that combo and test it elsewhere. git-svn-id: http://svn.apache.org/repos/asf/apr/apr/trunk@1325944 13f79535-47bb-0310-9956-ffa450edef68
* qualify another HAVE_AIO_H referencegregames2012-04-031-1/+1
| | | | git-svn-id: http://svn.apache.org/repos/asf/apr/apr/trunk@1308950 13f79535-47bb-0310-9956-ffa450edef68
* one more HAVE_AIO_H that is intented for z/OS onlygregames2012-04-031-1/+1
| | | | git-svn-id: http://svn.apache.org/repos/asf/apr/apr/trunk@1308938 13f79535-47bb-0310-9956-ffa450edef68
* apr buildbot is dying trying to compile z/OS unique source. apparently it gregames2012-04-031-2/+2
| | | | | | | found an aio.h header file. add a test for the intended platform too. git-svn-id: http://svn.apache.org/repos/asf/apr/apr/trunk@1308923 13f79535-47bb-0310-9956-ffa450edef68
* support for thread-hopping apr_pollset_* using z/OS async i/o. gregames2012-04-032-0/+749
| | | | | | | no support for apr_pollcb yet. git-svn-id: http://svn.apache.org/repos/asf/apr/apr/trunk@1308910 13f79535-47bb-0310-9956-ffa450edef68
* fix variable initialization bug in r1089433trawick2011-04-061-1/+1
| | | | git-svn-id: http://svn.apache.org/repos/asf/apr/apr/trunk@1089528 13f79535-47bb-0310-9956-ffa450edef68
* poll, pollset, pollcb on Windows: Handle calls with no file/sockettrawick2011-04-062-0/+32
| | | | | | | | | | | descriptors. PR: 49882 Patch for one situation submitted by: Stefan Ruppert <sr myarm.com> Extended by: trawick git-svn-id: http://svn.apache.org/repos/asf/apr/apr/trunk@1089433 13f79535-47bb-0310-9956-ffa450edef68
* don't override parameter 'flags' within a blocktrawick2011-03-291-8/+8
| | | | | | | (icc complains, I sympathize) git-svn-id: http://svn.apache.org/repos/asf/apr/apr/trunk@1086692 13f79535-47bb-0310-9956-ffa450edef68
* disable entire impl_pollcb_create() function if APR_HAS_THREADStrawick2010-08-201-2/+2
| | | | | | | instead of just inserting a return at the top git-svn-id: http://svn.apache.org/repos/asf/apr/apr/trunk@987639 13f79535-47bb-0310-9956-ffa450edef68
* apr_pollset_create_ex(): Trap errors from pollset providers.trawick2010-04-121-0/+3
| | | | | | | | | PR: 49094 Submitted by: Sami Tolvanen <sami.tolvanen mywot.com> Reviewed by: trawick git-svn-id: http://svn.apache.org/repos/asf/apr/apr/trunk@933271 13f79535-47bb-0310-9956-ffa450edef68
* fix misuse of autodata in initialization of the wakeuptrawick2010-04-091-4/+2
| | | | | | | | | | pipe when the pollset was created with APR_POLLSET_NOCOPY Submitted by: Neil Conway <nrc cs.berkeley.edu> Reviewed by: trawick git-svn-id: http://svn.apache.org/repos/asf/apr/apr/trunk@932585 13f79535-47bb-0310-9956-ffa450edef68
* OS/2: Implement pollcb API. As we don't have any advanced features like kqueuebjh2010-03-151-0/+96
| | | | | | | or similar, this is just a wrapper for a pollset. git-svn-id: http://svn.apache.org/repos/asf/apr/apr/trunk@923329 13f79535-47bb-0310-9956-ffa450edef68
* OS/2: Protect against NULL dereference if apr_pollset_wakeup() is called for abjh2010-03-151-2/+6
| | | | | | | non-wakeable pollset. git-svn-id: http://svn.apache.org/repos/asf/apr/apr/trunk@923320 13f79535-47bb-0310-9956-ffa450edef68
* OS/2: Implement apr_pollset_wakeup() using a unix domain socket.bjh2010-03-151-6/+86
| | | | | | | Also adds stubs for apr_poll_method_defname() and apr_pollset_method_name(). git-svn-id: http://svn.apache.org/repos/asf/apr/apr/trunk@923311 13f79535-47bb-0310-9956-ffa450edef68
* add namespace protection fortrawick2010-01-228-24/+26
| | | | | | | | | | | | * create_wakeup_pipe() * close_wakeup_pipe() * drain_wakeup_pipe() use generic apr_poll_ since these are used from both apr_pollset_ and apr_pollcb_ git-svn-id: http://svn.apache.org/repos/asf/apr/apr/trunk@902090 13f79535-47bb-0310-9956-ffa450edef68
* fix compile failure in pollcb wakeup logic on Solaris >= 10trawick2010-01-221-3/+3
| | | | git-svn-id: http://svn.apache.org/repos/asf/apr/apr/trunk@902077 13f79535-47bb-0310-9956-ffa450edef68
* fix missing semicolonwrowe2010-01-201-1/+1
| | | | git-svn-id: http://svn.apache.org/repos/asf/apr/apr/trunk@901088 13f79535-47bb-0310-9956-ffa450edef68
* * Add apr_pollcb_wakeup(), with similar behavior tominfrin2010-01-168-167/+273
| | | | | | | | | | | | | | | | | apr_pollset_wakeup(). Along the way, refactor the code for creating/managing the wakeup pipe to a separate file, wakeup.c * Add apr_pollcb_method_name(), with similar behavior to apr_pollset_method_name() * Add minimal unit tests for apr_pollset_wakeup() and apr_pollcb_wakeup() apr_pollcb_wakeup() is supported with all the poll methods supported by pollcb (kqueue, epoll, poll, and event ports). Submitted by: Neil Conway <nrc@cs.berkeley.edu> git-svn-id: http://svn.apache.org/repos/asf/apr/apr/trunk@899905 13f79535-47bb-0310-9956-ffa450edef68
* * Add missing declarations.rpluem2009-12-211-0/+3
| | | | git-svn-id: http://svn.apache.org/repos/asf/apr/apr/trunk@892718 13f79535-47bb-0310-9956-ffa450edef68