From: Yingxin Cheng Date: Wed, 30 Jun 2021 03:06:52 +0000 (+0800) Subject: crimson/os/seastore/cache: fix get_extent_by_type(t) to use Transaction::get_extent() X-Git-Tag: v17.1.0~1508^2~5 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=82203cd3538bfd514ca5c11c6ffc766c2db62536;p=ceph.git crimson/os/seastore/cache: fix get_extent_by_type(t) to use Transaction::get_extent() The original query_cache_for_extent() doesn't call wait_io() if the extent is pending. And the following get_extent_by_type() already covers the lookup to Cache::extents and also implements wait_io() correctly. Signed-off-by: Yingxin Cheng --- diff --git a/src/crimson/os/seastore/cache.h b/src/crimson/os/seastore/cache.h index 551f6e7d0a7c..bbac701e0347 100644 --- a/src/crimson/os/seastore/cache.h +++ b/src/crimson/os/seastore/cache.h @@ -308,7 +308,7 @@ public: laddr_t laddr, segment_off_t length) { CachedExtentRef ret; - auto status = query_cache_for_extent(t, offset, &ret); + auto status = t.get_extent(offset, &ret); if (status == Transaction::get_extent_ret::RETIRED) { return seastar::make_ready_future(); } else if (status == Transaction::get_extent_ret::PRESENT) {