[PATCH] Set the DE_UPDATE flag on the directory node on msdosfs

Kostik Belousov kostikbel at gmail.com
Fri Jun 3 10:59:11 UTC 2011


On Fri, Jun 03, 2011 at 06:25:07PM +1000, Bruce Evans wrote:
> On Fri, 3 Jun 2011, Kevin Lo wrote:
> 
> >Kevin Lo wrote:
> >>If you try to NFS export a fat32 formatted external usb devices,
> >>you'll notice if a new file is created, you won't see that file
> >>on the NFS client. The reason is msdosfs(5) doesn't change the
> >>modify time of the directory when an entry is created.
> >>
> >>Attached is a patch against HEAD that sets DE_UPDATE on the
> >>directory node in both createde() and removede().
> >>Please test it, thanks.
> 
> It breaks compatibility with MSDOS and Windows.
> 
> No correct fix is evident.  ffs maintains the generation count va_filerev
> which should help, but:
> - ffs only increments it when a file mtime is updated.
> - msdosfs doesn't properly maintain it (it initializes to a non-random
>   number related to the current time when the vnode is initialized, but
>   never increments it).
> - the old nfs client doesn't use it
> - the new nfs client does use it for v4.  I don't know if this use is
>   sufficient (it has to get it from the server to work for this).
It seems that reporter forgot to mention this, but the problem was
reported for the _linux_ NFS client mounting FAT share from the FreeBSD
server.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 196 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-fs/attachments/20110603/63d17479/attachment.pgp


More information about the freebsd-fs mailing list