···832 if (err)833 goto out_dput;834835+ /*836+ * Try to remove POSIX ACL xattrs from workdir. We are good if:837+ *838+ * a) success (there was a POSIX ACL xattr and was removed)839+ * b) -ENODATA (there was no POSIX ACL xattr)840+ * c) -EOPNOTSUPP (POSIX ACL xattrs are not supported)841+ *842+ * There are various other error values that could effectively843+ * mean that the xattr doesn't exist (e.g. -ERANGE is returned844+ * if the xattr name is too long), but the set of filesystems845+ * allowed as upper are limited to "normal" ones, where checking846+ * for the above two errors is sufficient.847+ */848 err = vfs_removexattr(work, XATTR_NAME_POSIX_ACL_DEFAULT);849 if (err && err != -ENODATA && err != -EOPNOTSUPP)850 goto out_dput;