ESTALE after cwd deleted by same NFS client
Colin Percival
cperciva at tarsnap.com
Wed Dec 21 04:00:47 UTC 2016
On 12/20/16 19:25, Don Lewis wrote:
>>> Colin Percival wrote:
>>>> In UFS there are checks for effnlink == 0 which result in e.g. ufs_lookup
>>>> returning ENOENT; would it make sense to add NREMOVED to struct nfsnode.n_flag
>>>> and check this in the appropriate nfs_* calls?
>
> It sort of seems like this should be handled at the vfs level. Once
> rmdir() succeeds, there should be no calls to the underlying fs code.
> Maybe add a deleted flag to the vnode ...
Or perhaps to the nfsnode, as I suggested a few emails ago?
> Dunno how ufs and zfs handle this, but the right thing happens:
I haven't looked at ZFS, but in UFS there are checks for effnlink == 0 which
result in calls returning ENOENT.
--
Colin Percival
Security Officer Emeritus, FreeBSD | The power to serve
Founder, Tarsnap | www.tarsnap.com | Online backups for the truly paranoid
More information about the freebsd-fs
mailing list