]> git.ipfire.org Git - thirdparty/haproxy.git/commit
MAJOR: channel: replace the struct buffer with a pointer to a buffer
authorWilly Tarreau <w@1wt.eu>
Fri, 12 Oct 2012 21:49:43 +0000 (23:49 +0200)
committerWilly Tarreau <w@1wt.eu>
Sat, 13 Oct 2012 07:07:52 +0000 (09:07 +0200)
commit9b28e03b66dd7e439860a973946ee376470281c8
treed5a27472cb931dc9e6121a16789115c84aae7fcb
parentf332af771563e64de945a8878b6205330ead9d96
MAJOR: channel: replace the struct buffer with a pointer to a buffer

With this commit, we now separate the channel from the buffer. This will
allow us to replace buffers on the fly without touching the channel. Since
nobody is supposed to keep a reference to a buffer anymore, doing so is not
a problem and will also permit some copy-less data manipulation.

Interestingly, these changes have shown a 2% performance increase on some
workloads, probably due to a better cache placement of data.
14 files changed:
include/common/buffer.h
include/proto/channel.h
include/types/channel.h
src/acl.c
src/backend.c
src/buffer.c
src/channel.c
src/dumpstats.c
src/haproxy.c
src/peers.c
src/proto_http.c
src/proto_tcp.c
src/session.c
src/stream_interface.c