This is a note to let you know that I've just added the patch titled

    net: do not call sock_put() on TIMEWAIT sockets

to the 3.11-stable tree which can be found at:
    
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     net-do-not-call-sock_put-on-timewait-sockets.patch
and it can be found in the queue-3.11 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <[email protected]> know about it.


>From 05c9fdfad860abd64136d8ccd88dbf84e40bd5f5 Mon Sep 17 00:00:00 2001
From: Eric Dumazet <[email protected]>
Date: Tue, 1 Oct 2013 21:04:11 -0700
Subject: net: do not call sock_put() on TIMEWAIT sockets

From: Eric Dumazet <[email protected]>

[ Upstream commit 80ad1d61e72d626e30ebe8529a0455e660ca4693 ]

commit 3ab5aee7fe84 ("net: Convert TCP & DCCP hash tables to use RCU /
hlist_nulls") incorrectly used sock_put() on TIMEWAIT sockets.

We should instead use inet_twsk_put()

Signed-off-by: Eric Dumazet <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
---
 net/ipv4/inet_hashtables.c  |    2 +-
 net/ipv6/inet6_hashtables.c |    2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

--- a/net/ipv4/inet_hashtables.c
+++ b/net/ipv4/inet_hashtables.c
@@ -287,7 +287,7 @@ begintw:
                        if (unlikely(!INET_TW_MATCH(sk, net, acookie,
                                                    saddr, daddr, ports,
                                                    dif))) {
-                               sock_put(sk);
+                               inet_twsk_put(inet_twsk(sk));
                                goto begintw;
                        }
                        goto out;
--- a/net/ipv6/inet6_hashtables.c
+++ b/net/ipv6/inet6_hashtables.c
@@ -116,7 +116,7 @@ begintw:
                        }
                        if (unlikely(!INET6_TW_MATCH(sk, net, saddr, daddr,
                                                     ports, dif))) {
-                               sock_put(sk);
+                               inet_twsk_put(inet_twsk(sk));
                                goto begintw;
                        }
                        goto out;


Patches currently in stable-queue which might be from [email protected] are

queue-3.11/tcp-tsq-can-use-a-dynamic-limit.patch
queue-3.11/net-mlx4_en-rename-name-of-mlx4_en_rx_alloc-members.patch
queue-3.11/ipv4-fix-ineffective-source-address-selection.patch
queue-3.11/net-unix-inherit-sock_pass-cred-sec-flags-from-socket-to-fix-race.patch
queue-3.11/net-do-not-call-sock_put-on-timewait-sockets.patch
queue-3.11/tcp-must-unclone-packets-before-mangling-them.patch
queue-3.11/netem-update-backlog-after-drop.patch
queue-3.11/l2tp-must-disable-bh-before-calling-l2tp_xmit_skb.patch
queue-3.11/tcp-do-not-forget-fin-in-tcp_shifted_skb.patch
queue-3.11/bnx2x-record-rx-queue-for-lro-packets.patch
queue-3.11/net-mlx4_en-fix-pages-never-dma-unmapped-on-rx.patch
queue-3.11/tcp-tso-packets-automatic-sizing.patch
--
To unsubscribe from this list: send the line "unsubscribe stable" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to