diff options
author | Robert Love <rlove@google.com> | 2009-10-19 10:42:35 -0400 |
---|---|---|
committer | Colin Cross <ccross@android.com> | 2009-10-23 12:18:04 -0700 |
commit | 3b775374f2de86246e3c585560bf7b1e4006460d (patch) | |
tree | ac4a5376024afaa7d45fb805725782a73a6ca161 /net | |
parent | bd5b3e225427acd3e6b241d79ea7236eaa7bbc59 (diff) |
ipv4: disable bottom halves around call to tcp_done().
Signed-off-by: Robert Love <rlove@google.com>
Signed-off-by: Colin Cross <ccross@android.com>
Diffstat (limited to 'net')
-rw-r--r-- | net/ipv4/tcp_ipv4.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/net/ipv4/tcp_ipv4.c b/net/ipv4/tcp_ipv4.c index ad0463df31b2..87696dcdeba7 100644 --- a/net/ipv4/tcp_ipv4.c +++ b/net/ipv4/tcp_ipv4.c @@ -1882,9 +1882,12 @@ restart: sock_hold(sk); spin_unlock_bh(lock); + + local_bh_disable(); bh_lock_sock(sk); tcp_done(sk); bh_unlock_sock(sk); + local_bh_enable(); sock_put(sk); goto restart; @@ -2502,4 +2505,3 @@ EXPORT_SYMBOL(tcp_proc_register); EXPORT_SYMBOL(tcp_proc_unregister); #endif EXPORT_SYMBOL(sysctl_tcp_low_latency); - |