[REQSK]: Don't reset rskq_defer_accept in reqsk_queue_alloc
authorArnaldo Carvalho de Melo <acme@mandriva.com>
Mon, 27 Feb 2006 21:30:43 +0000 (13:30 -0800)
committerDavid S. Miller <davem@davemloft.net>
Mon, 27 Feb 2006 21:30:43 +0000 (13:30 -0800)
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: David S. Miller <davem@davemloft.net>
net/core/request_sock.c

index b8203de5ff073c4e3bda5166ef1542b793141a0c..98f0fc923f9195326ed9d0fe538e58fd7528d8d7 100644 (file)
@@ -52,7 +52,6 @@ int reqsk_queue_alloc(struct request_sock_queue *queue,
        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);