summaryrefslogtreecommitdiffstats
path: root/src/crimson/os/seastore/async_cleaner.cc
diff options
context:
space:
mode:
authorYingxin Cheng <yingxin.cheng@intel.com>2025-01-09 11:08:35 +0100
committerGitHub <noreply@github.com>2025-01-09 11:08:35 +0100
commit10c9a4d252f8f21f324ffcdff81b3f1ef033d4f9 (patch)
tree3876b7f2bb4d86f7edb99b98bfc0b5474f65dc26 /src/crimson/os/seastore/async_cleaner.cc
parentMerge pull request #60848 from cbodley/wip-rgw-deprecate-iam-tenant (diff)
parentcrimson/osd/replicated_recovery_backend: prevent recovery/backfills from (diff)
downloadceph-10c9a4d252f8f21f324ffcdff81b3f1ef033d4f9.tar.xz
ceph-10c9a4d252f8f21f324ffcdff81b3f1ef033d4f9.zip
Merge pull request #60891 from xxhdx1985126/wip-seastore-fadvise-backfill
crimson/os/seastore: add fadvise support to SeaStore and prevent recovery/backfill from polluting the cache of SeaStore Reviewed-by: Yingxin Cheng <yingxin.cheng@intel.com> Reviewed-by: Matan Breizman <mbreizma@redhat.com>
Diffstat (limited to 'src/crimson/os/seastore/async_cleaner.cc')
-rw-r--r--src/crimson/os/seastore/async_cleaner.cc6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/crimson/os/seastore/async_cleaner.cc b/src/crimson/os/seastore/async_cleaner.cc
index 341c5c5524a..64e6749562e 100644
--- a/src/crimson/os/seastore/async_cleaner.cc
+++ b/src/crimson/os/seastore/async_cleaner.cc
@@ -609,6 +609,7 @@ JournalTrimmerImpl::trim_alloc()
return extent_callback->with_transaction_intr(
Transaction::src_t::TRIM_ALLOC,
"trim_alloc",
+ CACHE_HINT_NOCACHE,
[this, FNAME](auto &t)
{
auto target = get_alloc_tail_target();
@@ -653,6 +654,7 @@ JournalTrimmerImpl::trim_dirty()
return extent_callback->with_transaction_intr(
Transaction::src_t::TRIM_DIRTY,
"trim_dirty",
+ CACHE_HINT_NOCACHE,
[this, FNAME](auto &t)
{
auto target = get_dirty_tail_target();
@@ -1125,6 +1127,7 @@ SegmentCleaner::do_reclaim_space(
return extent_callback->with_transaction_intr(
src,
"clean_reclaim_space",
+ CACHE_HINT_NOCACHE,
[this, &backref_extents, &pin_list, &reclaimed](auto &t)
{
return seastar::do_with(
@@ -1240,6 +1243,7 @@ SegmentCleaner::clean_space_ret SegmentCleaner::clean_space()
return extent_callback->with_transaction_intr(
Transaction::src_t::READ,
"retrieve_from_backref_tree",
+ CACHE_HINT_NOCACHE,
[this, &weak_read_ret](auto &t) {
return backref_manager.get_mappings(
t,
@@ -1506,6 +1510,7 @@ bool SegmentCleaner::check_usage()
SpaceTrackerIRef tracker(space_tracker->make_empty());
extent_callback->with_transaction_weak(
"check_usage",
+ CACHE_HINT_NOCACHE,
[this, &tracker](auto &t) {
return backref_manager.scan_mapped_space(
t,
@@ -1812,6 +1817,7 @@ bool RBMCleaner::check_usage()
RBMSpaceTracker tracker(rbms);
extent_callback->with_transaction_weak(
"check_usage",
+ CACHE_HINT_NOCACHE,
[this, &tracker, &rbms](auto &t) {
return backref_manager.scan_mapped_space(
t,