diff options
author | Ilya Dryomov | 2018-09-28 15:38:34 +0200 |
---|---|---|
committer | Ilya Dryomov | 2018-10-22 10:28:21 +0200 |
commit | 33165d472310262d8c79c7e4d1a17dc60cea7e35 (patch) | |
tree | bf498d59251d10a2f8c603ef28200d7d42d6bee4 /fs/ceph/xattr.c | |
parent | 24639ce56040a8ea890ad8836068c1ad8bd177c7 (diff) |
libceph: introduce ceph_pagelist_alloc()
struct ceph_pagelist cannot be embedded into anything else because it
has its own refcount. Merge allocation and initialization together.
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
Diffstat (limited to 'fs/ceph/xattr.c')
-rw-r--r-- | fs/ceph/xattr.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/fs/ceph/xattr.c b/fs/ceph/xattr.c index 5cc8b94f8206..316f6ad10644 100644 --- a/fs/ceph/xattr.c +++ b/fs/ceph/xattr.c @@ -951,11 +951,10 @@ static int ceph_sync_setxattr(struct inode *inode, const char *name, if (size > 0) { /* copy value into pagelist */ - pagelist = kmalloc(sizeof(*pagelist), GFP_NOFS); + pagelist = ceph_pagelist_alloc(GFP_NOFS); if (!pagelist) return -ENOMEM; - ceph_pagelist_init(pagelist); err = ceph_pagelist_append(pagelist, value, size); if (err) goto out; |