From: Chandan Rajendra <chandan@linux.vnet.ibm.com>
To: Amir Goldstein <amir73il@gmail.com>
Cc: overlayfs <linux-unionfs@vger.kernel.org>,
Miklos Szeredi <miklos@szeredi.hu>
Subject: Re: [PATCH V2] ovl: Allocate anonymous devs for lowerdirs
Date: Fri, 30 Jun 2017 16:28:29 +0530 [thread overview]
Message-ID: <2041782.HUJ34Am32x@localhost.localdomain> (raw)
In-Reply-To: <2369642.ypcN4zZqWi@localhost.localdomain>
On Tuesday, June 27, 2017 1:01:17 PM IST Chandan Rajendra wrote:
> On Friday, June 23, 2017 7:04:57 PM IST Amir Goldstein wrote:
> > On Fri, Jun 23, 2017 at 2:01 PM, Chandan Rajendra
> > <chandan@linux.vnet.ibm.com> wrote:
> > > For stat(2) on lowerdir non-dir entries in non-samefs case, this commit
> > > provides unique values for st_dev. The unique values are obtained by
> > > allocating anonymous bdevs for each of the lowerdirs in the overlayfs
> > > instance.
> > >
> > > Signed-off-by: Chandan Rajendra <chandan@linux.vnet.ibm.com>
> > > ---
> >
> > Reviewed-by: Amir Goldstein <amir73il@gmail.com>
> > Tested-by: Amir Goldstein <amir73il@gmail.com>
> >
> > Miklos,
> >
> > I re-created the branch ovl-constino [1] on top of ovl-hardlinks and without
> > the consistent dino patches.
> >
> > Applied Chandan's patch and resolved conflicts with my patches.
> > Then, applied my patch to relax constant st_ino for non-samefs on stat(2).
> >
> > Mutilated unionmount-testsuite layers check [2] to get over the unexpected
> > pseudo dev and now tests pass for non samefs including constant ino
> > verification and persistent ino verification for non-dir.
> >
> > Chandan,
> >
> > If you can fix the mutilated unionmount-testsuite check_layer(), that would be
> > nice.
> >
>
Hi Amir,
In dentry.created(), we have
self.__upper = on_upper or not inode or inode.filetype() == "d"
Do you happen to know why we mark the dentry as being present on the upperdir
filesystem when "inode" evaluates to false?
Consider the case of /lowerdir/a/foo101 file being created in
set_up.py. ctx.record_file() ends up creating a new 'dentry' object with no
inode associated with it. Hence self.__upper is set to the value True. Isn't
this incorrect since the file foo101 is actually being created on lowerdir?
I added the following new test scenario to check_layer() code,
elif dentry.on_upper() and not self.config().is_samefs() and dev != self.upper_fs():
raise TestError(name + ": Upperdir file has incorrect dev id")
In the above code snippet, dentry.on_upper() incorrectly evaluates to True and
hence we end up raising an exception.
Maybe dentry.created should have the following statement instead,
self.__upper = on_upper or (inode and inode.filetype() == "d")
--
chandan
next prev parent reply other threads:[~2017-06-30 10:58 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-06-23 11:01 [PATCH V2] ovl: Allocate anonymous devs for lowerdirs Chandan Rajendra
2017-06-23 13:34 ` Amir Goldstein
2017-06-23 13:42 ` Chandan Rajendra
2017-06-27 7:31 ` Chandan Rajendra
2017-06-27 9:04 ` Amir Goldstein
2017-06-30 10:58 ` Chandan Rajendra [this message]
2017-06-30 14:50 ` Amir Goldstein
2017-07-14 9:38 ` Miklos Szeredi
2017-07-15 14:27 ` Chandan Rajendra
2017-07-24 9:17 ` [PATCH V3] " Chandan Rajendra
2017-07-27 6:24 ` Chandan Rajendra
2017-09-21 17:46 ` Amir Goldstein
2017-09-22 2:40 ` Chandan Rajendra
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=2041782.HUJ34Am32x@localhost.localdomain \
--to=chandan@linux.vnet.ibm.com \
--cc=amir73il@gmail.com \
--cc=linux-unionfs@vger.kernel.org \
--cc=miklos@szeredi.hu \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.