Loading fs/ceph/ceph_fs.h +1 −1 Original line number Diff line number Diff line Loading @@ -38,7 +38,7 @@ #define CEPH_OSD_PROTOCOL 8 /* cluster internal */ #define CEPH_MDS_PROTOCOL 9 /* cluster internal */ #define CEPH_MON_PROTOCOL 5 /* cluster internal */ #define CEPH_OSDC_PROTOCOL 23 /* server/client */ #define CEPH_OSDC_PROTOCOL 24 /* server/client */ #define CEPH_MDSC_PROTOCOL 32 /* server/client */ #define CEPH_MONC_PROTOCOL 15 /* server/client */ Loading fs/ceph/osd_client.c +3 −13 Original line number Diff line number Diff line Loading @@ -199,11 +199,9 @@ struct ceph_osd_request *ceph_osdc_new_request(struct ceph_osd_client *osdc, struct ceph_osd_request_head *head; struct ceph_osd_op *op; void *p; int do_trunc = truncate_seq && (off + *plen > truncate_size); int num_op = 1 + do_sync + do_trunc; int num_op = 1 + do_sync; size_t msg_size = sizeof(*head) + num_op*sizeof(*op); int err, i; u64 prevofs; if (use_mempool) { req = mempool_alloc(osdc->req_mempool, GFP_NOFS); Loading Loading @@ -268,22 +266,14 @@ struct ceph_osd_request *ceph_osdc_new_request(struct ceph_osd_client *osdc, req->r_request->hdr.data_len = cpu_to_le32(*plen); op->payload_len = cpu_to_le32(*plen); } op->extent.truncate_size = cpu_to_le64(truncate_size); op->extent.truncate_seq = cpu_to_le32(truncate_seq); /* fill in oid */ head->object_len = cpu_to_le32(req->r_oid_len); memcpy(p, req->r_oid, req->r_oid_len); p += req->r_oid_len; /* additional ops */ if (do_trunc) { op++; op->op = cpu_to_le16(opcode == CEPH_OSD_OP_READ ? CEPH_OSD_OP_MASKTRUNC : CEPH_OSD_OP_SETTRUNC); op->trunc.truncate_seq = cpu_to_le32(truncate_seq); prevofs = le64_to_cpu((op-1)->extent.offset); op->trunc.truncate_size = cpu_to_le64(truncate_size - (off-prevofs)); } if (do_sync) { op++; op->op = cpu_to_le16(CEPH_OSD_OP_STARTSYNC); Loading fs/ceph/rados.h +2 −4 Original line number Diff line number Diff line Loading @@ -304,15 +304,13 @@ struct ceph_osd_op { union { struct { __le64 offset, length; __le64 truncate_size; __le32 truncate_seq; } __attribute__ ((packed)) extent; struct { __le32 name_len; __le32 value_len; } __attribute__ ((packed)) xattr; struct { __le64 truncate_size; __le32 truncate_seq; } __attribute__ ((packed)) trunc; struct { __u8 class_len; __u8 method_len; Loading Loading
fs/ceph/ceph_fs.h +1 −1 Original line number Diff line number Diff line Loading @@ -38,7 +38,7 @@ #define CEPH_OSD_PROTOCOL 8 /* cluster internal */ #define CEPH_MDS_PROTOCOL 9 /* cluster internal */ #define CEPH_MON_PROTOCOL 5 /* cluster internal */ #define CEPH_OSDC_PROTOCOL 23 /* server/client */ #define CEPH_OSDC_PROTOCOL 24 /* server/client */ #define CEPH_MDSC_PROTOCOL 32 /* server/client */ #define CEPH_MONC_PROTOCOL 15 /* server/client */ Loading
fs/ceph/osd_client.c +3 −13 Original line number Diff line number Diff line Loading @@ -199,11 +199,9 @@ struct ceph_osd_request *ceph_osdc_new_request(struct ceph_osd_client *osdc, struct ceph_osd_request_head *head; struct ceph_osd_op *op; void *p; int do_trunc = truncate_seq && (off + *plen > truncate_size); int num_op = 1 + do_sync + do_trunc; int num_op = 1 + do_sync; size_t msg_size = sizeof(*head) + num_op*sizeof(*op); int err, i; u64 prevofs; if (use_mempool) { req = mempool_alloc(osdc->req_mempool, GFP_NOFS); Loading Loading @@ -268,22 +266,14 @@ struct ceph_osd_request *ceph_osdc_new_request(struct ceph_osd_client *osdc, req->r_request->hdr.data_len = cpu_to_le32(*plen); op->payload_len = cpu_to_le32(*plen); } op->extent.truncate_size = cpu_to_le64(truncate_size); op->extent.truncate_seq = cpu_to_le32(truncate_seq); /* fill in oid */ head->object_len = cpu_to_le32(req->r_oid_len); memcpy(p, req->r_oid, req->r_oid_len); p += req->r_oid_len; /* additional ops */ if (do_trunc) { op++; op->op = cpu_to_le16(opcode == CEPH_OSD_OP_READ ? CEPH_OSD_OP_MASKTRUNC : CEPH_OSD_OP_SETTRUNC); op->trunc.truncate_seq = cpu_to_le32(truncate_seq); prevofs = le64_to_cpu((op-1)->extent.offset); op->trunc.truncate_size = cpu_to_le64(truncate_size - (off-prevofs)); } if (do_sync) { op++; op->op = cpu_to_le16(CEPH_OSD_OP_STARTSYNC); Loading
fs/ceph/rados.h +2 −4 Original line number Diff line number Diff line Loading @@ -304,15 +304,13 @@ struct ceph_osd_op { union { struct { __le64 offset, length; __le64 truncate_size; __le32 truncate_seq; } __attribute__ ((packed)) extent; struct { __le32 name_len; __le32 value_len; } __attribute__ ((packed)) xattr; struct { __le64 truncate_size; __le32 truncate_seq; } __attribute__ ((packed)) trunc; struct { __u8 class_len; __u8 method_len; Loading