Skip to content
  1. Feb 14, 2018
  2. Feb 13, 2018
  3. Feb 11, 2018
  4. Feb 10, 2018
  5. Feb 09, 2018
    • Jim Jagielski's avatar
      backport prop vote · 1797b678
      Jim Jagielski authored
      
      git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1823649 13f79535-47bb-0310-9956-ffa450edef68
      1797b678
    • Yann Ylavic's avatar
      Merge r1821558, r1821561, r1821595 from trunk: · 844964d8
      Yann Ylavic authored
      mod_event: Let the listener thread do its maintenance job on resources shortage.
      
      PR 61979.
      
      
      Follow up to r1821558: CHANGES typo.
      
      
      mpm_event: Follow up to r1821558.
      
      Don't crash (in listener) if we can't create the ptrans allocator.
      
      
      Submitted by: ylavic
      Reviewed by: ylavic, jim, icing
      
      
      git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1823644 13f79535-47bb-0310-9956-ffa450edef68
      844964d8
    • Yann Ylavic's avatar
      Merge r1819855, r1821562 from trunk: · 6f67b16e
      Yann Ylavic authored
      mpm_event: wakeup the listener to re-enable listening sockets.
      
      When listening sockets are disabled (too many connections) and the number of
      workers / active connections comes back below the limit, we need to wake up
      the listener to re-enable them.
      
      Add a new connections_above_limit() helper to determine when this applies.
      
      
      Follow up to r1819855: CHANGES entry.
      
      
      Submitted by: ylavic
      Reviewed by: ylavic, jim, icing
      
      
      git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1823643 13f79535-47bb-0310-9956-ffa450edef68
      6f67b16e
    • Yann Ylavic's avatar
      Merge r1643279, r1703241, r1802535, r1819847, r1819848, r1819852, r1819853 from trunk: · 04a9b08a
      Yann Ylavic authored
      mpm_event(opt): avoid casts/comparisons from unsigned to signed (atomics).
      
      
      mpm_event/worker: make ap_queue_term() atomic (acquire/release the mutex once).
      
      
      mpm_event: ap_queue_info_try_get_idler() may atomically decrement and then
      re-increment the number idlers if it went under or to zero.  We can avoid
      this by switching to a compare-and-swap scheme.
      
      
      mpm_event: avoid unexpected compiler optimizations.
      
      Make sure the compiler doesn't play games with our synchronization variables
      by marking them volatile.
      
      
      mpm_event: make sure wakeup_listener() does its minimal job.
      
      Even if the listener thread is not created yet (i.e. about to be), we must
      still tell it to leave, and terminate the worker queue in any case.
      
      
      mpm_event: worker factor vs pollset.
      
      Make sure the worker factor is at least one (w.r.t. WORKER_FACTOR_SCALE), and
      use it to size the pollset appropriately (including K-A and lingering close
      connections), in addition to the listening sockets.
      
      
      mpm_event: remove atomics for timeout_queue's total counter.
      
      It's always updated under the timeout_mutex lock, or read for logging and
      scoreboard updates (not critical).
      
      For the read cases a volatile access is enough, while removing the atomic ops
      for the already protected write cases saves cycles and context switches.
      
      
      Submitted by: ylavic
      Reviewed by: ylavic, jim, icing
      
      
      git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1823642 13f79535-47bb-0310-9956-ffa450edef68
      04a9b08a