Gitiles
Code Review
Sign In
git01.mediatek.com
/
haproxy
/
a71667c07d4cd9f6d350e100caa9039a7fd2d7a1
/
src
/
ev_epoll.c
5d7dcc2
OPTIM: epoll: always poll for recv if neither active nor ready
by Willy Tarreau
· 5 years ago
11ef083
MINOR: pollers: add a new flag to indicate pollers reporting ERR & HUP
by Willy Tarreau
· 5 years ago
6b30898
MEDIUM: fd: do not use the FD_POLL_* flags in the pollers anymore
by Willy Tarreau
· 5 years ago
5bee3e2
MEDIUM: fd: remove the FD_EV_POLLED status bit
by Willy Tarreau
· 5 years ago
5305505
MEDIUM: pollers: Remember the state for read and write for each threads.
by Olivier Houchard
· 5 years ago
305d5ab
MAJOR: fd: Get rid of the fd cache.
by Olivier Houchard
· 5 years ago
2ae84e4
MEDIUM: poller: separate the wait time from the wake events
by Willy Tarreau
· 5 years ago
cb6c927
MEDIUM: pollers: Use the new _HA_ATOMIC_* macros.
by Olivier Houchard
· 6 years ago
beb859a
MINOR: polling: add an option to support busy polling
by Willy Tarreau
· 6 years ago
48f8bc1
MINOR: poller: move the call of tv_update_date() back to the pollers
by Willy Tarreau
· 6 years ago
609aad9
REORG: time/activity: move activity measurements to activity.{c,h}
by Willy Tarreau
· 6 years ago
7e9c4ae
MINOR: poller: move time and date computation out of the pollers
by Willy Tarreau
· 6 years ago
f37ba94
MINOR: fd: centralize poll timeout computation in compute_poll_timeout()
by Willy Tarreau
· 6 years ago
60b639c
MEDIUM: hathreads: implement a more flexible rendez-vous point
by Willy Tarreau
· 6 years ago
cb92f5c
MINOR: pollers: move polled_mask outside of struct fdtab.
by Olivier Houchard
· 7 years ago
6b96f72
BUG/MEDIUM: pollers: Use a global list for fd shared between threads.
by Olivier Houchard
· 7 years ago
8ef1a6b
BUG/MINOR: fd: Don't clear the update_mask in fd_insert.
by Olivier Houchard
· 7 years ago
62a627a
MEDIUM: poller: use atomic ops to update the fdtab mask
by Willy Tarreau
· 7 years ago
038e54c
MINOR: epoll: get rid of the now useless fd_compute_new_polled_status()
by Willy Tarreau
· 7 years ago
4979592
BUG/MINOR: epoll/threads: only call epoll_ctl(DEL) on polled FDs
by Willy Tarreau
· 7 years ago
745c60e
CLEANUP: fd: remove the unused "new" field
by Willy Tarreau
· 7 years ago
ce036bc
MINOR: polling: make epoll and kqueue not depend on maxfd anymore
by Willy Tarreau
· 7 years ago
3e805ed
BUILD: epoll/threads: Add test on MAX_THREADS to avoid warnings when complied without threads
by Christopher Faulet
· 7 years ago
d9e7e36
BUG/MEDIUM: epoll/threads: use one epoll_fd per thread
by Willy Tarreau
· 7 years ago
ebc78d7
BUG/MEDIUM: fd: maintain a per-thread update mask
by Willy Tarreau
· 7 years ago
d80cb4e
MINOR: global: add some global activity counters to help debugging
by Willy Tarreau
· 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
63e2ce6
MINOR: threads/polling: pollers now handle FDs depending on the process mask
by Christopher Faulet
· 7 years ago
d4604ad
MAJOR: threads/fd: Make fd stuffs thread-safe
by Christopher Faulet
· 7 years ago
ab62f51
MINOR: polling: Use fd_update_events to update events seen for a fd
by Christopher Faulet
· 7 years ago
9fab7be
BUG/MEDIUM: epoll: ensure we always consider HUP and ERR
by Willy Tarreau
· 7 years ago
5a76769
MINOR: fd: add a new flag HAP_POLL_F_RDHUP to struct poller
by Willy Tarreau
· 8 years ago
10146c9
CLEANUP: poll: move the conditions for waiting out of the poll functions
by Willy Tarreau
· 10 years ago
d39ae7d
CLEANUP: epoll: epoll_events should be allocated according to global.tune.maxpollevents
by Godbach
· 10 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
25002d2
MINOR: polling: create function fd_compute_new_polled_status()
by Willy Tarreau
· 11 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
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
15a4dec
REORG: polling: rename "spec_e" to "state" and "spec_p" to "cache"
by Willy Tarreau
· 11 years ago
69a41fa
CLEANUP: polling: rename "spec_e" to "state"
by Willy Tarreau
· 11 years ago
3ef5af3
BUG: Revert "OPTIM/MEDIUM: epoll: fuse active events into polled ones during polling changes"
by Willy Tarreau
· 11 years ago
2f87730
OPTIM/MEDIUM: epoll: fuse active events into polled ones during polling changes
by Willy Tarreau
· 11 years ago
cf181c9
BUG/MINOR: epoll: use a fix maxevents argument in epoll_wait()
by Willy Tarreau
· 12 years ago
1c07b07
OPTIM: epoll: make use of EPOLLRDHUP
by Willy Tarreau
· 12 years ago
39ebef8
BUG/MINOR: poll: the I/O handler was called twice for polled I/Os
by Willy Tarreau
· 12 years ago
fb5470d
OPTIM: epoll: current fd does not count as a new one
by Willy Tarreau
· 12 years ago
6320c3c
OPTIM: epoll: use a temp variable for intermediary flag computations
by Willy Tarreau
· 12 years ago
db9cb0b
CLEANUP: poll: remove a useless double-check on fdtab[fd].owner
by Willy Tarreau
· 12 years ago
462c720
CLEANUP: polling: gcc doesn't always optimize constants away
by Willy Tarreau
· 12 years ago
26d7cfc
BUG/MAJOR: polling: do not set speculative events on ERR nor HUP
by Willy Tarreau
· 12 years ago
70c6fd8
MAJOR: polling: remove unused callbacks from the poller struct
by Willy Tarreau
· 12 years ago
e9f49e7
MAJOR: polling: replace epoll with sepoll and remove sepoll
by Willy Tarreau
· 12 years ago
f8cfa44
BUG/MINOR: epoll: correctly disable FD polling in fd_rem()
by Willy Tarreau
· 12 years ago
babd05a
MEDIUM: fd: add fd_poll_{recv,send} for use when explicit polling is required
by Willy Tarreau
· 12 years ago
3788e4c
MEDIUM: fd: remove the EV_FD_COND_* primitives
by Willy Tarreau
· 12 years ago
076be25
CLEANUP: remove the now unused fdtab direct I/O callbacks
by Willy Tarreau
· 12 years ago
9845e75
MEDIUM: polling: prepare to call the iocb() function when defined.
by Willy Tarreau
· 12 years ago
db3b326
REORG/MEDIUM: fd: remove FD_STCLOSE from struct fdtab
by Willy Tarreau
· 12 years ago
491c498
BUG/MINOR: polling: some events were not set in various pollers
by Willy Tarreau
· 12 years ago
45a1251
[MEDIUM] poll: add a measurement of idle vs work time
by Willy Tarreau
· 13 years ago
43d8fb2
[REORG] build: move syscall redefinition to specific places
by Willy Tarreau
· 13 years ago
d79e79b
[BUG] O(1) pollers should check their FD before closing it
by Willy Tarreau
· 16 years ago
332740d
[MEDIUM] pollers: don't wait if a signal is pending
by Willy Tarreau
· 16 years ago
a534fea
[CLEANUP] remove 65 useless NULL checks before free
by Willy Tarreau
· 16 years ago
ec6c5df
[CLEANUP] remove many #include <types/xxx> from C files
by Willy Tarreau
· 16 years ago
0c303ee
[MAJOR] convert all expiration timers from timeval to ticks
by Willy Tarreau
· 16 years ago
b0b37bc
[MEDIUM] further improve monotonic clock by check forward jumps
by Willy Tarreau
· 16 years ago
b7f694f
[MEDIUM] implement a monotonic internal clock
by Willy Tarreau
· 16 years ago
3a62811
[BUG] event pollers must not wait if a task exists in the run queue
by Willy Tarreau
· 16 years ago
70bcfb7
[OPTIM] GCC4's builtin_expect() is suboptimal
by Willy Tarreau
· 17 years ago
1db3771
[MEDIUM] limit the number of events returned by *poll*
by Willy Tarreau
· 17 years ago
fb8983f
[BUG] the epoll FD must not be shared between processes
by Willy Tarreau
· 17 years ago
bdefc51
[BUG] fix null timeouts in *poll-based pollers
by Willy Tarreau
· 18 years ago
d825eef
[MAJOR] replaced all timeouts with struct timeval
by Willy Tarreau
· 18 years ago
ef1d1f8
[MAJOR] auto-registering of pollers at load time
by Willy Tarreau
· 18 years ago
b40d420
[BUILD] declare epoll_* as static when using our own functions
by Willy Tarreau
· 18 years ago
58094f2
[MAJOR] ev_epoll: do not rely on fd_sets anymore
by Willy Tarreau
· 18 years ago
2ff7622
[MAJOR] delay registering of listener sockets at startup
by Willy Tarreau
· 18 years ago
63455a9
[MINOR] use 'is_set' instead of 'isset' in struct poller
by Willy Tarreau
· 18 years ago
69801b8
[MINOR] removed proto/polling.h which was not used anymore
by Willy Tarreau
· 18 years ago
e54e917
[MINOR] ev_* : moved the poll function closer to fd_*
by Willy Tarreau
· 18 years ago
97129b5
[MINOR] changed fd_set*/fd_clr* functions to return ints
by Willy Tarreau
· 18 years ago
28d8686
[MEDIUM] pollers: store the events in arrays
by Willy Tarreau
· 18 years ago
4f60f16
[MAJOR] modularize the polling mechanisms
by Willy Tarreau
· 18 years ago