diff options
author | Yan, Zheng <zyan@redhat.com> | 2014-11-12 01:00:43 -0500 |
---|---|---|
committer | Ilya Dryomov <idryomov@redhat.com> | 2014-12-17 12:09:51 -0500 |
commit | d74b50bed037794135cb5a4e7418ad71d9848ce1 (patch) | |
tree | 6f202861df8a6d21fd6ddb7c8823e49c744a2970 /include/linux | |
parent | 7e868b6eff21edb59eb6a723dfd18761476ddb46 (diff) |
libceph: add SETXATTR/CMPXATTR osd operations support
Signed-off-by: Yan, Zheng <zyan@redhat.com>
Reviewed-by: Ilya Dryomov <idryomov@redhat.com>
Diffstat (limited to 'include/linux')
-rw-r--r-- | include/linux/ceph/osd_client.h | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/include/linux/ceph/osd_client.h b/include/linux/ceph/osd_client.h index 03aeb27fcc69..bcf9c2180ea5 100644 --- a/include/linux/ceph/osd_client.h +++ b/include/linux/ceph/osd_client.h | |||
@@ -87,6 +87,13 @@ struct ceph_osd_req_op { | |||
87 | struct ceph_osd_data osd_data; | 87 | struct ceph_osd_data osd_data; |
88 | } extent; | 88 | } extent; |
89 | struct { | 89 | struct { |
90 | __le32 name_len; | ||
91 | __le32 value_len; | ||
92 | __u8 cmp_op; /* CEPH_OSD_CMPXATTR_OP_* */ | ||
93 | __u8 cmp_mode; /* CEPH_OSD_CMPXATTR_MODE_* */ | ||
94 | struct ceph_osd_data osd_data; | ||
95 | } xattr; | ||
96 | struct { | ||
90 | const char *class_name; | 97 | const char *class_name; |
91 | const char *method_name; | 98 | const char *method_name; |
92 | struct ceph_osd_data request_info; | 99 | struct ceph_osd_data request_info; |
@@ -295,6 +302,9 @@ extern void osd_req_op_cls_response_data_pages(struct ceph_osd_request *, | |||
295 | extern void osd_req_op_cls_init(struct ceph_osd_request *osd_req, | 302 | extern void osd_req_op_cls_init(struct ceph_osd_request *osd_req, |
296 | unsigned int which, u16 opcode, | 303 | unsigned int which, u16 opcode, |
297 | const char *class, const char *method); | 304 | const char *class, const char *method); |
305 | extern int osd_req_op_xattr_init(struct ceph_osd_request *osd_req, unsigned int which, | ||
306 | u16 opcode, const char *name, const void *value, | ||
307 | size_t size, u8 cmp_op, u8 cmp_mode); | ||
298 | extern void osd_req_op_watch_init(struct ceph_osd_request *osd_req, | 308 | extern void osd_req_op_watch_init(struct ceph_osd_request *osd_req, |
299 | unsigned int which, u16 opcode, | 309 | unsigned int which, u16 opcode, |
300 | u64 cookie, u64 version, int flag); | 310 | u64 cookie, u64 version, int flag); |