--- /dev/null
+From chrisw@osdl.org Wed Mar 1 12:22:20 2006
+From: Arnaldo Carvalho de Melo <acme@ghostprotocols.net>
+Date: Feb 27, 2006 6:28 PM
+Subject: [REQSK] Don't reset rskq_defer_accept in reqsk_queue_alloc
+To: "David S. Miller" <davem@davemloft.net>
+Cc: netdev@vger.kernel.org, Andrew Morton <akpm@osdl.org>, "Alexandra N. Kossovsky" <Alexandra.Kossovsky@oktetlabs.ru>
+
+In 295f7324ff8d9ea58b4d3ec93b1aaa1d80e048a9 I moved defer_accept from
+tcp_sock to request_queue and mistakingly reset it at reqsl_queue_alloc, causing
+calls to setsockopt(TCP_DEFER_ACCEPT ) to be lost after bind, the fix is to
+remove the zeroing of rskq_defer_accept from reqsl_queue_alloc.
+
+Thanks to Alexandra N. Kossovsky <Alexandra.Kossovsky@oktetlabs.ru> for
+reporting and testing the suggested fix.
+
+Signed-off-by: Arnaldo Carvalho de Melo <acme@mandriva.com>
+Signed-off-by: Chris Wright <chrisw@sous-sol.org>
+---
+
+ net/core/request_sock.c | 1 -
+ 1 files changed, 1 deletion(-)
+
+--- linux-2.6.15.5.orig/net/core/request_sock.c
++++ linux-2.6.15.5/net/core/request_sock.c
+@@ -52,7 +52,6 @@ int reqsk_queue_alloc(struct request_soc
+ get_random_bytes(&lopt->hash_rnd, sizeof(lopt->hash_rnd));
+ rwlock_init(&queue->syn_wait_lock);
+ queue->rskq_accept_head = queue->rskq_accept_head = NULL;
+- queue->rskq_defer_accept = 0;
+ lopt->nr_table_entries = nr_table_entries;
+
+ write_lock_bh(&queue->syn_wait_lock);