From: Willy Tarreau Date: Sun, 25 Jan 2009 15:13:42 +0000 (+0100) Subject: [BUILD] add USE_LINUX_SPLICE to enable LINUX_SPLICE on linux 2.6 X-Git-Tag: v1.3.16-rc1~57 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=88e458a329035af06ea4816ddaca03c6d883e785;p=thirdparty%2Fhaproxy.git [BUILD] add USE_LINUX_SPLICE to enable LINUX_SPLICE on linux 2.6 This will provide high performance data forwarding between sockets, but it is broken on many kernels and will sometimes forward corrupted data without some kernel patches. Consider this experimental for now. --- diff --git a/Makefile b/Makefile index 2619a653d6..855c902982 100644 --- a/Makefile +++ b/Makefile @@ -21,6 +21,7 @@ # USE_TCPSPLICE : enable tcp_splice() on Linux (needs kernel patch). # USE_TPROXY : enable transparent proxy. Automatic. # USE_LINUX_TPROXY : enable full transparent proxy (need kernel patch). +# USE_LINUX_SPLICE : enable kernel 2.6 splicing (broken on old kernels) # # Options can be forced by specifying "USE_xxx=1" or can be disabled by using # "USE_xxx=" (empty string). @@ -298,6 +299,11 @@ OPTIONS_LDFLAGS += -L$(TCPSPLICEDIR) -ltcpsplice BUILD_OPTIONS += $(call ignore_implicit,USE_TCPSPLICE) endif +ifneq ($(USE_LINUX_SPLICE),) +OPTIONS_CFLAGS += -DCONFIG_HAP_LINUX_SPLICE +BUILD_OPTIONS += $(call ignore_implicit,USE_LINUX_SPLICE) +endif + ifneq ($(USE_CTTPROXY),) OPTIONS_CFLAGS += -DCONFIG_HAP_CTTPROXY OPTIONS_OBJS += src/cttproxy.o