Re: [PATCH 0/3] VFS: name lookup improvements.

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

 



On Thu, Nov 09 2017, Jeff Layton wrote:

> On Thu, 2017-11-09 at 18:20 +1100, NeilBrown wrote:
>> These three patches address two issues: d_weak_revalidate and
>> path_mountpoint lookups.
>> 
>> The former is poorly defined and doesn't actually do the one thing
>> that it would be useful for it to do.  So the nfs implemention
>> is improved, the 9p one discarded, and the documentation clarified.
>> 
>> Given this change and recent change to follow_automount() the
>> mountpoint path lookup functions are no longer needed.  The regular
>> path look functions are quite sufficient.
>> The second two patches remove this with detailed explanation of why
>> it is OK.
>> 
>> Thanks,
>> NeilBrown
>> 
>> 
>> ---
>> 
>> NeilBrown (3):
>>       VFS/nfs/9p: revise meaning of d_weak_invalidate.
>>       VFS: remove user_path_mountpoint_at()
>>       VFS / autofs4: remove kern_path_mountpoint()
>> 
>> 
>>  Documentation/filesystems/porting |    5 +
>>  Documentation/filesystems/vfs.txt |   11 +--
>>  fs/9p/vfs_dentry.c                |    1 
>>  fs/autofs4/dev-ioctl.c            |    5 -
>>  fs/internal.h                     |    1 
>>  fs/namei.c                        |  150 -------------------------------------
>>  fs/namespace.c                    |    2 
>>  fs/nfs/dir.c                      |   60 ++-------------
>>  include/linux/namei.h             |    1 
>>  9 files changed, 24 insertions(+), 212 deletions(-)
>> 
>> --
>> Signature
>> 
>
> I love that diffstat and I think the patches and the logic behind them
> look reasonable. I'm the one that added d_weak_revalidate and while it
> did fix a problem at the time, it has always seemed a bit of an odd
> d_op.
>
> Your patch does make me wonder if we should consider merging
> d_weak_revalidate and d_revalidate back together, and simply require all
> the d_revalidate ops vet the flags more thoroughly.

This boils down to adding

 if (flags & LOOKUP_JUMPED)
 	return 1;

to the front of almost every d_revalidate function.
I'm probably in favour of that, but it isn't an obvious win.
I can certainly offer it as a follow-on patch so we can see
exactly the impact.

Thanks,
NeilBrown

Attachment: signature.asc
Description: PGP signature


[Index of Archives]     [Linux Filesystem Development]     [Linux USB Development]     [Linux Media Development]     [Video for Linux]     [Linux NILFS]     [Linux Audio Users]     [Yosemite Info]     [Linux SCSI]

  Powered by Linux