haproxy/src
Willy Tarreau 0f8d3ab362 MEDIUM: stream: don't try to send first in process_stream()
The rationale here is that we should never need to try to send() at the
beginning of process_stream() because :
  - if something was pending, it's very unlikely that it was unblocked
    and not sent just between the last poll() and the wakeup instant.
  - if something pending was recently sent, then we don't have anything
    to send anymore.

So at first glance it doesn't seem like there could be any valid case
where trying to send before entering the function brings any benefit.
2018-10-28 13:47:00 +01:00
..
51d.c REORG: http: move the code to different files 2018-10-02 18:26:59 +02:00
acl.c MEDIUM: chunks: make the chunk struct's fields match the buffer struct 2018-07-19 16:23:43 +02:00
action.c MINOR: action: Add function to check rules using an action ACT_ACTION_TRK_* 2017-10-31 11:36:12 +01:00
applet.c MEDIUM: stream-int: replace channel_alloc_buffer() with si_alloc_ibuf() everywhere 2018-10-28 13:47:00 +01:00
arg.c MEDIUM: chunks: make the chunk struct's fields match the buffer struct 2018-07-19 16:23:43 +02:00
auth.c MEDIUM: chunks: make the chunk struct's fields match the buffer struct 2018-07-19 16:23:43 +02:00
backend.c BUG/MINOR: only auto-prefer last server if lb-alg is non-deterministic 2018-10-27 22:10:32 +02:00
base64.c [MINOR] add encode/decode function for 30-bit integers from/to base64 2010-10-30 19:04:33 +02:00
buffer.c MAJOR: buffer: finalize buffer detachment 2018-07-19 16:23:43 +02:00
cache.c MINOR: cache: Avoid usage of atoi() when parsing "max-object-size". 2018-10-26 04:54:40 +02:00
cfgparse.c MINOR: proxy: add a new option "http-use-htx" 2018-10-23 10:22:36 +02:00
channel.c BUG/MEDIUM: buffers: Make sure we don't wrap in ci_insert_line2/b_rep_blk. 2018-10-08 16:11:54 +02:00
checks.c MEDIUM: connections: Don't directly mess with the polling from the upper layers. 2018-10-21 05:58:40 +02:00
chunk.c MINOR: chunk: remove impossible tests on negative chunk->data 2018-08-22 05:28:32 +02:00
cli.c MEDIUM: time: measure the time stolen by other threads 2018-10-19 08:51:59 +02:00
compression.c REORG: http: move the HTTP semantics definitions to http.h/http.c 2018-09-11 10:30:25 +02:00
connection.c MEDIUM: connections: Don't directly mess with the polling from the upper layers. 2018-10-21 05:58:40 +02:00
da.c CLEANUP: http: remove some leftovers from recent cleanups 2018-10-02 18:37:27 +02:00
dns.c BUILD: dns: fix null-deref build warning at -Wextra 2018-09-20 11:42:15 +02:00
ev_epoll.c MINOR: poller: move time and date computation out of the pollers 2018-10-17 19:59:43 +02:00
ev_kqueue.c MINOR: poller: move time and date computation out of the pollers 2018-10-17 19:59:43 +02:00
ev_poll.c MINOR: poller: move time and date computation out of the pollers 2018-10-17 19:59:43 +02:00
ev_select.c MINOR: poller: move time and date computation out of the pollers 2018-10-17 19:59:43 +02:00
fd.c MEDIUM: fd/threads: only grab the fd's lock if the FD has more than one thread 2018-10-15 13:25:06 +02:00
filters.c DOC: Fix typos in lua documentation 2018-09-14 09:31:34 +02:00
flt_http_comp.c REORG: http: move some header value processing functions to http.c 2018-09-11 10:30:25 +02:00
flt_spoe.c REORG: http: move HTTP rules parsing to http_rules.c 2018-10-02 18:28:05 +02:00
flt_trace.c MAJOR: chunks: replace struct chunk with struct buffer 2018-07-19 16:23:43 +02:00
freq_ctr.c BUG/MAJOR: threads/freq_ctr: use a memory barrier to detect changes 2017-10-31 18:01:18 +01:00
frontend.c MEDIUM: chunks: make the chunk struct's fields match the buffer struct 2018-07-19 16:23:43 +02:00
h1.c MINOR: h1: Add the flag H1_MF_NO_PHDR to not add pseudo-headers during parsing 2018-10-12 16:15:18 +02:00
h2.c BUG/MEDIUM: h2: implement missing support for chunked encoded uploads 2018-04-26 10:20:44 +02:00
haproxy.c BUG/MEDIUM: mworker: don't poll on LI_O_INHERITED listeners 2018-10-12 19:30:18 +02:00
hash.c MINOR: hash: add new function hash_crc32c 2018-03-21 05:04:01 +01:00
hathreads.c BUG/MEDIUM: threads: fix thread_release() at the end of the rendez-vous point 2018-10-16 17:03:16 +02:00
hdr_idx.c CLEANUP: pools: rename all pool functions and pointers to remove this "2" 2017-11-24 17:49:53 +01:00
hlua.c MEDIUM: stream-int: replace channel_alloc_buffer() with si_alloc_ibuf() everywhere 2018-10-28 13:47:00 +01:00
hlua_fcn.c MEDIUM: lua: Add stick table support for Lua. 2018-09-29 20:15:01 +02:00
hpack-dec.c BUG/CRITICAL: hpack: fix improper sign check on the header index value 2018-09-20 11:45:56 +02:00
hpack-enc.c MAJOR: chunks: replace struct chunk with struct buffer 2018-07-19 16:23:43 +02:00
hpack-huff.c BUG/MINOR: hpack: must reject huffman literals padded with more than 7 bits 2017-12-03 21:08:39 +01:00
hpack-tbl.c BUG/CRITICAL: hpack: fix improper sign check on the header index value 2018-09-20 11:45:56 +02:00
http.c REORG: http: move some header value processing functions to http.c 2018-09-11 10:30:25 +02:00
http_acl.c REORG: http: move the code to different files 2018-10-02 18:26:59 +02:00
http_act.c REORG: http: move HTTP rules parsing to http_rules.c 2018-10-02 18:28:05 +02:00
http_conv.c REORG: http: move the code to different files 2018-10-02 18:26:59 +02:00
http_fetch.c REORG: http: move the code to different files 2018-10-02 18:26:59 +02:00
http_rules.c REORG: http: move HTTP rules parsing to http_rules.c 2018-10-02 18:28:05 +02:00
i386-linux-vsys.c MEDIUM: listener: add support for linux's accept4() syscall 2012-10-08 20:11:03 +02:00
lb_chash.c BUG/MEDIUM: lb/threads: always properly lock LB algorithms on maintenance operations 2018-08-21 19:44:53 +02:00
lb_fas.c BUG/MEDIUM: lb/threads: always properly lock LB algorithms on maintenance operations 2018-08-21 19:44:53 +02:00
lb_fwlc.c BUG/MEDIUM: lb/threads: always properly lock LB algorithms on maintenance operations 2018-08-21 19:44:53 +02:00
lb_fwrr.c BUG/MEDIUM: lb/threads: always properly lock LB algorithms on maintenance operations 2018-08-21 19:44:53 +02:00
lb_map.c REORG: http: move the HTTP semantics definitions to http.h/http.c 2018-09-11 10:30:25 +02:00
listener.c MEDIUM: protocol: sockpair protocol 2018-09-12 07:20:17 +02:00
log.c MINOR: log: make sess_log() support sess=NULL 2018-10-12 16:58:01 +02:00
lru.c MINOR: lru: new function to delete <nb> least recently used keys 2016-01-11 07:31:35 +01:00
mailers.c MEDIUM: Add parsing of mailers section 2015-02-03 00:24:16 +01:00
map.c BUG/MEDIUM: map: don't store exp_replace() result in the trash's length 2018-08-22 05:16:33 +02:00
memory.c BUG/MEDIUM: pools: fix the minimum allocation size 2018-10-23 14:40:23 +02:00
mux_h2.c MINOR: h2: Don't run tasks that are waiting to send if mux in full. 2018-10-21 06:00:13 +02:00
mux_pt.c MEDIUM: connections: Don't directly mess with the polling from the upper layers. 2018-10-21 05:58:40 +02:00
namespace.c MEDIUM: chunks: make the chunk struct's fields match the buffer struct 2018-07-19 16:23:43 +02:00
pattern.c BUG/MEDIUM: patterns: fix possible double free when reloading a pattern list 2018-09-19 06:46:51 +02:00
payload.c MEDIUM: chunks: make the chunk struct's fields match the buffer struct 2018-07-19 16:23:43 +02:00
peers.c MINOR: peers: use defines instead of enums to appease clang. 2018-10-16 19:31:15 +02:00
pipe.c CLEANUP: pools: rename all pool functions and pointers to remove this "2" 2017-11-24 17:49:53 +01:00
proto_http.c MINOR: stream: don't prune variables if the list is empty 2018-10-28 13:46:47 +01:00
proto_sockpair.c BUILD: sockpair: silence a build warning at -Wextra 2018-09-20 11:42:15 +02:00
proto_tcp.c REORG: http: move HTTP rules parsing to http_rules.c 2018-10-02 18:28:05 +02:00
proto_udp.c CLEANUP: fix inconsistency between fd->iocb, proto->accept and accept() 2016-04-14 11:18:22 +02:00
proto_uxst.c MINOR: connection: make conn_sock_drain() work for all socket families 2018-08-24 14:45:46 +02:00
protocol.c MEDIUM: protocol: use a custom AF_MAX to help protocol parser 2018-09-12 07:12:27 +02:00
proxy.c MEDIUM: snapshot: merge the captured data after the descriptor 2018-09-07 20:07:17 +02:00
queue.c REORG: http: move HTTP rules parsing to http_rules.c 2018-10-02 18:28:05 +02:00
raw_sock.c MINOR: connections: Introduce an unsubscribe method. 2018-10-11 15:34:21 +02:00
regex.c CLEANUP: log: Rename Alert/Warning in ha_alert/ha_warning 2017-11-24 17:19:12 +01:00
sample.c REORG: http: move the HTTP semantics definitions to http.h/http.c 2018-09-11 10:30:25 +02:00
server.c CLEANUP: state-file: make the path concatenation code a bit more consistent 2018-10-16 19:26:12 +02:00
session.c REORG: http: move the HTTP semantics definitions to http.h/http.c 2018-09-11 10:30:25 +02:00
sha1.c IMPORT: sha1: import SHA1 functions 2017-10-25 04:45:48 +02:00
shctx.c MINOR: shctx: Change max. object size type to unsigned int. 2018-10-26 04:54:40 +02:00
signal.c MEDIUM: startup: unify signal init between daemon and mworker mode 2018-09-11 10:21:58 +02:00
ssl_sock.c BUG/MINOR: ssl: Wrong usage of shctx_init(). 2018-10-26 04:54:40 +02:00
standard.c MEDIUM: protocol: sockpair protocol 2018-09-12 07:20:17 +02:00
stats.c BUILD: stats: remove build warnings on potential null-derefs 2018-09-20 11:42:15 +02:00
stick_table.c BUILD: stick-table: make sure not to fail on task_new() during initialization 2018-10-15 13:24:43 +02:00
stream.c MEDIUM: stream: don't try to send first in process_stream() 2018-10-28 13:47:00 +01:00
stream_interface.c MEDIUM: stream-int: replace channel_alloc_buffer() with si_alloc_ibuf() everywhere 2018-10-28 13:47:00 +01:00
task.c OPTIM: tasks: group all tree roots per cache line 2018-10-15 19:06:13 +02:00
tcp_rules.c BUG/MINOR: build: Fix compilation with debug mode enabled 2018-07-20 10:45:20 +02:00
time.c MEDIUM: time: measure the time stolen by other threads 2018-10-19 08:51:59 +02:00
trace.c CONTRIB: trace: try to display the function's return value on exit 2017-10-24 19:54:25 +02:00
uri_auth.c CLEANUP: log: Rename Alert/Warning in ha_alert/ha_warning 2017-11-24 17:19:12 +01:00
vars.c REORG: http: move HTTP rules parsing to http_rules.c 2018-10-02 18:28:05 +02:00
wurfl.c MAJOR: chunks: replace struct chunk with struct buffer 2018-07-19 16:23:43 +02:00
xxhash.c CLEANUP: remove unneeded casts 2016-04-03 14:17:42 +02:00