1. 55c5399 MINOR: epoll: always initialize all of epoll_event to please valgrind by Willy Tarreau · Wed Feb 26 14:32:53 2020 +0100
  2. 03e7853 BUILD: remove obsolete support for -mregparm / USE_REGPARM by Willy Tarreau · Tue Feb 25 07:38:05 2020 +0100
  3. 902871d CLEANUP: epoll: place the struct epoll_event in the stack by Willy Tarreau · Thu Feb 20 11:23:43 2020 +0100
  4. 5d7dcc2 OPTIM: epoll: always poll for recv if neither active nor ready by Willy Tarreau · Thu Dec 26 16:40:24 2019 +0100
  5. 11ef083 MINOR: pollers: add a new flag to indicate pollers reporting ERR & HUP by Willy Tarreau · Thu Nov 28 18:17:33 2019 +0100
  6. 6b30898 MEDIUM: fd: do not use the FD_POLL_* flags in the pollers anymore by Willy Tarreau · Fri Sep 06 19:05:50 2019 +0200
  7. 5bee3e2 MEDIUM: fd: remove the FD_EV_POLLED status bit by Willy Tarreau · Wed Sep 04 09:52:57 2019 +0200
  8. 5305505 MEDIUM: pollers: Remember the state for read and write for each threads. by Olivier Houchard · Thu Jul 25 14:00:18 2019 +0000
  9. 305d5ab MAJOR: fd: Get rid of the fd cache. by Olivier Houchard · Wed Jul 24 18:07:06 2019 +0200
  10. 2ae84e4 MEDIUM: poller: separate the wait time from the wake events by Willy Tarreau · Tue May 28 16:44:05 2019 +0200
  11. cb6c927 MEDIUM: pollers: Use the new _HA_ATOMIC_* macros. by Olivier Houchard · Fri Mar 08 18:49:54 2019 +0100
  12. beb859a MINOR: polling: add an option to support busy polling by Willy Tarreau · Thu Nov 22 18:07:59 2018 +0100
  13. 48f8bc1 MINOR: poller: move the call of tv_update_date() back to the pollers by Willy Tarreau · Thu Nov 22 18:57:37 2018 +0100
  14. 609aad9 REORG: time/activity: move activity measurements to activity.{c,h} by Willy Tarreau · Thu Nov 22 08:31:09 2018 +0100
  15. 7e9c4ae MINOR: poller: move time and date computation out of the pollers by Willy Tarreau · Wed Oct 17 14:31:19 2018 +0200
  16. f37ba94 MINOR: fd: centralize poll timeout computation in compute_poll_timeout() by Willy Tarreau · Wed Oct 17 11:25:54 2018 +0200
  17. 60b639c MEDIUM: hathreads: implement a more flexible rendez-vous point by Willy Tarreau · Thu Aug 02 10:16:17 2018 +0200
  18. cb92f5c MINOR: pollers: move polled_mask outside of struct fdtab. by Olivier Houchard · Thu Apr 26 14:23:07 2018 +0200
  19. 6b96f72 BUG/MEDIUM: pollers: Use a global list for fd shared between threads. by Olivier Houchard · Wed Apr 25 16:58:25 2018 +0200
  20. 8ef1a6b BUG/MINOR: fd: Don't clear the update_mask in fd_insert. by Olivier Houchard · Tue Apr 03 19:06:18 2018 +0200
  21. 62a627a MEDIUM: poller: use atomic ops to update the fdtab mask by Willy Tarreau · Thu Jan 25 18:06:46 2018 +0100
  22. 038e54c MINOR: epoll: get rid of the now useless fd_compute_new_polled_status() by Willy Tarreau · Wed Jan 17 21:51:21 2018 +0100
  23. 4979592 BUG/MINOR: epoll/threads: only call epoll_ctl(DEL) on polled FDs by Willy Tarreau · Wed Jan 31 09:49:29 2018 +0100
  24. 745c60e CLEANUP: fd: remove the unused "new" field by Willy Tarreau · Sat Jan 20 23:59:40 2018 +0100
  25. ce036bc MINOR: polling: make epoll and kqueue not depend on maxfd anymore by Willy Tarreau · Mon Jan 29 14:58:02 2018 +0100
  26. 3e805ed BUILD: epoll/threads: Add test on MAX_THREADS to avoid warnings when complied without threads by Christopher Faulet · Thu Jan 25 16:18:09 2018 +0100
  27. d9e7e36 BUG/MEDIUM: epoll/threads: use one epoll_fd per thread by Willy Tarreau · Thu Jan 18 19:16:02 2018 +0100
  28. ebc78d7 BUG/MEDIUM: fd: maintain a per-thread update mask by Willy Tarreau · Sat Jan 20 23:53:50 2018 +0100
  29. d80cb4e MINOR: global: add some global activity counters to help debugging by Willy Tarreau · Sat Jan 20 19:30:13 2018 +0100
  30. 2a944ee BUILD: threads: Rename SPIN/RWLOCK macros using HA_ prefix by Christopher Faulet · Tue Nov 07 10:42:54 2017 +0100
  31. f65610a CLEANUP: threads: rename process_mask to thread_mask by Willy Tarreau · Tue Oct 31 16:06:06 2017 +0100
  32. cd7879a BUG/MEDIUM: threads: Run the poll loop on the main thread too by Christopher Faulet · Fri Oct 27 13:53:47 2017 +0200
  33. 63e2ce6 MINOR: threads/polling: pollers now handle FDs depending on the process mask by Christopher Faulet · Fri Jun 02 14:36:39 2017 +0200
  34. d4604ad MAJOR: threads/fd: Make fd stuffs thread-safe by Christopher Faulet · Mon May 29 10:40:41 2017 +0200
  35. ab62f51 MINOR: polling: Use fd_update_events to update events seen for a fd by Christopher Faulet · Wed Aug 30 10:34:36 2017 +0200
  36. 9fab7be BUG/MEDIUM: epoll: ensure we always consider HUP and ERR by Willy Tarreau · Tue Sep 05 15:32:56 2017 +0200
  37. 5a76769 MINOR: fd: add a new flag HAP_POLL_F_RDHUP to struct poller by Willy Tarreau · Mon Mar 13 11:38:28 2017 +0100
  38. 10146c9 CLEANUP: poll: move the conditions for waiting out of the poll functions by Willy Tarreau · Mon Apr 13 20:44:19 2015 +0200
  39. d39ae7d CLEANUP: epoll: epoll_events should be allocated according to global.tune.maxpollevents by Godbach · Wed Dec 17 16:14:26 2014 +0800
  40. 5be2f35 MAJOR: polling: centralize calls to I/O callbacks by Willy Tarreau · Wed Nov 19 19:43:05 2014 +0100
  41. 041751c BUG/MEDIUM: polling: fix possible CPU hogging of worker processes after receiving SIGUSR1. by Conrad Hoffmann · Tue May 20 14:28:24 2014 +0200
  42. 25002d2 MINOR: polling: create function fd_compute_new_polled_status() by Willy Tarreau · Sat Jan 25 10:32:56 2014 +0100
  43. e852545 MEDIUM: polling: centralize polled events processing by Willy Tarreau · Sat Jan 25 09:58:06 2014 +0100
  44. f817e9f MAJOR: polling: rework the whole polling system by Willy Tarreau · Fri Jan 10 16:58:45 2014 +0100
  45. 899d957 REORG: polling: rename the cache allocation functions by Willy Tarreau · Sat Jan 25 19:20:35 2014 +0100
  46. 16f649c REORG: polling: rename "fd_spec" to "fd_cache" by Willy Tarreau · Sat Jan 25 19:10:48 2014 +0100
  47. 15a4dec REORG: polling: rename "spec_e" to "state" and "spec_p" to "cache" by Willy Tarreau · Mon Jan 20 11:09:39 2014 +0100
  48. 69a41fa CLEANUP: polling: rename "spec_e" to "state" by Willy Tarreau · Mon Jan 20 11:02:59 2014 +0100
  49. 3ef5af3 BUG: Revert "OPTIM/MEDIUM: epoll: fuse active events into polled ones during polling changes" by Willy Tarreau · Fri Dec 20 16:03:41 2013 +0100
  50. 2f87730 OPTIM/MEDIUM: epoll: fuse active events into polled ones during polling changes by Willy Tarreau · Fri Nov 15 22:48:31 2013 +0100
  51. cf181c9 BUG/MINOR: epoll: use a fix maxevents argument in epoll_wait() by Willy Tarreau · Fri Jan 18 15:22:41 2013 +0100
  52. 1c07b07 OPTIM: epoll: make use of EPOLLRDHUP by Willy Tarreau · Mon Jan 07 16:19:18 2013 +0100
  53. 39ebef8 BUG/MINOR: poll: the I/O handler was called twice for polled I/Os by Willy Tarreau · Fri Dec 14 00:17:03 2012 +0100
  54. fb5470d OPTIM: epoll: current fd does not count as a new one by Willy Tarreau · Fri Dec 14 00:02:33 2012 +0100
  55. 6320c3c OPTIM: epoll: use a temp variable for intermediary flag computations by Willy Tarreau · Thu Dec 13 23:52:58 2012 +0100
  56. db9cb0b CLEANUP: poll: remove a useless double-check on fdtab[fd].owner by Willy Tarreau · Thu Dec 13 23:41:12 2012 +0100
  57. 462c720 CLEANUP: polling: gcc doesn't always optimize constants away by Willy Tarreau · Thu Dec 13 22:26:37 2012 +0100
  58. 26d7cfc BUG/MAJOR: polling: do not set speculative events on ERR nor HUP by Willy Tarreau · Fri Dec 07 00:09:43 2012 +0100
  59. 70c6fd8 MAJOR: polling: remove unused callbacks from the poller struct by Willy Tarreau · Sun Nov 11 21:02:34 2012 +0100
  60. e9f49e7 MAJOR: polling: replace epoll with sepoll and remove sepoll by Willy Tarreau · Sun Nov 11 17:42:00 2012 +0100
  61. f8cfa44 BUG/MINOR: epoll: correctly disable FD polling in fd_rem() by Willy Tarreau · Thu Oct 04 21:54:41 2012 +0200
  62. babd05a MEDIUM: fd: add fd_poll_{recv,send} for use when explicit polling is required by Willy Tarreau · Thu Aug 09 12:14:03 2012 +0200
  63. 3788e4c MEDIUM: fd: remove the EV_FD_COND_* primitives by Willy Tarreau · Mon Jul 30 14:29:35 2012 +0200
  64. 076be25 CLEANUP: remove the now unused fdtab direct I/O callbacks by Willy Tarreau · Fri Jul 06 16:02:29 2012 +0200
  65. 9845e75 MEDIUM: polling: prepare to call the iocb() function when defined. by Willy Tarreau · Fri Jul 06 11:44:28 2012 +0200
  66. db3b326 REORG/MEDIUM: fd: remove FD_STCLOSE from struct fdtab by Willy Tarreau · Thu Jul 05 23:19:22 2012 +0200
  67. 491c498 BUG/MINOR: polling: some events were not set in various pollers by Willy Tarreau · Fri Jul 06 11:16:01 2012 +0200
  68. 45a1251 [MEDIUM] poll: add a measurement of idle vs work time by Willy Tarreau · Sat Sep 10 16:56:42 2011 +0200
  69. 43d8fb2 [REORG] build: move syscall redefinition to specific places by Willy Tarreau · Mon Aug 22 17:12:02 2011 +0200
  70. d79e79b [BUG] O(1) pollers should check their FD before closing it by Willy Tarreau · Sun May 10 10:18:54 2009 +0200
  71. 332740d [MEDIUM] pollers: don't wait if a signal is pending by Willy Tarreau · Sun May 10 09:57:21 2009 +0200
  72. a534fea [CLEANUP] remove 65 useless NULL checks before free by Willy Tarreau · Sun Aug 03 12:19:50 2008 +0200
  73. ec6c5df [CLEANUP] remove many #include <types/xxx> from C files by Willy Tarreau · Tue Jul 15 00:22:45 2008 +0200
  74. 0c303ee [MAJOR] convert all expiration timers from timeval to ticks by Willy Tarreau · Mon Jul 07 00:09:58 2008 +0200
  75. b0b37bc [MEDIUM] further improve monotonic clock by check forward jumps by Willy Tarreau · Mon Jun 23 14:00:57 2008 +0200
  76. b7f694f [MEDIUM] implement a monotonic internal clock by Willy Tarreau · Sun Jun 22 17:18:02 2008 +0200
  77. 3a62811 [BUG] event pollers must not wait if a task exists in the run queue by Willy Tarreau · Fri Jun 13 21:06:56 2008 +0200
  78. 70bcfb7 [OPTIM] GCC4's builtin_expect() is suboptimal by Willy Tarreau · Sun Jan 27 02:21:53 2008 +0100
  79. 1db3771 [MEDIUM] limit the number of events returned by *poll* by Willy Tarreau · Sun Jun 03 17:16:49 2007 +0200
  80. fb8983f [BUG] the epoll FD must not be shared between processes by Willy Tarreau · Sun Jun 03 16:40:44 2007 +0200
  81. bdefc51 [BUG] fix null timeouts in *poll-based pollers by Willy Tarreau · Mon May 14 02:02:04 2007 +0200
  82. d825eef [MAJOR] replaced all timeouts with struct timeval by Willy Tarreau · Sat May 12 22:35:00 2007 +0200
  83. ef1d1f8 [MAJOR] auto-registering of pollers at load time by Willy Tarreau · Mon Apr 16 00:25:25 2007 +0200
  84. b40d420 [BUILD] declare epoll_* as static when using our own functions by Willy Tarreau · Sun Apr 15 23:57:41 2007 +0200
  85. 58094f2 [MAJOR] ev_epoll: do not rely on fd_sets anymore by Willy Tarreau · Tue Apr 10 01:33:20 2007 +0200
  86. 2ff7622 [MAJOR] delay registering of listener sockets at startup by Willy Tarreau · Mon Apr 09 19:29:56 2007 +0200
  87. 63455a9 [MINOR] use 'is_set' instead of 'isset' in struct poller by Willy Tarreau · Mon Apr 09 15:34:49 2007 +0200
  88. 69801b8 [MINOR] removed proto/polling.h which was not used anymore by Willy Tarreau · Mon Apr 09 15:28:51 2007 +0200
  89. e54e917 [MINOR] ev_* : moved the poll function closer to fd_* by Willy Tarreau · Mon Apr 09 09:23:31 2007 +0200
  90. 97129b5 [MINOR] changed fd_set*/fd_clr* functions to return ints by Willy Tarreau · Mon Apr 09 00:54:46 2007 +0200
  91. 28d8686 [MEDIUM] pollers: store the events in arrays by Willy Tarreau · Sun Apr 08 17:42:27 2007 +0200
  92. 4f60f16 [MAJOR] modularize the polling mechanisms by Willy Tarreau · Sun Apr 08 16:39:58 2007 +0200