2006-03-03 07:58:14

by Chris Wright

[permalink] [raw]
Subject: [PATCH 1/4] [REQSK] Dont reset rskq_defer_accept in reqsk_queue_alloc

-stable review patch. If anyone has any objections, please let us know.
------------------

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 <[email protected]> for
reporting and testing the suggested fix.

Signed-off-by: Arnaldo Carvalho de Melo <[email protected]>
Signed-off-by: Chris Wright <[email protected]>
---

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);

--