[packages] haproxy: re-enable polling on listener() when memory shortage occours after accept
- thanks to Willy Tarreau <w@1wt.eu> git-svn-id: svn://svn.openwrt.org/openwrt/packages@23108 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
parent
efb03151ee
commit
08284f5a55
@ -10,7 +10,7 @@ include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=haproxy
|
||||
PKG_VERSION:=1.4.8
|
||||
PKG_RELEASE:=2
|
||||
PKG_RELEASE:=3
|
||||
|
||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
|
||||
PKG_SOURCE_URL:=http://haproxy.1wt.eu/download/1.4/src
|
||||
|
@ -0,0 +1,38 @@
|
||||
--- a/src/client.c
|
||||
+++ b/src/client.c
|
||||
@@ -1,7 +1,7 @@
|
||||
/*
|
||||
* Client-side variables and functions.
|
||||
*
|
||||
- * Copyright 2000-2009 Willy Tarreau <w@1wt.eu>
|
||||
+ * Copyright 2000-2010 Willy Tarreau <w@1wt.eu>
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License
|
||||
@@ -33,6 +33,7 @@
|
||||
#include <proto/log.h>
|
||||
#include <proto/hdr_idx.h>
|
||||
#include <proto/pattern.h>
|
||||
+#include <proto/protocols.h>
|
||||
#include <proto/proto_tcp.h>
|
||||
#include <proto/proto_http.h>
|
||||
#include <proto/proxy.h>
|
||||
@@ -121,7 +122,7 @@ int event_accept(int fd) {
|
||||
|
||||
if ((s = pool_alloc2(pool2_session)) == NULL) { /* disable this proxy for a while */
|
||||
Alert("out of memory in event_accept().\n");
|
||||
- EV_FD_CLR(fd, DIR_RD);
|
||||
+ disable_listener(l);
|
||||
p->state = PR_STIDLE;
|
||||
goto out_close;
|
||||
}
|
||||
@@ -149,7 +150,7 @@ int event_accept(int fd) {
|
||||
|
||||
if ((t = task_new()) == NULL) { /* disable this proxy for a while */
|
||||
Alert("out of memory in event_accept().\n");
|
||||
- EV_FD_CLR(fd, DIR_RD);
|
||||
+ disable_listener(l);
|
||||
p->state = PR_STIDLE;
|
||||
goto out_free_session;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user