Gitiles
Code Review
Sign In
git01.mediatek.com
/
haproxy
/
d07fc4bf315e3d596f315c8a6eefb96491eda669
/
src
/
fd.c
a29cdde
BUG/MEDIUM: fd/threads: fix a concurrency issue between add and rm on the same fd
by Olivier Houchard
· 4 years, 9 months ago
1c90f32
MINOR: fd/threads: make _GET_NEXT()/_GET_PREV() use the volatile attribute
by Willy Tarreau
· 4 years, 9 months ago
e1aed24
MINOR: fd: make sure to mark the thread as not stuck in fd_update_events()
by Willy Tarreau
· 5 years ago
15a2e68
BUG/MEDIUM: fd: Always reset the polled_mask bits in fd_dodelete().
by Olivier Houchard
· 5 years ago
c3b5958
BUG/MEDIUM: threads: fix double-word CAS on non-optimized 32-bit platforms
by Willy Tarreau
· 5 years ago
e573323
CLEANUP: build: rename some build macros to use the USE_* ones
by Willy Tarreau
· 5 years ago
082b628
BUG/MEDIUM: init/threads: provide per-thread alloc/free function callbacks
by Willy Tarreau
· 5 years ago
6a38b32
BUILD: threads: fix again the __ha_cas_dw() definition
by Willy Tarreau
· 5 years ago
7c49d2e
MINOR: fd: Add a counter of used fds.
by Olivier Houchard
· 5 years ago
d360879
MEDIUM: fd: Use the new _HA_ATOMIC_* macros.
by Olivier Houchard
· 6 years ago
d2b5d16
MEDIUM: various: Use __ha_barrier_atomic* when relevant.
by Olivier Houchard
· 6 years ago
2292edf
MINOR: fd: Use closefrom() as my_closefrom() if supported.
by Olivier Houchard
· 6 years ago
bc9d984
BUG/MAJOR: fd/threads, task/threads: ensure all spin locks are unlocked
by Richard Russo
· 6 years ago
b8e602c
BUG/MINOR: fd: make sure my_closefrom() doesn't miss some FDs
by Willy Tarreau
· 6 years ago
9188ac6
MINOR: fd: implement an optimised my_closefrom() function
by Willy Tarreau
· 6 years ago
2d7f81b
MINOR: fd: add a new my_closefrom() function to close all FDs
by Willy Tarreau
· 6 years ago
da7eeed
BUG/MINOR: startup: certain goto paths in init_pollers fail to free
by Uman Shahzad
· 6 years ago
808e1b7
BUG/MEDIUM: threads: don't close the thread waker pipe if not init
by William Lallemand
· 6 years ago
172f5ce
MINOR: initcall: use initcalls for most post_{check,deinit} and per_thread*
by Willy Tarreau
· 6 years ago
87d54a9
MEDIUM: fd/threads: only grab the fd's lock if the FD has more than one thread
by Willy Tarreau
· 6 years ago
333d797
MEDIUM: threads: close the thread-waker pipe during deinit
by William Lallemand
· 6 years ago
79321b9
MINOR: pollers: Add a way to wake a thread sleeping in the poller.
by Olivier Houchard
· 6 years ago
d0e60d8
BUG/MEDIUM: fd: Don't modify the update_mask in fd_dodelete().
by Olivier Houchard
· 6 years ago
cb92f5c
MINOR: pollers: move polled_mask outside of struct fdtab.
by Olivier Houchard
· 6 years ago
6b96f72
BUG/MEDIUM: pollers: Use a global list for fd shared between threads.
by Olivier Houchard
· 6 years ago
6a2cf87
MINOR: fd: Make the lockless fd list work with multiple lists.
by Olivier Houchard
· 6 years ago
1ff9104
BUG/MINOR: fd/threads: properly lock the FD before adding it to the fd cache.
by Olivier Houchard
· 7 years ago
8210698
BUILD: fd/threads: fix breakage build breakage without threads
by Willy Tarreau
· 7 years ago
11559a7
MINOR: fd: reorder fd_add_to_fd_list()
by Willy Tarreau
· 7 years ago
3a8263f
MINOR: fd: remove the unneeded last CAS when adding an fd to the list
by Willy Tarreau
· 7 years ago
abeaff2
BUG/MINOR: fd/threads: properly dereference fdcache as volatile
by Willy Tarreau
· 7 years ago
4cc67a2
MINOR: fd: move the fd_{add_to,rm_from}_fdlist functions to fd.c
by Willy Tarreau
· 7 years ago
1256836
MEDIUM: fd/threads: Make sure we don't miss a fd cache entry.
by Olivier Houchard
· 7 years ago
4815c8c
MAJOR: fd/threads: Make the fdcache mostly lockless.
by Olivier Houchard
· 7 years ago
82b37d7
MEDIUM: fd: use atomic ops for hap_fd_{clr,set} and remove poll_lock
by Willy Tarreau
· 7 years ago
745c60e
CLEANUP: fd: remove the unused "new" field
by Willy Tarreau
· 7 years ago
f2b5c99
CLEANUP: fd/threads: remove the now unused fdtab_lock
by Willy Tarreau
· 7 years ago
173d995
MEDIUM: polling: start to move maxfd computation to the pollers
by Willy Tarreau
· 7 years ago
ce036bc
MINOR: polling: make epoll and kqueue not depend on maxfd anymore
by Willy Tarreau
· 7 years ago
c9c8378
MINOR: fd: add a bitmask to indicate that an FD is known by the poller
by Willy Tarreau
· 7 years ago
ebc78d7
BUG/MEDIUM: fd: maintain a per-thread update mask
by Willy Tarreau
· 7 years ago
69553fe
MINOR: threads/fd: Use a bitfield to know if there are FDs for a thread in the FD cache
by Christopher Faulet
· 7 years ago
d80cb4e
MINOR: global: add some global activity counters to help debugging
by Willy Tarreau
· 7 years ago
9dcf9b6
MINOR: threads: Use __decl_hathreads to declare locks
by Christopher Faulet
· 7 years ago
2a944ee
BUILD: threads: Rename SPIN/RWLOCK macros using HA_ prefix
by Christopher Faulet
· 7 years ago
f65610a
CLEANUP: threads: rename process_mask to thread_mask
by Willy Tarreau
· 7 years ago
cd7879a
BUG/MEDIUM: threads: Run the poll loop on the main thread too
by Christopher Faulet
· 7 years ago
8aae8b1
MINOR: threads/fd: Process cached events of FDs depending on the process mask
by Christopher Faulet
· 7 years ago
a7c5d43
MINOR: threads/fd: Add a mask of threads allowed to process on each fd in fdtab array
by Christopher Faulet
· 7 years ago
d4604ad
MAJOR: threads/fd: Make fd stuffs thread-safe
by Christopher Faulet
· 7 years ago
63fe652
MINOR: fd: Move (de)allocation of fdtab and fdinfo in (de)init_pollers
by Christopher Faulet
· 7 years ago
d531f88
MINOR: fd: Don't forget to reset fdtab[fd].update when a fd is added/removed
by Christopher Faulet
· 7 years ago
1fc0516
MINOR: proxy: Don't close FDs if not our proxy.
by Olivier Houchard
· 7 years ago
3c2f2f2
CLEANUP: remove unneeded casts
by Vincent Bernat
· 8 years ago
5be2f35
MAJOR: polling: centralize calls to I/O callbacks
by Willy Tarreau
· 10 years ago
041751c
BUG/MEDIUM: polling: fix possible CPU hogging of worker processes after receiving SIGUSR1.
by Conrad Hoffmann
· 10 years ago
e852545
MEDIUM: polling: centralize polled events processing
by Willy Tarreau
· 11 years ago
f817e9f
MAJOR: polling: rework the whole polling system
by Willy Tarreau
· 11 years ago
033cd9d
REORG: polling: rename "fd_process_spec_events()" to "fd_process_cached_events()"
by Willy Tarreau
· 11 years ago
899d957
REORG: polling: rename the cache allocation functions
by Willy Tarreau
· 11 years ago
16f649c
REORG: polling: rename "fd_spec" to "fd_cache"
by Willy Tarreau
· 11 years ago
69a41fa
CLEANUP: polling: rename "spec_e" to "state"
by Willy Tarreau
· 11 years ago
fa7fc95
BUG/MEDIUM: polling: ensure we update FD status when there's no more activity
by Willy Tarreau
· 11 years ago
ad38ace
MEDIUM: connection: centralize handling of nolinger in fd management
by Willy Tarreau
· 11 years ago
70d0ad5
BUG: polling: don't skip polled events in the spec list
by Willy Tarreau
· 12 years ago
09f2456
REORG: fd: centralize the processing of speculative events
by Willy Tarreau
· 12 years ago
6ea20b1
REORG: fd: move the fd state management from ev_sepoll
by Willy Tarreau
· 12 years ago
7be79a4
REORG: fd: move the speculative I/O management from ev_sepoll
by Willy Tarreau
· 12 years ago
1720abd
MEDIUM: fd: don't unset fdtab[].updated upon delete
by Willy Tarreau
· 12 years ago
037d2c1
MAJOR: sepoll: make the poller totally event-driven
by Willy Tarreau
· 12 years ago
49b046d
MAJOR: fd: replace all EV_FD_* macros with new fd_*_* inline calls
by Willy Tarreau
· 12 years ago
db3b326
REORG/MEDIUM: fd: remove FD_STCLOSE from struct fdtab
by Willy Tarreau
· 12 years ago
e79c3b2
[BUG] debug: report the correct poller list in verbose mode
by Willy Tarreau
· 14 years ago
8d5d77e
[OPTIM] move some rarely used fields out of fdtab
by Willy Tarreau
· 15 years ago
c6f4ce8
[MEDIUM] add support for binding to source port ranges during connect
by Willy Tarreau
· 15 years ago
43b7899
[MEDIUM] move global tuning options to the global structure
by Willy Tarreau
· 16 years ago
3eba98a
[MEDIUM] splice: make use of pipe pools
by Willy Tarreau
· 16 years ago
3ec79b9
[MINOR] global.maxpipes: add the ability to reserve file descriptors for pipes
by Willy Tarreau
· 16 years ago
ec6c5df
[CLEANUP] remove many #include <types/xxx> from C files
by Willy Tarreau
· 16 years ago
a643baf
[MEDIUM] Fix memory freeing at exit
by Krzysztof Piotr Oledzki
· 16 years ago
ef1d1f8
[MAJOR] auto-registering of pollers at load time
by Willy Tarreau
· 17 years ago
2ff7622
[MAJOR] delay registering of listener sockets at startup
by Willy Tarreau
· 17 years ago
e1a7a2f
[MAJOR] kqueue was not initialized during startup
by Willy Tarreau
· 17 years ago
4f60f16
[MAJOR] modularize the polling mechanisms
by Willy Tarreau
· 17 years ago
b3107b9
[MINOR] pollers should not use MY_FD_*
by Willy Tarreau
· 17 years ago
1001b94
[CLEANUP] fd.c : regparm was hardcoded too.
by Willy Tarreau
· 18 years ago
2a42950
[MINOR] turn every FD_* into functions
by Willy Tarreau
· 18 years ago
f8306d5
[MEDIUM] got rid of event_{cli,srv}_write() in favor of stream_sock_write()
by Willy Tarreau
· 18 years ago
d797128
[MEDIUM] got rid of event_{cli,srv}_read() in favor of stream_sock_read()
by Willy Tarreau
· 18 years ago
5446940
[MEDIUM] started the changes towards I/O completion callbacks
by Willy Tarreau
· 18 years ago
2dd0d47
[CLEANUP] renamed include/haproxy to include/common
by Willy Tarreau
· 18 years ago
baaee00
[BIGMOVE] exploded the monolithic haproxy.c file into multiple files.
by Willy Tarreau
· 18 years ago