Gitiles
Code Review
Sign In
git01.mediatek.com
/
haproxy
/
cad2ff2789dc39694245322b77ad74011b2653f0
/
src
/
ev_epoll.c
26d212c
MINOR: epoll: move epoll_fd to read_mostly
by Willy Tarreau
· Sat Apr 10 17:06:40 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
5362bc9
MINOR: fd: move .et_possible into fdtab[].state
by Willy Tarreau
· Tue Apr 06 18:05:48 2021 +0200
030dae1
MINOR: fd: move .cloned into fdtab[].state
by Willy Tarreau
· Tue Apr 06 17:53:33 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
bc52bec
MEDIUM: fd: add experimental support for edge-triggered polling
by Willy Tarreau
· Thu Jun 18 08:58:47 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
48fbcae
REORG: tools: split common/standard.h into haproxy/tools{,-t}.h
by Willy Tarreau
· Wed Jun 03 18:09:46 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
58017ee
REORG: include: move the BUG_ON() code to haproxy/bug.h
by Willy Tarreau
· Wed May 27 16:51:33 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
3858b12
CLEANUP: remove support for USE_MY_EPOLL
by Willy Tarreau
· Tue Mar 10 07:08:10 2020 +0100
55c5399
MINOR: epoll: always initialize all of epoll_event to please valgrind
by Willy Tarreau
· Wed Feb 26 14:32:53 2020 +0100
03e7853
BUILD: remove obsolete support for -mregparm / USE_REGPARM
by Willy Tarreau
· Tue Feb 25 07:38:05 2020 +0100
902871d
CLEANUP: epoll: place the struct epoll_event in the stack
by Willy Tarreau
· Thu Feb 20 11:23:43 2020 +0100
5d7dcc2
OPTIM: epoll: always poll for recv if neither active nor ready
by Willy Tarreau
· Thu Dec 26 16:40:24 2019 +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
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
60b639c
MEDIUM: hathreads: implement a more flexible rendez-vous point
by Willy Tarreau
· Thu Aug 02 10:16:17 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
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
038e54c
MINOR: epoll: get rid of the now useless fd_compute_new_polled_status()
by Willy Tarreau
· Wed Jan 17 21:51:21 2018 +0100
4979592
BUG/MINOR: epoll/threads: only call epoll_ctl(DEL) on polled FDs
by Willy Tarreau
· Wed Jan 31 09:49:29 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
3e805ed
BUILD: epoll/threads: Add test on MAX_THREADS to avoid warnings when complied without threads
by Christopher Faulet
· Thu Jan 25 16:18:09 2018 +0100
d9e7e36
BUG/MEDIUM: epoll/threads: use one epoll_fd per thread
by Willy Tarreau
· Thu Jan 18 19:16:02 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
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
9fab7be
BUG/MEDIUM: epoll: ensure we always consider HUP and ERR
by Willy Tarreau
· Tue Sep 05 15:32:56 2017 +0200
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
10146c9
CLEANUP: poll: move the conditions for waiting out of the poll functions
by Willy Tarreau
· Mon Apr 13 20:44:19 2015 +0200
d39ae7d
CLEANUP: epoll: epoll_events should be allocated according to global.tune.maxpollevents
by Godbach
· Wed Dec 17 16:14:26 2014 +0800
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
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
3ef5af3
BUG: Revert "OPTIM/MEDIUM: epoll: fuse active events into polled ones during polling changes"
by Willy Tarreau
· Fri Dec 20 16:03:41 2013 +0100
2f87730
OPTIM/MEDIUM: epoll: fuse active events into polled ones during polling changes
by Willy Tarreau
· Fri Nov 15 22:48:31 2013 +0100
cf181c9
BUG/MINOR: epoll: use a fix maxevents argument in epoll_wait()
by Willy Tarreau
· Fri Jan 18 15:22:41 2013 +0100
1c07b07
OPTIM: epoll: make use of EPOLLRDHUP
by Willy Tarreau
· Mon Jan 07 16:19:18 2013 +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
fb5470d
OPTIM: epoll: current fd does not count as a new one
by Willy Tarreau
· Fri Dec 14 00:02:33 2012 +0100
6320c3c
OPTIM: epoll: use a temp variable for intermediary flag computations
by Willy Tarreau
· Thu Dec 13 23:52:58 2012 +0100
db9cb0b
CLEANUP: poll: remove a useless double-check on fdtab[fd].owner
by Willy Tarreau
· Thu Dec 13 23:41:12 2012 +0100
462c720
CLEANUP: polling: gcc doesn't always optimize constants away
by Willy Tarreau
· Thu Dec 13 22:26:37 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
e9f49e7
MAJOR: polling: replace epoll with sepoll and remove sepoll
by Willy Tarreau
· Sun Nov 11 17:42:00 2012 +0100
f8cfa44
BUG/MINOR: epoll: correctly disable FD polling in fd_rem()
by Willy Tarreau
· Thu Oct 04 21:54:41 2012 +0200
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
43d8fb2
[REORG] build: move syscall redefinition to specific places
by Willy Tarreau
· Mon Aug 22 17:12:02 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
70bcfb7
[OPTIM] GCC4's builtin_expect() is suboptimal
by Willy Tarreau
· Sun Jan 27 02:21:53 2008 +0100
Next »