diff --git a/fs/overlayfs/super.c b/fs/overlayfs/super.c index 0e971ea97580..d727e56ef4b1 100644 --- a/fs/overlayfs/super.c +++ b/fs/overlayfs/super.c @@ -1381,7 +1381,8 @@ int ovl_fill_super(struct super_block *sb, struct fs_context *fc) int err; err = -EIO; - if (WARN_ON(fc->user_ns != current_user_ns())) + /* The fscontext fd may have been passed to another user namespace. */ + if (fc->user_ns != current_user_ns()) goto out_err; ovl_set_d_op(sb);