diff options
author | 2017-11-10 10:19:26 +0300 | |
---|---|---|
committer | 2017-11-27 16:45:11 -0500 | |
commit | 6b18dd1c03e07262ea0866084856b2a3c5ba8d09 (patch) | |
tree | 0e9780bbbd7ae2aa0913a5ebbff8822d5fa7edd4 /fs/nfsd | |
parent | SUNRPC: make cache_detail structures const (diff) | |
download | linux-6b18dd1c03e07262ea0866084856b2a3c5ba8d09.tar.gz linux-6b18dd1c03e07262ea0866084856b2a3c5ba8d09.tar.bz2 linux-6b18dd1c03e07262ea0866084856b2a3c5ba8d09.zip |
race of lockd inetaddr notifiers vs nlmsvc_rqst change
lockd_inet[6]addr_event use nlmsvc_rqst without taken nlmsvc_mutex,
nlmsvc_rqst can be changed during execution of notifiers and crash the host.
Patch enables access to nlmsvc_rqst only when it was correctly initialized
and delays its cleanup until notifiers are no longer in use.
Note that nlmsvc_rqst can be temporally set to ERR_PTR, so the "if
(nlmsvc_rqst)" check in notifiers is insufficient on its own.
Signed-off-by: Vasily Averin <vvs@virtuozzo.com>
Tested-by: Scott Mayhew <smayhew@redhat.com>
Signed-off-by: J. Bruce Fields <bfields@redhat.com>
Diffstat (limited to 'fs/nfsd')
0 files changed, 0 insertions, 0 deletions