Re: [PATCH 05/13] ovl: During copy up, first copy up metadata and then data

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

 



On Thu, Oct 26, 2017 at 08:42:08AM +0300, Amir Goldstein wrote:
> On Wed, Oct 25, 2017 at 10:09 PM, Vivek Goyal <vgoyal@xxxxxxxxxx> wrote:
> > Just a little re-ordering of code. This helps with next patch where after
> > copying up metadata, we skip data copying step, if needed.
> >
> > Signed-off-by: Vivek Goyal <vgoyal@xxxxxxxxxx>
> 
> Please add
> Reviewed-by: Amir Goldstein <amir73il@xxxxxxxxx>
> 
> if you post again with no changes to patch,
> so help me avoid re-review

Sure will do. This patch had changed slightly (I started returing err
instead of 0). That's probably I did not include it. 

Vivek

> 
> Thanks
> 
> > ---
> >  fs/overlayfs/copy_up.c | 33 ++++++++++++++++-----------------
> >  1 file changed, 16 insertions(+), 17 deletions(-)
> >
> > diff --git a/fs/overlayfs/copy_up.c b/fs/overlayfs/copy_up.c
> > index 8a8f538..4f580ec 100644
> > --- a/fs/overlayfs/copy_up.c
> > +++ b/fs/overlayfs/copy_up.c
> > @@ -445,6 +445,21 @@ static int ovl_copy_up_inode(struct ovl_copy_up_ctx *c, struct dentry *temp)
> >  {
> >         int err;
> >
> > +       err = ovl_copy_xattr(c->lowerpath.dentry, temp);
> > +       if (err)
> > +               return err;
> > +
> > +       /*
> > +        * Store identifier of lower inode in upper inode xattr to
> > +        * allow lookup of the copy up origin inode.
> > +        *
> > +        */
> > +       if (c->origin) {
> > +               err = ovl_set_origin(c->dentry, c->lowerpath.dentry, temp);
> > +               if (err)
> > +                       return err;
> > +       }
> > +
> >         if (S_ISREG(c->stat.mode)) {
> >                 struct path upperpath;
> >
> > @@ -457,27 +472,11 @@ static int ovl_copy_up_inode(struct ovl_copy_up_ctx *c, struct dentry *temp)
> >                         return err;
> >         }
> >
> > -       err = ovl_copy_xattr(c->lowerpath.dentry, temp);
> > -       if (err)
> > -               return err;
> > -
> >         inode_lock(temp->d_inode);
> >         err = ovl_set_attr(temp, &c->stat);
> >         inode_unlock(temp->d_inode);
> > -       if (err)
> > -               return err;
> > -
> > -       /*
> > -        * Store identifier of lower inode in upper inode xattr to
> > -        * allow lookup of the copy up origin inode.
> > -        */
> > -       if (c->origin) {
> > -               err = ovl_set_origin(c->dentry, c->lowerpath.dentry, temp);
> > -               if (err)
> > -                       return err;
> > -       }
> >
> > -       return 0;
> > +       return err;
> >  }
> >
> >  static int ovl_copy_up_locked(struct ovl_copy_up_ctx *c)
> > --
> > 2.5.5
> >
--
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