From 3cdc82cf9838c770699ffaea138e1ef66ad4001a Mon Sep 17 00:00:00 2001 From: chunmei-liu Date: Mon, 24 Jan 2022 09:12:00 -0800 Subject: [PATCH] crimson: fix remove_from_lru assert RETIRED_PLACEHOLDER extent also put into retired set, when do commit_retire_extent need check if it is RETIRED_PLACEHOLDER, otherwise will cause remove_from_lru assert. Signed-off-by: chunmei-liu --- src/crimson/os/seastore/cache.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/crimson/os/seastore/cache.cc b/src/crimson/os/seastore/cache.cc index 39ac510b96b..692cb0e5859 100644 --- a/src/crimson/os/seastore/cache.cc +++ b/src/crimson/os/seastore/cache.cc @@ -673,7 +673,7 @@ void Cache::remove_extent(CachedExtentRef ref) assert(ref->is_valid()); if (ref->is_dirty()) { remove_from_dirty(ref); - } else { + } else if (!ref->is_placeholder()) { lru.remove_from_lru(*ref); } extents.erase(*ref); -- 2.39.5