Gitiles
Code Review
Sign In
git01.mediatek.com
/
haproxy
/
d45d10542875e3271e6eebe941a86021af43c0c9
/
src
/
fd.c
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
8aae8b1
MINOR: threads/fd: Process cached events of FDs depending on the process mask
by Christopher Faulet
· Wed Aug 30 10:56:25 2017 +0200
a7c5d43
MINOR: threads/fd: Add a mask of threads allowed to process on each fd in fdtab array
by Christopher Faulet
· Tue May 30 11:05:09 2017 +0200
d4604ad
MAJOR: threads/fd: Make fd stuffs thread-safe
by Christopher Faulet
· Mon May 29 10:40:41 2017 +0200
63fe652
MINOR: fd: Move (de)allocation of fdtab and fdinfo in (de)init_pollers
by Christopher Faulet
· Thu Aug 31 17:52:09 2017 +0200
d531f88
MINOR: fd: Don't forget to reset fdtab[fd].update when a fd is added/removed
by Christopher Faulet
· Thu Jun 01 16:55:03 2017 +0200
1fc0516
MINOR: proxy: Don't close FDs if not our proxy.
by Olivier Houchard
· Thu Apr 06 01:05:05 2017 +0200
3c2f2f2
CLEANUP: remove unneeded casts
by Vincent Bernat
· Sun Apr 03 13:48:42 2016 +0200
5be2f35
MAJOR: polling: centralize calls to I/O callbacks
by Willy Tarreau
· Wed Nov 19 19:43:05 2014 +0100
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
e852545
MEDIUM: polling: centralize polled events processing
by Willy Tarreau
· Sat Jan 25 09:58:06 2014 +0100
f817e9f
MAJOR: polling: rework the whole polling system
by Willy Tarreau
· Fri Jan 10 16:58:45 2014 +0100
033cd9d
REORG: polling: rename "fd_process_spec_events()" to "fd_process_cached_events()"
by Willy Tarreau
· Sat Jan 25 19:24:15 2014 +0100
899d957
REORG: polling: rename the cache allocation functions
by Willy Tarreau
· Sat Jan 25 19:20:35 2014 +0100
16f649c
REORG: polling: rename "fd_spec" to "fd_cache"
by Willy Tarreau
· Sat Jan 25 19:10:48 2014 +0100
69a41fa
CLEANUP: polling: rename "spec_e" to "state"
by Willy Tarreau
· Mon Jan 20 11:02:59 2014 +0100
fa7fc95
BUG/MEDIUM: polling: ensure we update FD status when there's no more activity
by Willy Tarreau
· Mon Jan 20 20:18:59 2014 +0100
ad38ace
MEDIUM: connection: centralize handling of nolinger in fd management
by Willy Tarreau
· Sun Dec 15 14:19:38 2013 +0100
70d0ad5
BUG: polling: don't skip polled events in the spec list
by Willy Tarreau
· Mon Nov 12 01:57:14 2012 +0100
09f2456
REORG: fd: centralize the processing of speculative events
by Willy Tarreau
· Sun Nov 11 16:43:45 2012 +0100
6ea20b1
REORG: fd: move the fd state management from ev_sepoll
by Willy Tarreau
· Sun Nov 11 16:05:19 2012 +0100
7be79a4
REORG: fd: move the speculative I/O management from ev_sepoll
by Willy Tarreau
· Sun Nov 11 15:02:54 2012 +0100
1720abd
MEDIUM: fd: don't unset fdtab[].updated upon delete
by Willy Tarreau
· Sun Nov 11 17:08:32 2012 +0100
037d2c1
MAJOR: sepoll: make the poller totally event-driven
by Willy Tarreau
· Tue Nov 06 02:34:46 2012 +0100
49b046d
MAJOR: fd: replace all EV_FD_* macros with new fd_*_* inline calls
by Willy Tarreau
· Thu Aug 09 12:11:58 2012 +0200
db3b326
REORG/MEDIUM: fd: remove FD_STCLOSE from struct fdtab
by Willy Tarreau
· Thu Jul 05 23:19:22 2012 +0200
e79c3b2
[BUG] debug: report the correct poller list in verbose mode
by Willy Tarreau
· Fri Nov 19 10:20:36 2010 +0100
8d5d77e
[OPTIM] move some rarely used fields out of fdtab
by Willy Tarreau
· Sun Oct 18 07:25:52 2009 +0200
c6f4ce8
[MEDIUM] add support for binding to source port ranges during connect
by Willy Tarreau
· Wed Jun 10 11:09:37 2009 +0200
43b7899
[MEDIUM] move global tuning options to the global structure
by Willy Tarreau
· Sun Jan 25 15:42:27 2009 +0100
3eba98a
[MEDIUM] splice: make use of pipe pools
by Willy Tarreau
· Sun Jan 25 13:56:13 2009 +0100
3ec79b9
[MINOR] global.maxpipes: add the ability to reserve file descriptors for pipes
by Willy Tarreau
· Sun Jan 18 20:39:42 2009 +0100
ec6c5df
[CLEANUP] remove many #include <types/xxx> from C files
by Willy Tarreau
· Tue Jul 15 00:22:45 2008 +0200
a643baf
[MEDIUM] Fix memory freeing at exit
by Krzysztof Piotr Oledzki
· Thu May 29 23:53:44 2008 +0200
ef1d1f8
[MAJOR] auto-registering of pollers at load time
by Willy Tarreau
· Mon Apr 16 00:25:25 2007 +0200
2ff7622
[MAJOR] delay registering of listener sockets at startup
by Willy Tarreau
· Mon Apr 09 19:29:56 2007 +0200
e1a7a2f
[MAJOR] kqueue was not initialized during startup
by Willy Tarreau
· Mon Apr 09 16:11:49 2007 +0200
4f60f16
[MAJOR] modularize the polling mechanisms
by Willy Tarreau
· Sun Apr 08 16:39:58 2007 +0200
b3107b9
[MINOR] pollers should not use MY_FD_*
by Willy Tarreau
· Sun Apr 08 09:32:47 2007 +0200
1001b94
[CLEANUP] fd.c : regparm was hardcoded too.
by Willy Tarreau
· Sun Oct 15 23:10:10 2006 +0200
2a42950
[MINOR] turn every FD_* into functions
by Willy Tarreau
· Sun Oct 15 14:52:29 2006 +0200
f8306d5
[MEDIUM] got rid of event_{cli,srv}_write() in favor of stream_sock_write()
by Willy Tarreau
· Sat Jul 29 19:01:31 2006 +0200
d797128
[MEDIUM] got rid of event_{cli,srv}_read() in favor of stream_sock_read()
by Willy Tarreau
· Sat Jul 29 18:36:34 2006 +0200
5446940
[MEDIUM] started the changes towards I/O completion callbacks
by Willy Tarreau
· Sat Jul 29 16:59:06 2006 +0200
2dd0d47
[CLEANUP] renamed include/haproxy to include/common
by Willy Tarreau
· Thu Jun 29 17:53:05 2006 +0200
baaee00
[BIGMOVE] exploded the monolithic haproxy.c file into multiple files.
by Willy Tarreau
· Mon Jun 26 02:48:02 2006 +0200