Re: [POC/RFC PATCH] overlayfs: constant inode numbers

2016-12-05 Thread Amir Goldstein
On Tue, Nov 29, 2016 at 11:49 PM, Miklos Szeredi wrote: > On Tue, Nov 29, 2016 at 1:03 PM, Amir Goldstein wrote: >> On Tue, Nov 29, 2016 at 1:34 PM, Amir Goldstein wrote: ... >>> Not sure that I understand what you are suggesting, but

Re: [POC/RFC PATCH] overlayfs: constant inode numbers

2016-12-05 Thread Amir Goldstein
On Tue, Nov 29, 2016 at 11:49 PM, Miklos Szeredi wrote: > On Tue, Nov 29, 2016 at 1:03 PM, Amir Goldstein wrote: >> On Tue, Nov 29, 2016 at 1:34 PM, Amir Goldstein wrote: ... >>> Not sure that I understand what you are suggesting, but I would be happy >>> to make the needed adjustments to

Re: [POC/RFC PATCH] overlayfs: constant inode numbers

2016-11-30 Thread Amir Goldstein
On Wed, Nov 30, 2016 at 5:05 PM, Amir Goldstein wrote: ... > For non-lowets entry, we can provide mount option 'readdir_ino'. > With readdir_ino, readdir pays a penalty of getxattr for any non-lowest > entry (either OVL_XATTR_FH or OVL_XATTR_INO). > Without readdir_ino,

Re: [POC/RFC PATCH] overlayfs: constant inode numbers

2016-11-30 Thread Amir Goldstein
On Wed, Nov 30, 2016 at 5:05 PM, Amir Goldstein wrote: ... > For non-lowets entry, we can provide mount option 'readdir_ino'. > With readdir_ino, readdir pays a penalty of getxattr for any non-lowest > entry (either OVL_XATTR_FH or OVL_XATTR_INO). > Without readdir_ino, readdir will get d_ino =

Re: [POC/RFC PATCH] overlayfs: constant inode numbers

2016-11-30 Thread Amir Goldstein
On Tue, Nov 29, 2016 at 11:49 PM, Miklos Szeredi wrote: > On Tue, Nov 29, 2016 at 1:03 PM, Amir Goldstein wrote: ... > I meant that we can unify OVL_XATTR_INO with "redirect/fh" > functionality and get something good out of it. > >> Perhaps you meant for

Re: [POC/RFC PATCH] overlayfs: constant inode numbers

2016-11-30 Thread Amir Goldstein
On Tue, Nov 29, 2016 at 11:49 PM, Miklos Szeredi wrote: > On Tue, Nov 29, 2016 at 1:03 PM, Amir Goldstein wrote: ... > I meant that we can unify OVL_XATTR_INO with "redirect/fh" > functionality and get something good out of it. > >> Perhaps you meant for non-dir: >> >> 5. If redirect_dir=fh,

Re: [POC/RFC PATCH] overlayfs: constant inode numbers

2016-11-29 Thread Miklos Szeredi
On Tue, Nov 29, 2016 at 1:03 PM, Amir Goldstein wrote: > On Tue, Nov 29, 2016 at 1:34 PM, Amir Goldstein wrote: >> On Tue, Nov 29, 2016 at 12:16 PM, Miklos Szeredi wrote: >>> On Mon, Nov 28, 2016 at 12:56 PM, Amir Goldstein

Re: [POC/RFC PATCH] overlayfs: constant inode numbers

2016-11-29 Thread Miklos Szeredi
On Tue, Nov 29, 2016 at 1:03 PM, Amir Goldstein wrote: > On Tue, Nov 29, 2016 at 1:34 PM, Amir Goldstein wrote: >> On Tue, Nov 29, 2016 at 12:16 PM, Miklos Szeredi wrote: >>> On Mon, Nov 28, 2016 at 12:56 PM, Amir Goldstein wrote: >> Not sure that I understand what you are suggesting, but I

Re: [POC/RFC PATCH] overlayfs: constant inode numbers

2016-11-29 Thread Amir Goldstein
On Tue, Nov 29, 2016 at 1:34 PM, Amir Goldstein wrote: > On Tue, Nov 29, 2016 at 12:16 PM, Miklos Szeredi wrote: >> On Mon, Nov 28, 2016 at 12:56 PM, Amir Goldstein wrote: >> >> [...] >> >> >>> Well, not sure if you noticed my

Re: [POC/RFC PATCH] overlayfs: constant inode numbers

2016-11-29 Thread Amir Goldstein
On Tue, Nov 29, 2016 at 1:34 PM, Amir Goldstein wrote: > On Tue, Nov 29, 2016 at 12:16 PM, Miklos Szeredi wrote: >> On Mon, Nov 28, 2016 at 12:56 PM, Amir Goldstein wrote: >> >> [...] >> >> >>> Well, not sure if you noticed my redirect_fh (rediect by file handle) work. >>> If differs from

Re: [POC/RFC PATCH] overlayfs: constant inode numbers

2016-11-29 Thread Amir Goldstein
On Tue, Nov 29, 2016 at 12:16 PM, Miklos Szeredi wrote: > On Mon, Nov 28, 2016 at 12:56 PM, Amir Goldstein wrote: > > [...] > > >> Well, not sure if you noticed my redirect_fh (rediect by file handle) work. >> If differs from redirect by path in 2 major

Re: [POC/RFC PATCH] overlayfs: constant inode numbers

2016-11-29 Thread Amir Goldstein
On Tue, Nov 29, 2016 at 12:16 PM, Miklos Szeredi wrote: > On Mon, Nov 28, 2016 at 12:56 PM, Amir Goldstein wrote: > > [...] > > >> Well, not sure if you noticed my redirect_fh (rediect by file handle) work. >> If differs from redirect by path in 2 major ways: >> 1. Like OVL_XATTR_INO, redirect

Re: [POC/RFC PATCH] overlayfs: constant inode numbers

2016-11-29 Thread Miklos Szeredi
On Mon, Nov 28, 2016 at 12:56 PM, Amir Goldstein wrote: > On Mon, Nov 28, 2016 at 12:35 PM, Miklos Szeredi wrote: >> On Mon, Nov 28, 2016 at 10:10 AM, Amir Goldstein wrote: [...] >>> I may be way off here, but why do you need to

Re: [POC/RFC PATCH] overlayfs: constant inode numbers

2016-11-29 Thread Miklos Szeredi
On Mon, Nov 28, 2016 at 12:56 PM, Amir Goldstein wrote: > On Mon, Nov 28, 2016 at 12:35 PM, Miklos Szeredi wrote: >> On Mon, Nov 28, 2016 at 10:10 AM, Amir Goldstein wrote: [...] >>> I may be way off here, but why do you need to lookup entry and get ino >>> from xattr at all? Wouldn't it be

Re: [POC/RFC PATCH] overlayfs: constant inode numbers

2016-11-28 Thread Amir Goldstein
On Mon, Nov 28, 2016 at 1:56 PM, Amir Goldstein wrote: > On Mon, Nov 28, 2016 at 12:35 PM, Miklos Szeredi wrote: >> On Mon, Nov 28, 2016 at 10:10 AM, Amir Goldstein wrote: > @@ -258,12 +268,12 @@ static int ovl_copy_up_locked(struct

Re: [POC/RFC PATCH] overlayfs: constant inode numbers

2016-11-28 Thread Amir Goldstein
On Mon, Nov 28, 2016 at 1:56 PM, Amir Goldstein wrote: > On Mon, Nov 28, 2016 at 12:35 PM, Miklos Szeredi wrote: >> On Mon, Nov 28, 2016 at 10:10 AM, Amir Goldstein wrote: > @@ -258,12 +268,12 @@ static int ovl_copy_up_locked(struct den > if (err) > goto

Re: [POC/RFC PATCH] overlayfs: constant inode numbers

2016-11-28 Thread Amir Goldstein
On Mon, Nov 28, 2016 at 12:35 PM, Miklos Szeredi wrote: > On Mon, Nov 28, 2016 at 10:10 AM, Amir Goldstein wrote: @@ -258,12 +268,12 @@ static int ovl_copy_up_locked(struct den if (err) goto out_cleanup; -

Re: [POC/RFC PATCH] overlayfs: constant inode numbers

2016-11-28 Thread Amir Goldstein
On Mon, Nov 28, 2016 at 12:35 PM, Miklos Szeredi wrote: > On Mon, Nov 28, 2016 at 10:10 AM, Amir Goldstein wrote: @@ -258,12 +268,12 @@ static int ovl_copy_up_locked(struct den if (err) goto out_cleanup; - inode_lock(newdentry->d_inode);

Re: [POC/RFC PATCH] overlayfs: constant inode numbers

2016-11-28 Thread Miklos Szeredi
On Mon, Nov 28, 2016 at 10:10 AM, Amir Goldstein wrote: >>> @@ -258,12 +268,12 @@ static int ovl_copy_up_locked(struct den >>> if (err) >>> goto out_cleanup; >>> >>> - inode_lock(newdentry->d_inode); >>> err = ovl_set_attr(newdentry,

Re: [POC/RFC PATCH] overlayfs: constant inode numbers

2016-11-28 Thread Miklos Szeredi
On Mon, Nov 28, 2016 at 10:10 AM, Amir Goldstein wrote: >>> @@ -258,12 +268,12 @@ static int ovl_copy_up_locked(struct den >>> if (err) >>> goto out_cleanup; >>> >>> - inode_lock(newdentry->d_inode); >>> err = ovl_set_attr(newdentry, stat); >>> -

Fwd: [POC/RFC PATCH] overlayfs: constant inode numbers

2016-11-28 Thread Amir Goldstein
[Re-adding CC list] On Sat, Nov 26, 2016 at 10:14 AM, Amir Goldstein wrote: > > On Friday, November 25, 2016, Miklos Szeredi wrote: >> >> Here's a really preliminary patch to allow inode numbers to be constant >> across >> copy ups and be consistent

Fwd: [POC/RFC PATCH] overlayfs: constant inode numbers

2016-11-28 Thread Amir Goldstein
[Re-adding CC list] On Sat, Nov 26, 2016 at 10:14 AM, Amir Goldstein wrote: > > On Friday, November 25, 2016, Miklos Szeredi wrote: >> >> Here's a really preliminary patch to allow inode numbers to be constant >> across >> copy ups and be consistent between st_ino and d_ino. >> >> It only works

[POC/RFC PATCH] overlayfs: constant inode numbers

2016-11-25 Thread Miklos Szeredi
Here's a really preliminary patch to allow inode numbers to be constant across copy ups and be consistent between st_ino and d_ino. It only works if underlying lower and upper dirs are all on the same filesystem (so there's only a single inode namespace to deal with). Performance of readdir is

[POC/RFC PATCH] overlayfs: constant inode numbers

2016-11-25 Thread Miklos Szeredi
Here's a really preliminary patch to allow inode numbers to be constant across copy ups and be consistent between st_ino and d_ino. It only works if underlying lower and upper dirs are all on the same filesystem (so there's only a single inode namespace to deal with). Performance of readdir is