ovl: pass string to ovl_parse_layer()
authorChristian Brauner <brauner@kernel.org>
Fri, 5 Jul 2024 01:15:08 +0000 (09:15 +0800)
committerChristian Brauner <brauner@kernel.org>
Fri, 23 Aug 2024 17:56:38 +0000 (19:56 +0200)
So it can be used for parsing the Opt_lowerdir.

Signed-off-by: Zhihao Cheng <chengzhihao1@huawei.com>
Link: https://lore.kernel.org/r/20240705011510.794025-2-chengzhihao1@huawei.com
Signed-off-by: Christian Brauner <brauner@kernel.org>
fs/overlayfs/params.c

index 4860fcc4611bb766547218d1baa9fd802f24f547..52e3860973b7ee52cb267fef40ac3cd850ac7558 100644 (file)
@@ -365,10 +365,9 @@ static void ovl_add_layer(struct fs_context *fc, enum ovl_opt layer,
        }
 }
 
-static int ovl_parse_layer(struct fs_context *fc, struct fs_parameter *param,
-                          enum ovl_opt layer)
+static int ovl_parse_layer(struct fs_context *fc, const char *layer_name, enum ovl_opt layer)
 {
-       char *name = kstrdup(param->string, GFP_KERNEL);
+       char *name = kstrdup(layer_name, GFP_KERNEL);
        bool upper = (layer == Opt_upperdir || layer == Opt_workdir);
        struct path path;
        int err;
@@ -582,7 +581,7 @@ static int ovl_parse_param(struct fs_context *fc, struct fs_parameter *param)
        case Opt_datadir_add:
        case Opt_upperdir:
        case Opt_workdir:
-               err = ovl_parse_layer(fc, param, opt);
+               err = ovl_parse_layer(fc, param->string, opt);
                break;
        case Opt_default_permissions:
                config->default_permissions = true;