On Wed, Sep 14, 2022 at 12:23 PM Amir Goldstein <amir73il@xxxxxxxxx> wrote: > > On Wed, Sep 14, 2022 at 9:00 PM Hao Luo <haoluo@xxxxxxxxxx> wrote: > > > > On Tue, Sep 13, 2022 at 8:46 PM Amir Goldstein <amir73il@xxxxxxxxx> wrote: > > > > > > On Tue, Sep 13, 2022 at 11:33 PM Hao Luo <haoluo@xxxxxxxxxx> wrote: > > > > > > > > On Tue, Sep 13, 2022 at 11:54 AM Amir Goldstein <amir73il@xxxxxxxxx> wrote: [...] > > > There are probably some other limitations at the moment > > > related to pseudo filesystems that prevent them from being > > > used as upper and/or lower fs in overlayfs. > > > > > > We will need to check what those limitations are and whether > > > those limitations could be lifted for your specific use case. > > > > > > > How can we approach this? Maybe I can send my patch that adds tmp dir, > > tmp files and xattr, attr to upstream as RFC, so you can take a look? > > > > I don't think I need your fs to test. > The only thing special in this setup as far as I can tell is the dynamic > cgroupfs (or cgroup2?) lower dirs. > > IIUC, everything worked for you except for oddities related to > lower directories not appearing and not disappearing from the union. > Is that correct? is that the only thing that you need a fix for? > Yes, that's correct. > > > > Further, directory B could disappear from lower. When that happens, I > > > > think there are two possible behaviors: > > > > - make 'file' disappear from union as well; > > > > - make 'file' and its directory accessible as well. > > > > > > > > In behavior 1, it will look like > > > > $ tree union > > > > . > > > > └── A > > > > └── lower1 > > > > > > > > In behavior 2, it will look like > > > > $ tree union > > > > . > > > > └── A > > > > ├── B > > > > │ └── file > > > > └── lower1 > > > > > > > > IMHO, behavior 1 works better in my use case. But if the FS experts > > > > think behavior 2 makes more sense, I can work around. > > > > > > > > > > Something that I always wanted to try is to get rid of the duplicated > > > upper fs hierarchy. > > > > > > It's a bit complicated to explain the details, but if your use case > > > does not involve any directory renames(?), then the upper path > > > for the merge directories can be index based and not hierarchical. > > > > > > > Yeah, I don't expect directory renaming. But I can't say if there is > > anyone trying to do that by accident, or by bad intention. > > > > Your fs will return an error for rename if you did not implement it. > > Anyway, if you can accept behavior 2, it is much more simple. > This other idea is very vague and not simple, so better not risk it. > > If you confirm that you only need to get uptodate view of > lower dirs in union, then I will look for the patches that I have > and see if they can help you. > Yes, I acknowledge that behavior 2 works for me.