ceph: Switch to generic xattr handlers
authorAndreas Gruenbacher <agruenba@redhat.com>
Wed, 13 Apr 2016 22:30:17 +0000 (00:30 +0200)
committerAl Viro <viro@zeniv.linux.org.uk>
Sat, 23 Apr 2016 19:41:30 +0000 (15:41 -0400)
commit2cdeb1e472cf03dec4dc614623fd2e6bd8e5f271
tree1a06b9392263f237d670f19bace3945107efd3a0
parenta26feccaba296bd0ae410eabce79cb3443c8a701
ceph: Switch to generic xattr handlers

Add a catch-all xattr handler at the end of ceph_xattr_handlers.  Check
for valid attribute names there, and remove those checks from
__ceph_{get,set,remove}xattr instead.  No "system.*" xattrs need to be
handled by the catch-all handler anymore.

The set xattr handler is called with a NULL value to indicate that the
attribute should be removed; __ceph_setxattr already handles that case
correctly (ceph_set_acl could already calling __ceph_setxattr with a NULL
value).

Move the check for snapshots from ceph_{set,remove}xattr into
__ceph_{set,remove}xattr.  With that, ceph_{get,set,remove}xattr can be
replaced with the generic iops.

Signed-off-by: Andreas Gruenbacher <agruenba@redhat.com>
Signed-off-by: "Yan, Zheng" <zyan@redhat.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
fs/ceph/dir.c
fs/ceph/inode.c
fs/ceph/super.h
fs/ceph/xattr.c