Re: [experimental PATCH] ovl: get rid of d_real()
From: Miklos Szeredi
Date: Fri Sep 15 2017 - 13:11:20 EST
On Fri, Sep 15, 2017 at 4:07 PM, Al Viro <viro@xxxxxxxxxxxxxxxxxx> wrote:
> On Fri, Sep 15, 2017 at 03:58:05PM +0200, Miklos Szeredi wrote:
>> And here's the prototype. Poof, d_real() is gone.
>>
>> It definitely has got problems, but just maybe it can be made better than the
>> current mess. It *does* solve the ro-rw inconsistency for normal reads (not
>> mmaps).
>
> ... and makes for mind-boggling amount of opening/closing the files on underlying
> filesystem. Doing that on sodding ->read_iter() is simply wrong.
I said it is a prototype. Caching the open files on the underlying fs
would solve that.
> And you are
> using the wrong credentials for those opens, anyway - it should be creds of opener,
> not reader.
Actually it should be credentials of mounter, as is now done
consistently across overlayfs.
And a bunch of other issues, probably.
Thanks,
Miklos