]> git.baikalelectronics.ru Git - kernel.git/commit
netlink: Do not schedule work from sk_destruct
authorHerbert Xu <herbert@gondor.apana.org.au>
Mon, 5 Dec 2016 07:28:21 +0000 (15:28 +0800)
committerDavid S. Miller <davem@davemloft.net>
Tue, 6 Dec 2016 00:43:42 +0000 (19:43 -0500)
commitbb53fd19e9e6f750df74d7300cc66ff4150cfc48
tree9f10caf66c776a0ea3d55504e647897408105996
parent0c114b6791b33471da94a5df56501e65cd215ff1
netlink: Do not schedule work from sk_destruct

It is wrong to schedule a work from sk_destruct using the socket
as the memory reserve because the socket will be freed immediately
after the return from sk_destruct.

Instead we should do the deferral prior to sk_free.

This patch does just that.

Fixes: cd56cc52bf71 ("netlink: Call cb->done from a worker thread")
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Tested-by: Andrey Konovalov <andreyknvl@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/netlink/af_netlink.c