]> git.baikalelectronics.ru Git - kernel.git/commit
sunrpc: don't call sleeping functions from the notifier block callbacks
authorScott Mayhew <smayhew@redhat.com>
Thu, 5 Jan 2017 21:34:51 +0000 (16:34 -0500)
committerJ. Bruce Fields <bfields@redhat.com>
Thu, 12 Jan 2017 20:56:40 +0000 (15:56 -0500)
commit7c4d0543440857389b968570a1e803ae64e743ff
treeee7ffd8b1b320378fa7ffa37a1dc5fd38595a33d
parente6e5d2b99214003c7375d10ef60421ba25ab23df
sunrpc: don't call sleeping functions from the notifier block callbacks

The inet6addr_chain is an atomic notifier chain, so we can't call
anything that might sleep (like lock_sock)... instead of closing the
socket from svc_age_temp_xprts_now (which is called by the notifier
function), just have the rpc service threads do it instead.

Cc: stable@vger.kernel.org
Fixes: 3b62c31fb19e "sunrpc: Add a function to close..."
Signed-off-by: Scott Mayhew <smayhew@redhat.com>
Signed-off-by: J. Bruce Fields <bfields@redhat.com>
include/linux/sunrpc/svc_xprt.h
net/sunrpc/svc_xprt.c