Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
LOCKD: Don't call utsname()->nodename from nlmclnt_setlockargs
Firstly, nlmclnt_setlockargs can be called from a reclaimer thread, in which case we're in entirely the wrong namespace. Secondly, commit 8aac627 (move exit_task_namespaces() outside of exit_notify()) now means that exit_task_work() is called after exit_task_namespaces(), which triggers an Oops when we're freeing up the locks. Fix this by ensuring that we initialise the nlm_host's rpc_client at mount time, so that the cl_nodename field is initialised to the value of utsname()->nodename that the net namespace uses. Then replace the lockd callers of utsname()->nodename. Signed-off-by: Trond Myklebust <[email protected]> Cc: Toralf Förster <[email protected]> Cc: Oleg Nesterov <[email protected]> Cc: Nix <[email protected]> Cc: Jeff Layton <[email protected]> Cc: [email protected] # 3.10.x
- Loading branch information