Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e1ff3dd1 authored by Miklos Szeredi's avatar Miklos Szeredi
Browse files

ovl: fix workdir creation



Workdir creation fails in latest kernel.

Fix by allowing EOPNOTSUPP as a valid return value from
vfs_removexattr(XATTR_NAME_POSIX_ACL_*).  Upper filesystem may not support
ACL and still be perfectly able to support overlayfs.

Reported-by: default avatarMartin Ziegler <ziegler@uni-freiburg.de>
Signed-off-by: default avatarMiklos Szeredi <mszeredi@redhat.com>
Fixes: c11b9fdd ("ovl: remove posix_acl_default from workdir")
Cc: <stable@vger.kernel.org>
parent 026e5e0c
Loading
Loading
Loading
Loading
+2 −2
Original line number Original line Diff line number Diff line
@@ -835,11 +835,11 @@ static struct dentry *ovl_workdir_create(struct vfsmount *mnt,
			goto out_dput;
			goto out_dput;


		err = vfs_removexattr(work, XATTR_NAME_POSIX_ACL_DEFAULT);
		err = vfs_removexattr(work, XATTR_NAME_POSIX_ACL_DEFAULT);
		if (err && err != -ENODATA)
		if (err && err != -ENODATA && err != -EOPNOTSUPP)
			goto out_dput;
			goto out_dput;


		err = vfs_removexattr(work, XATTR_NAME_POSIX_ACL_ACCESS);
		err = vfs_removexattr(work, XATTR_NAME_POSIX_ACL_ACCESS);
		if (err && err != -ENODATA)
		if (err && err != -ENODATA && err != -EOPNOTSUPP)
			goto out_dput;
			goto out_dput;


		/* Clear any inherited mode bits */
		/* Clear any inherited mode bits */