From: Yingxin Cheng Date: Wed, 30 Jun 2021 03:55:39 +0000 (+0800) Subject: crimson/os/seastore/cache: add the missing extent invalid check X-Git-Tag: v17.1.0~1508^2~2 X-Git-Url: http://git.apps.os.sepia.ceph.com/?a=commitdiff_plain;h=2243b3d59380b914f4ced75494fdec09d2f97bc6;p=ceph-ci.git crimson/os/seastore/cache: add the missing extent invalid check see 2bc257beb2ef1253e38c254745f42b3ac5db52de Signed-off-by: Yingxin Cheng --- diff --git a/src/crimson/os/seastore/cache.h b/src/crimson/os/seastore/cache.h index 5316804362b..071bc7e9c10 100644 --- a/src/crimson/os/seastore/cache.h +++ b/src/crimson/os/seastore/cache.h @@ -326,9 +326,14 @@ public: return trans_intr::make_interruptible( get_extent_by_type(type, offset, laddr, length) ).si_then([=, &t](CachedExtentRef ret) { - t.add_to_read_set(ret); - return get_extent_ertr::make_ready_future( - std::move(ret)); + if (!ret->is_valid()) { + t.conflicted = true; + return get_extent_ertr::make_ready_future(); + } else { + t.add_to_read_set(ret); + return get_extent_ertr::make_ready_future( + std::move(ret)); + } }); } }