Merge tag 'ras_for_3.20' of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp into...
[cascardo/linux.git] / include / linux / ceph / osd_client.h
index 03aeb27..61b19c4 100644 (file)
@@ -86,6 +86,13 @@ struct ceph_osd_req_op {
                        u32 truncate_seq;
                        struct ceph_osd_data osd_data;
                } extent;
+               struct {
+                       u32 name_len;
+                       u32 value_len;
+                       __u8 cmp_op;       /* CEPH_OSD_CMPXATTR_OP_* */
+                       __u8 cmp_mode;     /* CEPH_OSD_CMPXATTR_MODE_* */
+                       struct ceph_osd_data osd_data;
+               } xattr;
                struct {
                        const char *class_name;
                        const char *method_name;
@@ -295,6 +302,9 @@ extern void osd_req_op_cls_response_data_pages(struct ceph_osd_request *,
 extern void osd_req_op_cls_init(struct ceph_osd_request *osd_req,
                                        unsigned int which, u16 opcode,
                                        const char *class, const char *method);
+extern int osd_req_op_xattr_init(struct ceph_osd_request *osd_req, unsigned int which,
+                                u16 opcode, const char *name, const void *value,
+                                size_t size, u8 cmp_op, u8 cmp_mode);
 extern void osd_req_op_watch_init(struct ceph_osd_request *osd_req,
                                        unsigned int which, u16 opcode,
                                        u64 cookie, u64 version, int flag);
@@ -318,7 +328,8 @@ extern struct ceph_osd_request *ceph_osdc_new_request(struct ceph_osd_client *,
                                      struct ceph_file_layout *layout,
                                      struct ceph_vino vino,
                                      u64 offset, u64 *len,
-                                     int num_ops, int opcode, int flags,
+                                     unsigned int which, int num_ops,
+                                     int opcode, int flags,
                                      struct ceph_snap_context *snapc,
                                      u32 truncate_seq, u64 truncate_size,
                                      bool use_mempool);