get rid of the last LOOKUP_RCU dependencies in link_path_walk()
authorAl Viro <viro@zeniv.linux.org.uk>
Fri, 4 Mar 2011 19:44:37 +0000 (14:44 -0500)
committerAl Viro <viro@zeniv.linux.org.uk>
Mon, 14 Mar 2011 13:15:26 +0000 (09:15 -0400)
commit951361f954596bd134d4270df834f47d151f98a6
tree719622960d2ec96473636333ddc8b85ab8151505
parenta7472baba22dd5d68580f528374f93421b33667e
get rid of the last LOOKUP_RCU dependencies in link_path_walk()

New helper: terminate_walk().  An error has happened during pathname
resolution and we either drop nd->path or terminate RCU, depending
the mode we had been in.  After that, nd is essentially empty.
Switch link_path_walk() to using that for cleanup.

Now the top-level logics in link_path_walk() is back to sanity.  RCU
dependencies are in the lower-level functions.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
fs/namei.c