1. b63888c REORG: fd: uninline compute_poll_timeout() by Willy Tarreau · Wed Oct 06 19:55:29 2021 +0200
  2. 5d9ddc5 BUILD: tree-wide: add several missing activity.h by Willy Tarreau · Wed Oct 06 19:54:09 2021 +0200
  3. 87063a7 BUILD: fd: remove unused variable totlen in fd_write_frag_line() by Willy Tarreau · Fri Sep 17 12:00:27 2021 +0200
  4. 7b2ac29 CLEANUP: fd: remove the now unneeded fd_mig_lock by Willy Tarreau · Tue Aug 03 09:24:41 2021 +0200
  5. f69fea6 MAJOR: fd: get rid of the DWCAS when setting the running_mask by Willy Tarreau · Tue Aug 03 09:04:32 2021 +0200
  6. b1f29bc MINOR: activity/fd: remove the dead_fd counter by Willy Tarreau · Tue Aug 03 10:59:50 2021 +0200
  7. 200bd50 MEDIUM: fd: rely more on fd_update_events() to detect changes by Willy Tarreau · Thu Jul 29 16:57:19 2021 +0200
  8. 84c7922 REORG: fd: uninline fd_update_events() by Willy Tarreau · Thu Jul 29 16:53:46 2021 +0200
  9. c28aab0 BUILD: fd: include log.h from fd.c by Willy Tarreau · Sat May 08 20:35:03 2021 +0200
  10. 9eec7e2 MINOR: config: mark tune.fd.edge-triggered as experimental by Willy Tarreau · Sat May 08 11:06:32 2021 +0200
  11. b2be9a1 CLEANUP: assorted typo fixes in the code and comments by Ilya Shipitsin · Sat Apr 24 13:25:42 2021 +0500
  12. a1090a5 MINOR: fd: move a few read-mostly variables to their own section by Willy Tarreau · Sat Apr 10 16:58:13 2021 +0200
  13. 4781b15 CLEANUP: atomic/tree-wide: replace single increments/decrements with inc/dec by Willy Tarreau · Tue Apr 06 13:53:36 2021 +0200
  14. 1db4273 CLEANUP: atomic: add an explicit _FETCH variant for add/sub/and/or by Willy Tarreau · Tue Apr 06 11:44:07 2021 +0200
  15. 1673c4a MINOR: fd: implement an exclusive syscall bit to remove the ugly "log" lock by Willy Tarreau · Wed Apr 07 17:36:57 2021 +0200
  16. 9063a66 MINOR: fd: move .exported into fdtab[].state by Willy Tarreau · Tue Apr 06 18:09:06 2021 +0200
  17. 0cc6128 MINOR: fd: move .initialized into fdtab[].state by Willy Tarreau · Tue Apr 06 17:57:12 2021 +0200
  18. 030dae1 MINOR: fd: move .cloned into fdtab[].state by Willy Tarreau · Tue Apr 06 17:53:33 2021 +0200
  19. b41a6e9 MINOR: fd: move .linger_risk into fdtab[].state by Willy Tarreau · Tue Apr 06 17:49:19 2021 +0200
  20. c23b337 BUG/MEDIUM: fd: Take the fd_mig_lock when closing if no DWCAS is available. by Olivier Houchard · Thu Mar 25 01:38:54 2021 +0100
  21. 2d42329 CLEANUP: fd: slightly simplify up _fd_delete_orphan() by Willy Tarreau · Wed Mar 24 15:34:25 2021 +0100
  22. 2c3f981 BUG/MEDIUM: fd: do not wait on FD removal in fd_delete() by Willy Tarreau · Wed Mar 24 10:51:32 2021 +0100
  23. 0182516 CLEANUP: config: make the cfg_keyword parsers take a const for the defproxy by Willy Tarreau · Tue Mar 09 09:53:46 2021 +0100
  24. 61cfdf4 CLEANUP: tree-wide: replace free(x);x=NULL with ha_free(&x) by Willy Tarreau · Sat Feb 20 10:46:51 2021 +0100
  25. 8f0cc5c CLEANUP: Fix spelling errors in comments by Thayne McCombs · Thu Jan 07 21:35:52 2021 -0700
  26. b8888ab CLEANUP: assorted typo fixes in the code and comments by Ilya Shipitsin · Wed Jan 06 21:20:16 2021 +0500
  27. 5a7d6eb MINOR: fd/threads: silence a build warning with threads disabled by Willy Tarreau · Thu Nov 26 22:25:10 2020 +0100
  28. 7c9f756 MINOR: fd: report an error message when failing initial allocations by Willy Tarreau · Tue Oct 13 15:45:07 2020 +0200
  29. f015887 MEDIUM: fd: always wake up one thread when enabling a foreing FD by Willy Tarreau · Fri Sep 25 12:18:53 2020 +0200
  30. e52b6e5 CLEANUP: Do not use a fixed type for 'sizeof' in 'calloc' by Tim Duesterhus · Sat Sep 12 20:26:43 2020 +0200
  31. bb1caff MINOR: fd: add a new "exported" flag and use it for all regular listeners by Willy Tarreau · Wed Aug 19 10:00:57 2020 +0200
  32. 63d8b60 CLEANUP: fd: remove fd_remove() and rename fd_dodelete() to fd_delete() by Willy Tarreau · Wed Aug 26 11:54:06 2020 +0200
  33. 38e8a1c MINOR: debug: add a new DEBUG_FD build option by Willy Tarreau · Tue Jun 23 10:04:54 2020 +0200
  34. bc52bec MEDIUM: fd: add experimental support for edge-triggered polling by Willy Tarreau · Thu Jun 18 08:58:47 2020 +0200
  35. f1cad38 MINOR: fd: factorize the fd_takeover() exit path to make it safer by Willy Tarreau · Thu Jun 18 08:14:59 2020 +0200
  36. 4297363 MINOR: fd: slightly optimize the fd_takeover double-CAS loop by Willy Tarreau · Thu Jun 18 08:05:15 2020 +0200
  37. c460c91 MEDIUM: fd: refine the fd_takeover() migration lock by Willy Tarreau · Thu Jun 18 07:28:09 2020 +0200
  38. ddc874c BUG/MEDIUM: fd: Call fd_stop_recv() when we just got a fd. by Olivier Houchard · Wed Jun 17 20:34:05 2020 +0200
  39. 8d7b517 BUG/MEDIUM: fd: Don't fd_stop_recv() a fd we don't own. by Olivier Houchard · Wed Jun 17 20:32:34 2020 +0200
  40. f86a106 MINOR: fd: Fix a typo in a coment. by Olivier Houchard · Wed Jun 17 20:28:27 2020 +0200
  41. df18787 BUG/MEDIUM: log: don't hold the log lock during writev() on a file descriptor by Willy Tarreau · Thu Jun 11 14:25:47 2020 +0200
  42. b255105 CLEANUP: include: tree-wide alphabetical sort of include files by Willy Tarreau · Tue Jun 09 09:07:15 2020 +0200
  43. aeed4a8 REORG: include: move log.h to haproxy/log{,-t}.h by Willy Tarreau · Thu Jun 04 22:01:04 2020 +0200
  44. f268ee8 REORG: include: split global.h into haproxy/global{,-t}.h by Willy Tarreau · Thu Jun 04 17:05:57 2020 +0200
  45. 0f6ffd6 REORG: include: move fd.h to haproxy/fd{,-t}.h by Willy Tarreau · Wed Jun 03 19:33:00 2020 +0200
  46. fc8f6a8 REORG: include: move port_range.h to haproxy/port_range{,-t}.h by Willy Tarreau · Wed Jun 03 19:20:59 2020 +0200
  47. af613e8 CLEANUP: thread: rename __decl_hathreads() to __decl_thread() by Willy Tarreau · Fri Jun 05 08:40:51 2020 +0200
  48. 4c7e4b7 REORG: include: update all files to use haproxy/api.h or api-t.h if needed by Willy Tarreau · Wed May 27 12:58:42 2020 +0200
  49. b7e43f0 CLEANUP: src/fd.c: mask setsockopt with DISGUISE by Ilya Shipitsin · Thu Apr 02 15:02:08 2020 +0500
  50. e4ba0d4 BUG/MEDIUM: build: Fix compilation by spelling decl correctly. by Olivier Houchard · Fri Mar 20 11:03:38 2020 +0100
  51. 8851664 MINOR: fd: Implement fd_takeover(). by Olivier Houchard · Thu Mar 05 18:10:51 2020 +0100
  52. a7bf573 MEDIUM: fd: Introduce a running mask, and use it instead of the spinlock. by Olivier Houchard · Thu Feb 27 17:26:13 2020 +0100
  53. 7fa5562 MINOR: fd: Use a separate lock for logs instead of abusing the fd lock. by Olivier Houchard · Thu Feb 27 17:25:43 2020 +0100
  54. 2b9f066 CLEANUP: fd: use a union in fd_rm_from_fd_list() to shut aliasing warnings by Willy Tarreau · Tue Feb 25 09:25:53 2020 +0100
  55. fc51f0f5 BUG/MEDIUM: fd/threads: fix a concurrency issue between add and rm on the same fd by Olivier Houchard · Thu Dec 19 18:33:08 2019 +0100
  56. 337fb71 MINOR: fd/threads: make _GET_NEXT()/_GET_PREV() use the volatile attribute by Willy Tarreau · Fri Dec 20 07:20:00 2019 +0100
  57. dbe3060 MINOR: fd: make updt_fd_polling() a normal function by Willy Tarreau · Wed Sep 04 13:25:41 2019 +0200
  58. 5bee3e2 MEDIUM: fd: remove the FD_EV_POLLED status bit by Willy Tarreau · Wed Sep 04 09:52:57 2019 +0200
  59. 7e9776a MINOR: fd/log/sink: make the non-blocking initialization depend on the initialized bit by Willy Tarreau · Fri Aug 30 14:41:47 2019 +0200
  60. 76913d3 CLEANUP: fd: remove leftovers of the fdcache by Willy Tarreau · Fri Aug 30 14:33:11 2019 +0200
  61. 931d8b7 MINOR: fd: add fd_write_frag_line() to send a fragmented line to an fd by Willy Tarreau · Tue Aug 27 11:08:17 2019 +0200
  62. c22580c BUG/MEDIUM: fd: Always reset the polled_mask bits in fd_dodelete(). by Olivier Houchard · Mon Aug 05 18:51:52 2019 +0200
  63. 5305505 MEDIUM: pollers: Remember the state for read and write for each threads. by Olivier Houchard · Thu Jul 25 14:00:18 2019 +0000
  64. 305d5ab MAJOR: fd: Get rid of the fd cache. by Olivier Houchard · Wed Jul 24 18:07:06 2019 +0200
  65. c3b5958 BUG/MEDIUM: threads: fix double-word CAS on non-optimized 32-bit platforms by Willy Tarreau · Mon May 27 17:37:20 2019 +0200
  66. e573323 CLEANUP: build: rename some build macros to use the USE_* ones by Willy Tarreau · Wed May 22 19:24:06 2019 +0200
  67. 082b628 BUG/MEDIUM: init/threads: provide per-thread alloc/free function callbacks by Willy Tarreau · Wed May 22 14:42:12 2019 +0200
  68. 6a38b32 BUILD: threads: fix again the __ha_cas_dw() definition by Willy Tarreau · Sat May 11 18:04:24 2019 +0200
  69. 7c49d2e MINOR: fd: Add a counter of used fds. by Olivier Houchard · Tue Apr 16 18:37:05 2019 +0200
  70. d360879 MEDIUM: fd: Use the new _HA_ATOMIC_* macros. by Olivier Houchard · Fri Mar 08 18:47:42 2019 +0100
  71. d2b5d16 MEDIUM: various: Use __ha_barrier_atomic* when relevant. by Olivier Houchard · Fri Mar 08 13:47:21 2019 +0100
  72. 2292edf MINOR: fd: Use closefrom() as my_closefrom() if supported. by Olivier Houchard · Mon Feb 25 14:26:54 2019 +0100
  73. bc9d984 BUG/MAJOR: fd/threads, task/threads: ensure all spin locks are unlocked by Richard Russo · Wed Feb 20 12:43:45 2019 -0800
  74. b8e602c BUG/MINOR: fd: make sure my_closefrom() doesn't miss some FDs by Willy Tarreau · Fri Feb 22 09:07:42 2019 +0100
  75. 9188ac6 MINOR: fd: implement an optimised my_closefrom() function by Willy Tarreau · Thu Feb 21 22:12:47 2019 +0100
  76. 2d7f81b MINOR: fd: add a new my_closefrom() function to close all FDs by Willy Tarreau · Thu Feb 21 22:19:17 2019 +0100
  77. da7eeed BUG/MINOR: startup: certain goto paths in init_pollers fail to free by Uman Shahzad · Thu Jan 17 08:21:39 2019 +0000
  78. 808e1b7 BUG/MEDIUM: threads: don't close the thread waker pipe if not init by William Lallemand · Sat Dec 15 22:34:31 2018 +0100
  79. 172f5ce MINOR: initcall: use initcalls for most post_{check,deinit} and per_thread* by Willy Tarreau · Mon Nov 26 11:21:50 2018 +0100
  80. 87d54a9 MEDIUM: fd/threads: only grab the fd's lock if the FD has more than one thread by Willy Tarreau · Mon Oct 15 09:44:46 2018 +0200
  81. 333d797 MEDIUM: threads: close the thread-waker pipe during deinit by William Lallemand · Tue Sep 11 10:06:28 2018 +0200
  82. 79321b9 MINOR: pollers: Add a way to wake a thread sleeping in the poller. by Olivier Houchard · Thu Jul 26 17:55:11 2018 +0200
  83. d0e60d8 BUG/MEDIUM: fd: Don't modify the update_mask in fd_dodelete(). by Olivier Houchard · Tue Jun 19 19:18:43 2018 +0200
  84. cb92f5c MINOR: pollers: move polled_mask outside of struct fdtab. by Olivier Houchard · Thu Apr 26 14:23:07 2018 +0200
  85. 6b96f72 BUG/MEDIUM: pollers: Use a global list for fd shared between threads. by Olivier Houchard · Wed Apr 25 16:58:25 2018 +0200
  86. 6a2cf87 MINOR: fd: Make the lockless fd list work with multiple lists. by Olivier Houchard · Wed Apr 25 15:10:30 2018 +0200
  87. 1ff9104 BUG/MINOR: fd/threads: properly lock the FD before adding it to the fd cache. by Olivier Houchard · Thu Feb 08 16:03:33 2018 +0000
  88. 8210698 BUILD: fd/threads: fix breakage build breakage without threads by Willy Tarreau · Tue Feb 06 12:00:27 2018 +0100
  89. 11559a7 MINOR: fd: reorder fd_add_to_fd_list() by Willy Tarreau · Mon Feb 05 17:52:24 2018 +0100
  90. 3a8263f MINOR: fd: remove the unneeded last CAS when adding an fd to the list by Willy Tarreau · Mon Feb 05 17:40:21 2018 +0100
  91. abeaff2 BUG/MINOR: fd/threads: properly dereference fdcache as volatile by Willy Tarreau · Mon Feb 05 19:43:30 2018 +0100
  92. 4cc67a2 MINOR: fd: move the fd_{add_to,rm_from}_fdlist functions to fd.c by Willy Tarreau · Mon Feb 05 17:14:55 2018 +0100
  93. 1256836 MEDIUM: fd/threads: Make sure we don't miss a fd cache entry. by Olivier Houchard · Wed Jan 31 18:07:29 2018 +0100
  94. 4815c8c MAJOR: fd/threads: Make the fdcache mostly lockless. by Olivier Houchard · Wed Jan 24 18:17:56 2018 +0100
  95. 82b37d7 MEDIUM: fd: use atomic ops for hap_fd_{clr,set} and remove poll_lock by Willy Tarreau · Thu Jan 25 16:59:09 2018 +0100
  96. 745c60e CLEANUP: fd: remove the unused "new" field by Willy Tarreau · Sat Jan 20 23:59:40 2018 +0100
  97. f2b5c99 CLEANUP: fd/threads: remove the now unused fdtab_lock by Willy Tarreau · Mon Jan 29 15:24:37 2018 +0100
  98. 173d995 MEDIUM: polling: start to move maxfd computation to the pollers by Willy Tarreau · Fri Jan 26 21:48:23 2018 +0100
  99. ce036bc MINOR: polling: make epoll and kqueue not depend on maxfd anymore by Willy Tarreau · Mon Jan 29 14:58:02 2018 +0100
  100. c9c8378 MINOR: fd: add a bitmask to indicate that an FD is known by the poller by Willy Tarreau · Wed Jan 17 18:44:46 2018 +0100