h2_workers.c

Checkout Tools
  • last updated 4 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
* modules/http2: reverting r1859724, as no good.

  1. … 22 more files in changeset.
*) mod_http2: internal code cleanups and simplifications. Common output code for

h2 and h2c protocols, using nested mutex locks for simplified calls. [Stefan Eissing]

  1. … 23 more files in changeset.
Remove some trailing spaces to synch trunk with 2.4
  1. … 1 more file in changeset.
On the trunk:

mod_http2: removing comments that documented that greenbytes has untransferable copyright to the sources. The rights, of course, remain unaffected, but maybe some people can sleep better.

  1. … 51 more files in changeset.
correct copyright/license headers

  1. … 23 more files in changeset.
On the trunk:

mod_http2: fixed unfair scheduling when number of active connections

exceeded the scheduling fifo capacity.

  1. … 1 more file in changeset.
On the trunk:

mod_http2: v0.10.12, removed optimization for mutex handling in bucket beams that could lead to assertion failure in edge cases.

  1. … 6 more files in changeset.
On the trunk:

mod_http2: disable and give warning when mpm_prefork is encountered.

The server will continue to work, but HTTP/2 will no longer be negotiated.

  1. … 11 more files in changeset.
On the trunk:

mod_http2: normalize zombie slot state before pushing it on the free list.

On the turnk:

mod_http2: fixed two deadlocks introduced by removing nested mplx locking earlier.

  1. … 4 more files in changeset.
On the trunk:

mod_http2: less and more granular mutex use for improved performance.

  1. … 7 more files in changeset.
On the trunk:

mod_http2: code cleanup after eliminating nested locks, giving worker slots their own mutex.

  1. … 1 more file in changeset.
On the trunk:

mod_http2: fixed problem of forgotten requests when number of connections larger than number of workers. Some code refactor, threads now queued in slot order for vanity reasons, so that the segfaults are more likely at the top and not the bottom.

  1. … 3 more files in changeset.
On the trunk:

mod_http2 after review by Christophe:

* fix h2_fifo_peek to properly block

* check peek return status while processing mplx queue

  1. … 1 more file in changeset.
Revert r1789221: real fix looks more subtle.
http2: silent compiler warning.
On the trunk:

mod_http2: h2 workers with improved scalability for better scheduling

performance. There are H2MaxWorkers threads created at start and the

number is kept constant.

  1. … 14 more files in changeset.
On the trunk:

mod_http2: ripped out H2SessionExtraFiles directive, removed super special sender pool handling in bucket beams.

  1. … 9 more files in changeset.
On the trunk:

mod_http2: fixed PR60869 by making h2 workers exit explicitly waking up

all threads to exit in a defined way.

  1. … 2 more files in changeset.
mod_http2: AP_DEBUG_ASSERT changed to ap_assert
  1. … 18 more files in changeset.
mod_http2: new bucket beams for tranporting buckets across threads without buffer copy. Code cleanup
  1. … 39 more files in changeset.
revert of r1735444 as leaking, fix in task filter removal
  1. … 11 more files in changeset.
mod_http2: pushing slave conn setup outside of lock area
  1. … 11 more files in changeset.
mod_http2: some DoS protection, fix for read after free
  1. … 11 more files in changeset.
limiting the number of threads a http/2 connection may occupy
  1. … 8 more files in changeset.
code cleanup, saving some apr_time_now() calls on scheduling, worker now only sticky to a connection when idle workers are present
  1. … 4 more files in changeset.
task pools have their h2_io pools as ancestors, some code cleanup
  1. … 16 more files in changeset.
using proxy http2 connection concurrently, if main connection also uses http/2, needs more hardening
  1. … 25 more files in changeset.
always sending GOAWAY frame on session shutdown if not already done, GOAWAY frame with correct stream id, highest that started processing
  1. … 4 more files in changeset.
reducing # of file handles used in transfers by default, reduced global workers lock usage
  1. … 2 more files in changeset.