kernel - Fix deadlock when umount races an access on the underlying filesystem
* The nlookup code temporarily busies the target mount when diving a
mount point in cases where the base of the mount is not resolved
in the namecache.
* Fix a deadlock which can occur between the namecache structural lock
and the vfs_busy() on the mount structure by reordering the lock.
* Generally only occured if an attempt was made to unmount a filesystem
on which programs are still doing active operations (verses just
passively holding references to the filesystem). For example, a
umount on the target filesystem occuring while a cpdup using an
absolute path is running.
Reported-by: ftigeot