I wrote:
>
> So it looks like there could be something going on here. I'll pay a bit
> more attention later on today, see if I can generate a more coherent
> problem report.
I can demonstrate this 100% with NFS. "foo" is an NFS server:
mnm:/# mount foo:/ /mnt/foo
mnm:/# cd /mnt/foo/usr/src/linux
mnm:/mnt/foo/usr/src/linux# make dep
[ elided ]
mnm:/mnt/foo/usr/src/linux# cd /
mnm:/# umount -f /mnt/foo
umount2: Device or resource busy
umount: /mnt/foo: device is busy
mnm:/# lsof|grep foo
mnm:/# fuser /mnt/foo
mnm:/# fuser /mnt/foo/usr/src/linux
It seems you need to do quite a lot of I/O on the mounted fs to trigger
this. 'make dep' does the job.
The umount is failing because root->d_count == 2 in d_umount().
--
-akpm-