linux-next: manual merge of the vfs tree with the xfs tree

From: Stephen Rothwell
Date: Tue Nov 10 2015 - 18:22:37 EST

Hi Al,

Today's linux-next merge of the vfs tree got a conflict in:


between commit:

67d8e04e345e ("xfs: invalidate cached acl if set directly via xattr")

from the xfs tree and commit:

64669c648bc0 ("xattr handlers: Pass handler to operations instead of flags")

from the vfs tree.

I fixed it up (see below) and can carry the fix as necessary (no action
is required).

Stephen Rothwell sfr@xxxxxxxxxxxxxxxx

diff --cc fs/xfs/xfs_xattr.c
index 8294f86441bf,b1850e1489ef..000000000000
--- a/fs/xfs/xfs_xattr.c
+++ b/fs/xfs/xfs_xattr.c
@@@ -53,34 -54,12 +54,35 @@@ xfs_xattr_get(const struct xattr_handle
return asize;

+ struct inode *inode,
+ const char *name,
+ int xflags)
+ /*
+ * Invalidate any cached ACLs if the user has bypassed the ACL
+ * interface. We don't validate the content whatsoever so it is caller
+ * responsibility to provide data in valid format and ensure i_mode is
+ * consistent.
+ */
+ if (xflags & ATTR_ROOT) {
+ if (!strcmp(name, SGI_ACL_FILE))
+ forget_cached_acl(inode, ACL_TYPE_ACCESS);
+ else if (!strcmp(name, SGI_ACL_DEFAULT))
+ forget_cached_acl(inode, ACL_TYPE_DEFAULT);
+ }
static int
- xfs_xattr_set(struct dentry *dentry, const char *name, const void *value,
- size_t size, int flags, int xflags)
+ xfs_xattr_set(const struct xattr_handler *handler, struct dentry *dentry,
+ const char *name, const void *value, size_t size, int flags)
- int xflags = handler->flags;
- struct xfs_inode *ip = XFS_I(d_inode(dentry));
+ struct xfs_inode *ip = XFS_I(d_inode(dentry));
+ int error;
++ int xflags = handler->flags;

if (strcmp(name, "") == 0)
return -EINVAL;
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at
Please read the FAQ at