4c92a6cd10f99227a7050e752866c88020a2c06b 1529442 |
|
05-Oct-2013 |
trawick |
Disable event/eventopt if apr skiplist isn't available |
633c8380a52f8f0dda6b771a4d3948e45f22187e 1293426 |
|
24-Feb-2012 |
sf |
Revert Paul's lock free circular queue changes done on MPM-event.
The changes have been moved to branches/mpm-event-optimization.
This puts trunk's MPM-event back to the state of 2.4.x, except for serf
support.
The following commits are reverted:
------------------------------------------------------------------------
r1203404 | trawick | 2011-11-17 23:48:35 +0100
event no longer requires APR_POLLSET_THREADSAFE, or any
other non-standard feature (all but OS/2 have APR_POLLSET_WAKEABLE)
config-foo: don't require thread-safe pollset in order to
build event
event.c: don't stress APR_ENOTIMPL in apr_pollset_create errors;
just give the standard "check system or user limits"
message
------------------------------------------------------------------------
r1203858 | trawick | 2011-11-18 22:39:33 +0100
follow up to r1202257 -- perform normal wakeup processing when
APR_EINTR is seen from apr_pollset_poll(), with expectation that
it was triggered by apr_pollset_wakeup()
------------------------------------------------------------------------
r1202395 | trawick | 2011-11-15 20:38:31 +0100
spellcheck r1202258
------------------------------------------------------------------------
r1202329 | pquerna | 2011-11-15 18:47:33 +0100
Calculate the power of two size of the buffer before allocating it.
Spotted by: Rüdiger Plüm
------------------------------------------------------------------------
r1202259 | pquerna | 2011-11-15 16:52:59 +0100
Use apr_pollset_wakeup to ensure that the listener thread will process most enqueue'd events quickly
------------------------------------------------------------------------
r1202258 | pquerna | 2011-11-15 16:52:00 +0100
Because the pollset is now only mutated from the event thread, we no longer need the APR_POLLSET_THREADSAFE flag for the event_pollset
------------------------------------------------------------------------
r1202257 | pquerna | 2011-11-15 16:51:03 +0100
Create a new lock free circular queue, and use it in the EventMPM to remove the timeout mutex that was wrapping both timeout queue operations and pollset operations.
------------------------------------------------------------------------
r1202256 | pquerna | 2011-11-15 16:50:09 +0100
Instead of disabling the listening sockets from the pollset when under load, just stop calling the accept call, but leave the sockets in the pollset. |
6267d7243082e8316774a5ae69bce69cf6fac748 1203404 |
|
17-Nov-2011 |
trawick |
event no longer requires APR_POLLSET_THREADSAFE, or any
other non-standard feature (all but OS/2 have APR_POLLSET_WAKEABLE)
config-foo: don't require thread-safe pollset in order to
build event
event.c: don't stress APR_ENOTIMPL in apr_pollset_create errors;
just give the standard "check system or user limits"
message |
d4eb7d475864c22aec70feeab2aeb8bfcae79a22 836165 |
|
14-Nov-2009 |
trawick |
Improve hack to "determine" if APR supports thread-safe pollsets by hiding the
presence of kqueue() on Leopard, matching APR's configuration.
Event and Simple no longer report that they are supported on Leopard, resolving
a broken default config file with --enable-mpms-shared=all on that platform.
(Event was loaded by default in httpd.conf, and it failed at startup when it
failed to obtain a thread-safe pollset.) |
69c7cb9eeb0d965849dbc65e06a4a734f17fd7ef 766082 |
|
17-Apr-2009 |
trawick |
Move logic to decide if an MPM is supported, and whether the MPM is
threaded, down to the MPM itself.
(server/mpm/FOO/config.m4, which runs before the actual MPM selection)
server/mpm/config.m4 makes some general platform checks that can be used
for MPM decisions, and contains some functions related to MPMs.
XXX The check here for whether APR_POLLSET_THREADSAFE is available
is a rough approximation and needs to be replaced by a run-time
check.
Replace the limited per-platform hard-coded MPM selection and the
current defaulting to event (whether or not it works) with a selection
based on which MPMs work on the platform, as reported by the MPMs
themselves.
(config2.m4, which runs after the MPMs record whether they are supported)
Order of preference:
WinNT (mingw32 only)
then Event
then Worker
then Prefork |