]> granicus.if.org Git - libevent/commit
evport: Remove artificial low limit on max events per getn call
authorNick Mathewson <nickm@torproject.org>
Fri, 27 May 2011 18:41:24 +0000 (14:41 -0400)
committerNick Mathewson <nickm@torproject.org>
Fri, 27 May 2011 19:10:46 +0000 (15:10 -0400)
commitc04d927637141a38cfcc648fe51b403ae6202273
treec31bf1d2cf0a8af0e5df70e890faa42bf51719d8
parent849a5cffa842a1fd7727f1fc35a793366f540d88
evport: Remove artificial low limit on max events per getn call

Previously, evport could only handle up to 8 events per time through
the loop.  This would impose an artificially high number of syscalls
on us to retrieve a large number of events.

This code allows the EVLOOP_* flags to work more similarly to how
they do on other platforms (up to 4096 events per syscall).  Dispite
dire warning (from 2006), doing this won't impose a big incremental
RAM penalty: if you have 4096 events firing at once, you necessarily
have a proportional number of events pending, and their associated
data structures are already costing a good bit of RAM.

This patch makes the main/many_events_slow_add test pass again.
evport.c