https://github.com/torvalds/linux
Revision 6aaafc43a4ecc5bc8a3f6a2811d5eddc996a97f3 authored by Jeff Layton on 22 April 2019, 16:34:23 UTC, committed by J. Bruce Fields on 22 April 2019, 19:31:54 UTC
After a blocked nfsd file_lock request is deleted, knfsd will send a
callback to the client and then free the request. Commit 16306a61d3b7
("fs/locks: always delete_block after waiting.") changed it such that
locks_delete_block is always called on a request after it is awoken,
but that patch missed fixing up blocked nfsd request handling.

Call locks_delete_block on the block to wake up any locks still blocked
on the nfsd lock request before freeing it. Some of its callers already
do this however, so just remove those calls.

URL: https://bugzilla.kernel.org/show_bug.cgi?id=203363
Fixes: 16306a61d3b7 ("fs/locks: always delete_block after waiting.")
Reported-by: Slawomir Pryczek <slawek1211@gmail.com>
Cc: Neil Brown <neilb@suse.com>
Cc: stable@vger.kernel.org
Signed-off-by: Jeff Layton <jlayton@kernel.org>
Signed-off-by: J. Bruce Fields <bfields@redhat.com>
1 parent e6abc8c
History
Tip revision: 6aaafc43a4ecc5bc8a3f6a2811d5eddc996a97f3 authored by Jeff Layton on 22 April 2019, 16:34:23 UTC
nfsd: wake waiters blocked on file_lock before deleting it
Tip revision: 6aaafc4
File Mode Size
6lowpan_i.h -rw-r--r-- 1009 bytes
Kconfig -rw-r--r-- 2.7 KB
Makefile -rw-r--r-- 866 bytes
core.c -rw-r--r-- 4.4 KB
debugfs.c -rw-r--r-- 7.8 KB
iphc.c -rw-r--r-- 36.7 KB
ndisc.c -rw-r--r-- 6.7 KB
nhc.c -rw-r--r-- 5.3 KB
nhc.h -rw-r--r-- 4.3 KB
nhc_dest.c -rw-r--r-- 860 bytes
nhc_fragment.c -rw-r--r-- 868 bytes
nhc_ghc_ext_dest.c -rw-r--r-- 880 bytes
nhc_ghc_ext_frag.c -rw-r--r-- 892 bytes
nhc_ghc_ext_hop.c -rw-r--r-- 868 bytes
nhc_ghc_ext_route.c -rw-r--r-- 885 bytes
nhc_ghc_icmpv6.c -rw-r--r-- 823 bytes
nhc_ghc_udp.c -rw-r--r-- 781 bytes
nhc_hop.c -rw-r--r-- 843 bytes
nhc_ipv6.c -rw-r--r-- 807 bytes
nhc_mobility.c -rw-r--r-- 868 bytes
nhc_routing.c -rw-r--r-- 855 bytes
nhc_udp.c -rw-r--r-- 5.7 KB

back to top