Gitiles
Code Review
Sign In
git01.mediatek.com
/
haproxy
/
a217df99f570e4ecad694ca566e9caee63694947
/
src
/
ev_kqueue.c
ea2036d
BUG/MINOR: pollers: always program an update for migrated FDs
by Willy Tarreau
· Fri Jul 30 14:18:49 2021 +0200
8209c9a
MINOR: kqueue: move kqueue_fd to read_mostly
by Willy Tarreau
· Sat Apr 10 17:09:53 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
61cfdf4
CLEANUP: tree-wide: replace free(x);x=NULL with ha_free(&x)
by Willy Tarreau
· Sat Feb 20 10:46:51 2021 +0100
38e8a1c
MINOR: debug: add a new DEBUG_FD build option
by Willy Tarreau
· Tue Jun 23 10:04:54 2020 +0200
e406386
MINOR: activity: rename confusing poll_* fields in the output
by Willy Tarreau
· Wed Jun 17 20:35:33 2020 +0200
e545153
MINOR: activity: report the number of times poll() reports I/O
by Willy Tarreau
· Wed Jun 17 20:25:18 2020 +0200
b255105
CLEANUP: include: tree-wide alphabetical sort of include files
by Willy Tarreau
· Tue Jun 09 09:07:15 2020 +0200
5b9cde4
REORG: include: move THREAD_LOCAL and __decl_thread() to compiler.h
by Willy Tarreau
· Thu Jun 11 08:33:02 2020 +0200
3727a8a
REORG: include: move signal.h to haproxy/signal{,-t}.h
by Willy Tarreau
· Thu Jun 04 17:37:26 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
c2f7c58
REORG: include: move common/ticks.h to haproxy/ticks.h
by Willy Tarreau
· Tue Jun 02 18:15:32 2020 +0200
a04ded5
REORG: include: move activity to haproxy/
by Willy Tarreau
· Tue Jun 02 10:29:48 2020 +0200
92b4f13
REORG: include: move time.h from common/ to haproxy/
by Willy Tarreau
· Mon Jun 01 11:05:15 2020 +0200
3f567e4
REORG: include: split hathreads into haproxy/thread.h and haproxy/thread-t.h
by Willy Tarreau
· Thu May 28 15:29:19 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
03e7853
BUILD: remove obsolete support for -mregparm / USE_REGPARM
by Willy Tarreau
· Tue Feb 25 07:38:05 2020 +0100
11ef083
MINOR: pollers: add a new flag to indicate pollers reporting ERR & HUP
by Willy Tarreau
· Thu Nov 28 18:17:33 2019 +0100
eaefc3c
BUG/MEDIUM: kqueue: Make sure we report read events even when no data.
by Olivier Houchard
· Tue Dec 10 18:22:55 2019 +0100
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
5bee3e2
MEDIUM: fd: remove the FD_EV_POLLED status bit
by Willy Tarreau
· Wed Sep 04 09:52:57 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
2ae84e4
MEDIUM: poller: separate the wait time from the wake events
by Willy Tarreau
· Tue May 28 16:44:05 2019 +0200
cb6c927
MEDIUM: pollers: Use the new _HA_ATOMIC_* macros.
by Olivier Houchard
· Fri Mar 08 18:49:54 2019 +0100
beb859a
MINOR: polling: add an option to support busy polling
by Willy Tarreau
· Thu Nov 22 18:07:59 2018 +0100
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
609aad9
REORG: time/activity: move activity measurements to activity.{c,h}
by Willy Tarreau
· Thu Nov 22 08:31:09 2018 +0100
7e9c4ae
MINOR: poller: move time and date computation out of the pollers
by Willy Tarreau
· Wed Oct 17 14:31:19 2018 +0200
f37ba94
MINOR: fd: centralize poll timeout computation in compute_poll_timeout()
by Willy Tarreau
· Wed Oct 17 11:25:54 2018 +0200
5ab3394
BUG/MAJOR: kqueue: Don't reset the changes number by accident.
by Olivier Houchard
· Tue Sep 11 14:44:51 2018 +0200
60b639c
MEDIUM: hathreads: implement a more flexible rendez-vous point
by Willy Tarreau
· Thu Aug 02 10:16:17 2018 +0200
c55b88e
BUG/MEDIUM: pollers/kqueue: use incremented position in event list
by PiBa-NL
· Thu May 10 01:01:28 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
ebaba75
BUG/MEDIUM: kqueue: When adding new events, provide an output to get errors.
by Olivier Houchard
· Mon Apr 16 13:24:48 2018 +0200
8ef1a6b
BUG/MINOR: fd: Don't clear the update_mask in fd_insert.
by Olivier Houchard
· Tue Apr 03 19:06:18 2018 +0200
62a627a
MEDIUM: poller: use atomic ops to update the fdtab mask
by Willy Tarreau
· Thu Jan 25 18:06:46 2018 +0100
7d24fad
MINOR: kqueue: get rid of the now useless fd_compute_new_polled_status()
by Willy Tarreau
· Thu Jan 25 14:57:25 2018 +0100
745c60e
CLEANUP: fd: remove the unused "new" field
by Willy Tarreau
· Sat Jan 20 23:59:40 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
727c89b
BUILD: kqueue/threads: Add test on MAX_THREADS to avoid warnings when complied without threads
by Christopher Faulet
· Thu Jan 25 16:40:35 2018 +0100
13b007d
BUG/MINOR: kqueue/threads: Don't forget to close kqueue_fd[tid] on each thread
by Christopher Faulet
· Thu Jan 25 16:32:18 2018 +0100
7a2364d
BUG/MEDIUM: kqueue/threads: use one kqueue_fd per thread
by Willy Tarreau
· Fri Jan 19 08:56:14 2018 +0100
ebc78d7
BUG/MEDIUM: fd: maintain a per-thread update mask
by Willy Tarreau
· Sat Jan 20 23:53:50 2018 +0100
d80cb4e
MINOR: global: add some global activity counters to help debugging
by Willy Tarreau
· Sat Jan 20 19:30:13 2018 +0100
ba8e8c3
BUG/MEDIUM: kqueue: Don't bother closing the kqueue after fork.
by Olivier Houchard
· Sun Nov 26 19:53:46 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
63e2ce6
MINOR: threads/polling: pollers now handle FDs depending on the process mask
by Christopher Faulet
· Fri Jun 02 14:36:39 2017 +0200
d4604ad
MAJOR: threads/fd: Make fd stuffs thread-safe
by Christopher Faulet
· Mon May 29 10:40:41 2017 +0200
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
fa06176
MEDIUM: kqueue: only set FD_POLL_IN when there are pending data
by Willy Tarreau
· Mon Mar 13 20:49:56 2017 +0100
19c4ab9
MEDIUM: kqueue: take care of EV_EOF to improve polling status accuracy
by Willy Tarreau
· Mon Mar 13 20:36:48 2017 +0100
dd437d9
MINOR: kqueue: exclusively rely on the kqueue returned status
by Willy Tarreau
· Mon Mar 13 20:30:12 2017 +0100
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
3c2f2f2
CLEANUP: remove unneeded casts
by Vincent Bernat
· Sun Apr 03 13:48:42 2016 +0200
10146c9
CLEANUP: poll: move the conditions for waiting out of the poll functions
by Willy Tarreau
· Mon Apr 13 20:44:19 2015 +0200
5be2f35
MAJOR: polling: centralize calls to I/O callbacks
by Willy Tarreau
· Wed Nov 19 19:43:05 2014 +0100
25002d2
MINOR: polling: create function fd_compute_new_polled_status()
by Willy Tarreau
· Sat Jan 25 10:32:56 2014 +0100
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
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
15a4dec
REORG: polling: rename "spec_e" to "state" and "spec_p" to "cache"
by Willy Tarreau
· Mon Jan 20 11:09:39 2014 +0100
69a41fa
CLEANUP: polling: rename "spec_e" to "state"
by Willy Tarreau
· Mon Jan 20 11:02:59 2014 +0100
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
26d7cfc
BUG/MAJOR: polling: do not set speculative events on ERR nor HUP
by Willy Tarreau
· Fri Dec 07 00:09:43 2012 +0100
70c6fd8
MAJOR: polling: remove unused callbacks from the poller struct
by Willy Tarreau
· Sun Nov 11 21:02:34 2012 +0100
4a22627
MAJOR: ev_kqueue: make the poller support speculative events
by Willy Tarreau
· Sun Nov 11 20:49:49 2012 +0100
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
3788e4c
MEDIUM: fd: remove the EV_FD_COND_* primitives
by Willy Tarreau
· Mon Jul 30 14:29:35 2012 +0200
076be25
CLEANUP: remove the now unused fdtab direct I/O callbacks
by Willy Tarreau
· Fri Jul 06 16:02:29 2012 +0200
9845e75
MEDIUM: polling: prepare to call the iocb() function when defined.
by Willy Tarreau
· Fri Jul 06 11:44:28 2012 +0200
db3b326
REORG/MEDIUM: fd: remove FD_STCLOSE from struct fdtab
by Willy Tarreau
· Thu Jul 05 23:19:22 2012 +0200
491c498
BUG/MINOR: polling: some events were not set in various pollers
by Willy Tarreau
· Fri Jul 06 11:16:01 2012 +0200
45a1251
[MEDIUM] poll: add a measurement of idle vs work time
by Willy Tarreau
· Sat Sep 10 16:56:42 2011 +0200
d79e79b
[BUG] O(1) pollers should check their FD before closing it
by Willy Tarreau
· Sun May 10 10:18:54 2009 +0200
332740d
[MEDIUM] pollers: don't wait if a signal is pending
by Willy Tarreau
· Sun May 10 09:57:21 2009 +0200
a534fea
[CLEANUP] remove 65 useless NULL checks before free
by Willy Tarreau
· Sun Aug 03 12:19:50 2008 +0200
ec6c5df
[CLEANUP] remove many #include <types/xxx> from C files
by Willy Tarreau
· Tue Jul 15 00:22:45 2008 +0200
0c303ee
[MAJOR] convert all expiration timers from timeval to ticks
by Willy Tarreau
· Mon Jul 07 00:09:58 2008 +0200
b0b37bc
[MEDIUM] further improve monotonic clock by check forward jumps
by Willy Tarreau
· Mon Jun 23 14:00:57 2008 +0200
b7f694f
[MEDIUM] implement a monotonic internal clock
by Willy Tarreau
· Sun Jun 22 17:18:02 2008 +0200
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
1db3771
[MEDIUM] limit the number of events returned by *poll*
by Willy Tarreau
· Sun Jun 03 17:16:49 2007 +0200
79b8a62
[BUG] ev_kqueue was forgotten during the switch to timeval
by Willy Tarreau
· Mon May 14 03:15:46 2007 +0200
ef1d1f8
[MAJOR] auto-registering of pollers at load time
by Willy Tarreau
· Mon Apr 16 00:25:25 2007 +0200
258696f
[MAJOR] missing tv_now in kqueue_poll() blocking timeouts
by Willy Tarreau
· Tue Apr 10 02:31:54 2007 +0200
40562cb
[MINOR] kqueue: use fd_clo() to close the fd
by Willy Tarreau
· Mon Apr 09 20:38:57 2007 +0200
2ff7622
[MAJOR] delay registering of listener sockets at startup
by Willy Tarreau
· Mon Apr 09 19:29:56 2007 +0200
8755285
[MEDIUM] kqueue: do not manually remove fds
by Willy Tarreau
· Mon Apr 09 17:16:07 2007 +0200
cd5ce2a
[MAJOR] kqueue bug in handling infinite timeouts
by Willy Tarreau
· Mon Apr 09 16:25:46 2007 +0200
63455a9
[MINOR] use 'is_set' instead of 'isset' in struct poller
by Willy Tarreau
· Mon Apr 09 15:34:49 2007 +0200
69801b8
[MINOR] removed proto/polling.h which was not used anymore
by Willy Tarreau
· Mon Apr 09 15:28:51 2007 +0200
1e63130a
[MAJOR] implemented support for FreeBSD's kqueue() polling mechanism
by Willy Tarreau
· Mon Apr 09 12:03:06 2007 +0200