Gitiles
Code Review
Sign In
git01.mediatek.com
/
haproxy
/
60855477b6c500cb242f7164687d3e9db8360f7a
/
src
/
fd.c
8c3c096
BUG/MEDIUM: fd: always align fdtab[] to 64 bytes
by Willy Tarreau
· Thu Jan 27 16:10:48 2022 +0100
c28aab0
BUILD: fd: include log.h from fd.c
by Willy Tarreau
· Sat May 08 20:35:03 2021 +0200
9eec7e2
MINOR: config: mark tune.fd.edge-triggered as experimental
by Willy Tarreau
· Sat May 08 11:06:32 2021 +0200
b2be9a1
CLEANUP: assorted typo fixes in the code and comments
by Ilya Shipitsin
· Sat Apr 24 13:25:42 2021 +0500
a1090a5
MINOR: fd: move a few read-mostly variables to their own section
by Willy Tarreau
· Sat Apr 10 16:58:13 2021 +0200
4781b15
CLEANUP: atomic/tree-wide: replace single increments/decrements with inc/dec
by Willy Tarreau
· Tue Apr 06 13:53:36 2021 +0200
1db4273
CLEANUP: atomic: add an explicit _FETCH variant for add/sub/and/or
by Willy Tarreau
· Tue Apr 06 11:44:07 2021 +0200
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
9063a66
MINOR: fd: move .exported into fdtab[].state
by Willy Tarreau
· Tue Apr 06 18:09:06 2021 +0200
0cc6128
MINOR: fd: move .initialized into fdtab[].state
by Willy Tarreau
· Tue Apr 06 17:57:12 2021 +0200
030dae1
MINOR: fd: move .cloned into fdtab[].state
by Willy Tarreau
· Tue Apr 06 17:53:33 2021 +0200
b41a6e9
MINOR: fd: move .linger_risk into fdtab[].state
by Willy Tarreau
· Tue Apr 06 17:49:19 2021 +0200
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
2d42329
CLEANUP: fd: slightly simplify up _fd_delete_orphan()
by Willy Tarreau
· Wed Mar 24 15:34:25 2021 +0100
2c3f981
BUG/MEDIUM: fd: do not wait on FD removal in fd_delete()
by Willy Tarreau
· Wed Mar 24 10:51:32 2021 +0100
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
61cfdf4
CLEANUP: tree-wide: replace free(x);x=NULL with ha_free(&x)
by Willy Tarreau
· Sat Feb 20 10:46:51 2021 +0100
8f0cc5c
CLEANUP: Fix spelling errors in comments
by Thayne McCombs
· Thu Jan 07 21:35:52 2021 -0700
b8888ab
CLEANUP: assorted typo fixes in the code and comments
by Ilya Shipitsin
· Wed Jan 06 21:20:16 2021 +0500
5a7d6eb
MINOR: fd/threads: silence a build warning with threads disabled
by Willy Tarreau
· Thu Nov 26 22:25:10 2020 +0100
7c9f756
MINOR: fd: report an error message when failing initial allocations
by Willy Tarreau
· Tue Oct 13 15:45:07 2020 +0200
f015887
MEDIUM: fd: always wake up one thread when enabling a foreing FD
by Willy Tarreau
· Fri Sep 25 12:18:53 2020 +0200
e52b6e5
CLEANUP: Do not use a fixed type for 'sizeof' in 'calloc'
by Tim Duesterhus
· Sat Sep 12 20:26:43 2020 +0200
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
63d8b60
CLEANUP: fd: remove fd_remove() and rename fd_dodelete() to fd_delete()
by Willy Tarreau
· Wed Aug 26 11:54:06 2020 +0200
38e8a1c
MINOR: debug: add a new DEBUG_FD build option
by Willy Tarreau
· Tue Jun 23 10:04:54 2020 +0200
bc52bec
MEDIUM: fd: add experimental support for edge-triggered polling
by Willy Tarreau
· Thu Jun 18 08:58:47 2020 +0200
f1cad38
MINOR: fd: factorize the fd_takeover() exit path to make it safer
by Willy Tarreau
· Thu Jun 18 08:14:59 2020 +0200
4297363
MINOR: fd: slightly optimize the fd_takeover double-CAS loop
by Willy Tarreau
· Thu Jun 18 08:05:15 2020 +0200
c460c91
MEDIUM: fd: refine the fd_takeover() migration lock
by Willy Tarreau
· Thu Jun 18 07:28:09 2020 +0200
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
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
f86a106
MINOR: fd: Fix a typo in a coment.
by Olivier Houchard
· Wed Jun 17 20:28:27 2020 +0200
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
b255105
CLEANUP: include: tree-wide alphabetical sort of include files
by Willy Tarreau
· Tue Jun 09 09:07:15 2020 +0200
aeed4a8
REORG: include: move log.h to haproxy/log{,-t}.h
by Willy Tarreau
· Thu Jun 04 22:01:04 2020 +0200
f268ee8
REORG: include: split global.h into haproxy/global{,-t}.h
by Willy Tarreau
· Thu Jun 04 17:05:57 2020 +0200
0f6ffd6
REORG: include: move fd.h to haproxy/fd{,-t}.h
by Willy Tarreau
· Wed Jun 03 19:33:00 2020 +0200
fc8f6a8
REORG: include: move port_range.h to haproxy/port_range{,-t}.h
by Willy Tarreau
· Wed Jun 03 19:20:59 2020 +0200
af613e8
CLEANUP: thread: rename __decl_hathreads() to __decl_thread()
by Willy Tarreau
· Fri Jun 05 08:40:51 2020 +0200
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
b7e43f0
CLEANUP: src/fd.c: mask setsockopt with DISGUISE
by Ilya Shipitsin
· Thu Apr 02 15:02:08 2020 +0500
e4ba0d4
BUG/MEDIUM: build: Fix compilation by spelling decl correctly.
by Olivier Houchard
· Fri Mar 20 11:03:38 2020 +0100
8851664
MINOR: fd: Implement fd_takeover().
by Olivier Houchard
· Thu Mar 05 18:10:51 2020 +0100
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
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
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
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
337fb71
MINOR: fd/threads: make _GET_NEXT()/_GET_PREV() use the volatile attribute
by Willy Tarreau
· Fri Dec 20 07:20:00 2019 +0100
dbe3060
MINOR: fd: make updt_fd_polling() a normal function
by Willy Tarreau
· Wed Sep 04 13:25:41 2019 +0200
5bee3e2
MEDIUM: fd: remove the FD_EV_POLLED status bit
by Willy Tarreau
· Wed Sep 04 09:52:57 2019 +0200
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
76913d3
CLEANUP: fd: remove leftovers of the fdcache
by Willy Tarreau
· Fri Aug 30 14:33:11 2019 +0200
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
c22580c
BUG/MEDIUM: fd: Always reset the polled_mask bits in fd_dodelete().
by Olivier Houchard
· Mon Aug 05 18:51:52 2019 +0200
5305505
MEDIUM: pollers: Remember the state for read and write for each threads.
by Olivier Houchard
· Thu Jul 25 14:00:18 2019 +0000
305d5ab
MAJOR: fd: Get rid of the fd cache.
by Olivier Houchard
· Wed Jul 24 18:07:06 2019 +0200
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
e573323
CLEANUP: build: rename some build macros to use the USE_* ones
by Willy Tarreau
· Wed May 22 19:24:06 2019 +0200
082b628
BUG/MEDIUM: init/threads: provide per-thread alloc/free function callbacks
by Willy Tarreau
· Wed May 22 14:42:12 2019 +0200
6a38b32
BUILD: threads: fix again the __ha_cas_dw() definition
by Willy Tarreau
· Sat May 11 18:04:24 2019 +0200
7c49d2e
MINOR: fd: Add a counter of used fds.
by Olivier Houchard
· Tue Apr 16 18:37:05 2019 +0200
d360879
MEDIUM: fd: Use the new _HA_ATOMIC_* macros.
by Olivier Houchard
· Fri Mar 08 18:47:42 2019 +0100
d2b5d16
MEDIUM: various: Use __ha_barrier_atomic* when relevant.
by Olivier Houchard
· Fri Mar 08 13:47:21 2019 +0100
2292edf
MINOR: fd: Use closefrom() as my_closefrom() if supported.
by Olivier Houchard
· Mon Feb 25 14:26:54 2019 +0100
bc9d984
BUG/MAJOR: fd/threads, task/threads: ensure all spin locks are unlocked
by Richard Russo
· Wed Feb 20 12:43:45 2019 -0800
b8e602c
BUG/MINOR: fd: make sure my_closefrom() doesn't miss some FDs
by Willy Tarreau
· Fri Feb 22 09:07:42 2019 +0100
9188ac6
MINOR: fd: implement an optimised my_closefrom() function
by Willy Tarreau
· Thu Feb 21 22:12:47 2019 +0100
2d7f81b
MINOR: fd: add a new my_closefrom() function to close all FDs
by Willy Tarreau
· Thu Feb 21 22:19:17 2019 +0100
da7eeed
BUG/MINOR: startup: certain goto paths in init_pollers fail to free
by Uman Shahzad
· Thu Jan 17 08:21:39 2019 +0000
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
172f5ce
MINOR: initcall: use initcalls for most post_{check,deinit} and per_thread*
by Willy Tarreau
· Mon Nov 26 11:21:50 2018 +0100
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
333d797
MEDIUM: threads: close the thread-waker pipe during deinit
by William Lallemand
· Tue Sep 11 10:06:28 2018 +0200
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
d0e60d8
BUG/MEDIUM: fd: Don't modify the update_mask in fd_dodelete().
by Olivier Houchard
· Tue Jun 19 19:18:43 2018 +0200
cb92f5c
MINOR: pollers: move polled_mask outside of struct fdtab.
by Olivier Houchard
· Thu Apr 26 14:23:07 2018 +0200
6b96f72
BUG/MEDIUM: pollers: Use a global list for fd shared between threads.
by Olivier Houchard
· Wed Apr 25 16:58:25 2018 +0200
6a2cf87
MINOR: fd: Make the lockless fd list work with multiple lists.
by Olivier Houchard
· Wed Apr 25 15:10:30 2018 +0200
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
8210698
BUILD: fd/threads: fix breakage build breakage without threads
by Willy Tarreau
· Tue Feb 06 12:00:27 2018 +0100
11559a7
MINOR: fd: reorder fd_add_to_fd_list()
by Willy Tarreau
· Mon Feb 05 17:52:24 2018 +0100
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
abeaff2
BUG/MINOR: fd/threads: properly dereference fdcache as volatile
by Willy Tarreau
· Mon Feb 05 19:43:30 2018 +0100
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
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
4815c8c
MAJOR: fd/threads: Make the fdcache mostly lockless.
by Olivier Houchard
· Wed Jan 24 18:17:56 2018 +0100
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
745c60e
CLEANUP: fd: remove the unused "new" field
by Willy Tarreau
· Sat Jan 20 23:59:40 2018 +0100
f2b5c99
CLEANUP: fd/threads: remove the now unused fdtab_lock
by Willy Tarreau
· Mon Jan 29 15:24:37 2018 +0100
173d995
MEDIUM: polling: start to move maxfd computation to the pollers
by Willy Tarreau
· Fri Jan 26 21:48:23 2018 +0100
ce036bc
MINOR: polling: make epoll and kqueue not depend on maxfd anymore
by Willy Tarreau
· Mon Jan 29 14:58:02 2018 +0100
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
ebc78d7
BUG/MEDIUM: fd: maintain a per-thread update mask
by Willy Tarreau
· Sat Jan 20 23:53:50 2018 +0100
69553fe
MINOR: threads/fd: Use a bitfield to know if there are FDs for a thread in the FD cache
by Christopher Faulet
· Mon Jan 15 11:57:03 2018 +0100
d80cb4e
MINOR: global: add some global activity counters to help debugging
by Willy Tarreau
· Sat Jan 20 19:30:13 2018 +0100
9dcf9b6
MINOR: threads: Use __decl_hathreads to declare locks
by Christopher Faulet
· Mon Nov 13 10:34:01 2017 +0100
2a944ee
BUILD: threads: Rename SPIN/RWLOCK macros using HA_ prefix
by Christopher Faulet
· Tue Nov 07 10:42:54 2017 +0100
f65610a
CLEANUP: threads: rename process_mask to thread_mask
by Willy Tarreau
· Tue Oct 31 16:06:06 2017 +0100
cd7879a
BUG/MEDIUM: threads: Run the poll loop on the main thread too
by Christopher Faulet
· Fri Oct 27 13:53:47 2017 +0200
Next »