Re: [PATCH v15 01/30] ovl: Pass argument to ovl_get_inode() in a structure

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

 



On Mon, May 7, 2018 at 8:40 PM, Vivek Goyal <vgoyal@xxxxxxxxxx> wrote:
> ovl_get_inode() right now has 5 parameters. Soon this patch series will
> add 2 more and suddenly argument list starts looking too long.
>
> Hence pass arguments to ovl_get_inode() in a structure and it looks
> little cleaner.
>
> Signed-off-by: Vivek Goyal <vgoyal@xxxxxxxxxx>

Reviewed-by: Amir Goldstein <amir73il@xxxxxxxxx>

After fixing some nits

> ---
>  fs/overlayfs/export.c    |  4 +++-
>  fs/overlayfs/inode.c     | 19 ++++++++++---------
>  fs/overlayfs/namei.c     |  6 ++++--
>  fs/overlayfs/overlayfs.h |  4 +---
>  fs/overlayfs/ovl_entry.h |  8 ++++++++
>  5 files changed, 26 insertions(+), 15 deletions(-)
>
> diff --git a/fs/overlayfs/export.c b/fs/overlayfs/export.c
> index 425a94672300..867946adcbc5 100644
> --- a/fs/overlayfs/export.c
> +++ b/fs/overlayfs/export.c
> @@ -300,12 +300,14 @@ static struct dentry *ovl_obtain_alias(struct super_block *sb,
>         struct dentry *dentry;
>         struct inode *inode;
>         struct ovl_entry *oe;
> +       struct ovl_inode_params oip = {sb, NULL, lowerpath, index, !!lower};

{
   .index = index,
...

>
>         /* We get overlay directory dentries with ovl_lookup_real() */
>         if (d_is_dir(upper ?: lower))
>                 return ERR_PTR(-EIO);
>
> -       inode = ovl_get_inode(sb, dget(upper), lowerpath, index, !!lower);
> +       oip.upperdentry = dget(upper);
> +       inode = ovl_get_inode(&oip);
>         if (IS_ERR(inode)) {
>                 dput(upper);
>                 return ERR_CAST(inode);
> diff --git a/fs/overlayfs/inode.c b/fs/overlayfs/inode.c
> index 7abcf96e94fc..2fe9538fffc9 100644
> --- a/fs/overlayfs/inode.c
> +++ b/fs/overlayfs/inode.c
> @@ -792,15 +792,16 @@ static bool ovl_hash_bylower(struct super_block *sb, struct dentry *upper,
>         return true;
>  }
>
> -struct inode *ovl_get_inode(struct super_block *sb, struct dentry *upperdentry,
> -                           struct ovl_path *lowerpath, struct dentry *index,
> -                           unsigned int numlower)
> +struct inode *ovl_get_inode(struct ovl_inode_params *oip)

IMO, sb should not be part of ovl_inode_params
it should be passed as a separate arg and ovl_inode_params
should be passed to ovl_inode_init() as well.

Thanks,
Amir.
--
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