Re: Question about ovl_dentry_weird

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

 



On Thu, Mar 30, 2017 at 11:22 AM, zhangyi (F) <yi.zhang@xxxxxxxxxx> wrote:
>
>
> On 2017/3/30 15:03, Amir Goldstein wrote:
>>> Hi:
>>> Current overlayfs does not support underlying filesystem which have "weird" d_flags (like DCACHE_OP_HASH,
>>> DCACHE_OP_COMPARE, DCACHE_OP_REVALIDATE, etc). So we cannot support fs have it's own d_hash, d_compare and
>>> d_revalidate functions.
>>
>> Not accurate. d_revalidate() is allowed for lower, but not for upper
>> (ovl_dentry_remote()).
>>
>
> Thank you for the corrections, I see it in the ovl_lower_dir().
>
>>>
>>> Do you have a TODO plan to support it in a future version ?
>>>
>>
>> Which of the constrains is relevant to your use case? (which of the flags)
>> Do you need it for lower / upper or both?
>> Is it a proprietary file system of a known one you need to support?
>>
>
> We want to use d_hash(), d_compare() and d_revalidate() to our own proprietary file system
> (not a remote fs, not widely used, and it's file name is case-insensitive) for lower
> and upper both, and we also need to use d_revalidate() to do some special handling.
>
> I see there were many other rarely used(?)file systems also use d_hash(), d_compare(),
> d_revalidate() in kernel(such as hfs, jfs, fat, etc.), they are also not supportted by ovlfs.
> So I would like to know are these file systems need to support in future ?
>

I see you are not the first that requested this feature:
https://lkml.org/lkml/2014/10/28/1049

The solution for the general case is (too?) complex.

However, for the case of all layers on the same fs, where d_hash()
d_compare() are consistent
across all layers, I guess this is doable and even not that hard to do.

The 'samefs' case is an interesting case, because it is commonly used
by container
managers (e.g. dockerd).

I've just posted the first overlayfs feature that depends on 'samefs'
https://marc.info/?l=linux-unionfs&m=149079818122019&w=2
and I have plans to develop more features for 'samefs' case (e.g. NFS export).

I don't mind writing a POC patch for you to test your use case, but I
will ask you
to first write a test which mixes case insensitive names in
lower/upper, so this patch
can be properly tested.
An xfstest overlay test is greatly preferred.
I can test it with overlayfs over vfat.

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




[Index of Archives]     [Linux Filesystems Devel]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux