From a3d638dc29315d3bbb6bd1ae0be97823cb84a1ca Mon Sep 17 00:00:00 2001 From: Xuehan Xu Date: Mon, 6 May 2024 10:11:40 +0800 Subject: [PATCH] crimson/osd/pg_backend: DONOT modify OSDOp::indata when handling CEPH_OSD_OP_CHECKSUM So that crimson's handling of CEPH_OSD_OP_CHECKSUM is idempotent Fixes: https://tracker.ceph.com/issues/65804 Signed-off-by: Xuehan Xu (cherry picked from commit 899afd3472abb8055924278e7ee29c609ec4eb54) --- src/crimson/osd/pg_backend.cc | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/crimson/osd/pg_backend.cc b/src/crimson/osd/pg_backend.cc index 143f522bb3751..2c707f6d573a0 100644 --- a/src/crimson/osd/pg_backend.cc +++ b/src/crimson/osd/pg_backend.cc @@ -341,8 +341,6 @@ namespace { auto init_value_p = init_value_bl.cbegin(); try { decode(init_value, init_value_p); - // chop off the consumed part - init_value_bl.splice(0, init_value_p.get_off()); } catch (const ceph::buffer::end_of_buffer&) { logger().warn("{}: init value not provided", __func__); return crimson::ct_error::invarg::make(); -- 2.39.5