Re: [PATCH] Fix __d_path for lazy unmounts

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



john.johansen@xxxxxxxxxxxxx wrote:
> From: John Johansen <john.johansen@xxxxxxxxxxxxx>
> 
> When __d_path() hits a lazily unmounted mount point, it tries to prepend
> the name of the lazily unmounted dentry to the path name.  It gets this wrong,
> and also overwrites the slash that separates the name from the following
> pathname component. This patch fixes that; if a process was in directory
> /foo/bar and /foo got lazily unmounted, the old result was ``foobar'' (note the
> missing slash), while the new result with this patch is ``/foo/bar''.
> 
It seems I left out the basic test for this.  From a shell you can do

> mkdir /tmp/foo
> sudo mount --bind /home/jj /tmp/foo   #substitute /home/jj as you wish
> cd /tmp/foo/bar       # assumes /home/jj/bar exists
> /bin/pwd
/tmp/foo/bar
> sudo umount -l /tmp/foo
> /bin/pwd
jjbar
> > cd ..
> > /bin/pwd
jj


--
To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [Samba]     [Device Mapper]     [CEPH Development]
  Powered by Linux