mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-29 03:01:39 -04:00
net: add missing bh_unlock_sock() calls
Simon Kirby reported lockdep warnings and following messages : [104661.897577] huh, entered softirq 3 NET_RX ffffffff81613740 preempt_count 00000101, exited with 00000102? [104661.923653] huh, entered softirq 3 NET_RX ffffffff81613740 preempt_count 00000101, exited with 00000102? Problem comes from commit0e734419(ipv4: Use inet_csk_route_child_sock() in DCCP and TCP.) If inet_csk_route_child_sock() returns NULL, we should release socket lock before freeing it. Another lock imbalance exists if __inet_inherit_port() returns an error since commit093d282321( tproxy: fix hash locking issue when using port redirection in __inet_inherit_port()) a backport is also needed for >= 2.6.37 kernels. Reported-by: Simon Kirby <[email protected]> Signed-off-by: Eric Dumazet <[email protected]> Tested-by: Eric Dumazet <[email protected]> CC: Balazs Scheidler <[email protected]> CC: KOVACS Krisztian <[email protected]> Reviewed-by: Thomas Gleixner <[email protected]> Tested-by: Simon Kirby <[email protected]> Signed-off-by: David S. Miller <[email protected]>
This commit is contained in:
parent
e2e210c023
commit
918eb39962
2 changed files with 2 additions and 0 deletions
|
|
@ -433,6 +433,7 @@ exit:
|
|||
NET_INC_STATS_BH(sock_net(sk), LINUX_MIB_LISTENDROPS);
|
||||
return NULL;
|
||||
put_and_exit:
|
||||
bh_unlock_sock(newsk);
|
||||
sock_put(newsk);
|
||||
goto exit;
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue