From bb5d983029220e60657b6f4f56811984a74e0a31 Mon Sep 17 00:00:00 2001 From: Yuan Lu Date: Wed, 4 Mar 2020 14:48:53 +0800 Subject: [PATCH] librbd: fix block extents issue of rwl writeback cache Signed-off-by: Lu, Yuan --- src/librbd/cache/rwl/Types.cc | 2 +- src/librbd/cache/rwl/Types.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/librbd/cache/rwl/Types.cc b/src/librbd/cache/rwl/Types.cc index 3ad62176f0d2b..bd1b097c2e712 100644 --- a/src/librbd/cache/rwl/Types.cc +++ b/src/librbd/cache/rwl/Types.cc @@ -38,7 +38,7 @@ void DeferredContexts::add(Context* ctx) { BlockExtent convert_to_block_extent(const uint64_t offset_bytes, const uint64_t length_bytes) { return BlockExtent(offset_bytes, - offset_bytes + length_bytes - 1); + offset_bytes + length_bytes); } BlockExtent WriteLogPmemEntry::block_extent() { diff --git a/src/librbd/cache/rwl/Types.h b/src/librbd/cache/rwl/Types.h index ac300a8b38a57..6bfceea0a5187 100644 --- a/src/librbd/cache/rwl/Types.h +++ b/src/librbd/cache/rwl/Types.h @@ -234,7 +234,7 @@ struct WriteBufferAllocation { static inline io::Extent image_extent(const BlockExtent& block_extent) { return io::Extent(block_extent.block_start, - block_extent.block_end - block_extent.block_start + 1); + block_extent.block_end - block_extent.block_start); } template -- 2.39.5