]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
osd: add flag to identify scrub IO
authorJaya Prakash <jayaprakash@ibm.com>
Mon, 8 Dec 2025 13:35:59 +0000 (13:35 +0000)
committerJaya Prakash <jayaprakash@ibm.com>
Tue, 9 Dec 2025 11:19:09 +0000 (11:19 +0000)
This commit introduces a new operation flag `CEPH_OSD_OP_FLAG_SCRUB` to explicitly
mark requests originating from scrub or deep-scrub workflows.
The flag allows BlueStore to differentiate scrub IO from normal operations.

Signed-off-by: Jaya Prakash <jayaprakash@ibm.com>
src/osd/ECCommon.h
src/osd/ECCommonL.h
src/osd/ReplicatedBackend.h
src/osd/osd_types.cc

index d98ac2cb49995c9eb4a29ab412c978e02328a0a6..24f48e822ffdf410b3c4628520c0f23d953af629 100644 (file)
@@ -72,7 +72,7 @@ struct ECCommon {
   static inline const uint32_t scrub_fadvise_flags{
       CEPH_OSD_OP_FLAG_FADVISE_SEQUENTIAL |
       CEPH_OSD_OP_FLAG_FADVISE_DONTNEED |
-      CEPH_OSD_OP_FLAG_BYPASS_CLEAN_CACHE};
+      CEPH_OSD_OP_FLAG_SCRUB};
 
   virtual ~ECCommon() = default;
 
index 324870e2d12de4a2c6f5abb5cac7f790154b2592..4fd67e9203e7448b3d72cae8b53607c84f1a017e 100644 (file)
@@ -68,7 +68,7 @@ struct ECCommonL {
   static inline const uint32_t scrub_fadvise_flags{
       CEPH_OSD_OP_FLAG_FADVISE_SEQUENTIAL |
       CEPH_OSD_OP_FLAG_FADVISE_DONTNEED |
-      CEPH_OSD_OP_FLAG_BYPASS_CLEAN_CACHE};
+      CEPH_OSD_OP_FLAG_SCRUB};
 
   virtual ~ECCommonL() = default;
 
@@ -697,4 +697,4 @@ template <> struct fmt::formatter<ECLegacy::ECCommonL::RMWPipeline::pipeline_sta
 template <> struct fmt::formatter<ECLegacy::ECCommonL::read_request_t> : fmt::ostream_formatter {};
 template <> struct fmt::formatter<ECLegacy::ECCommonL::read_result_t> : fmt::ostream_formatter {};
 template <> struct fmt::formatter<ECLegacy::ECCommonL::ReadOp> : fmt::ostream_formatter {};
-template <> struct fmt::formatter<ECLegacy::ECCommonL::RMWPipeline::Op> : fmt::ostream_formatter {};
\ No newline at end of file
+template <> struct fmt::formatter<ECLegacy::ECCommonL::RMWPipeline::Op> : fmt::ostream_formatter {};
index aab3c751442702a237839b4a13171926eb4550f8..4ce6c3aa34e13e18c626f80106b7e76fe6a65656 100644 (file)
@@ -466,7 +466,7 @@ private:
   static inline const uint32_t scrub_fadvise_flags{
       CEPH_OSD_OP_FLAG_FADVISE_SEQUENTIAL |
       CEPH_OSD_OP_FLAG_FADVISE_DONTNEED |
-      CEPH_OSD_OP_FLAG_BYPASS_CLEAN_CACHE};
+      CEPH_OSD_OP_FLAG_SCRUB};
 
   int be_deep_scrub(
     const Scrub::ScrubCounterSet& io_counters,
index 91adfdd40f6c257387c6b0df5f5c6e4b0562d5ad..7c7e87b654924984586a6cd710c49f2bd6097822 100644 (file)
@@ -152,8 +152,8 @@ const char * ceph_osd_op_flag_name(unsigned flag)
     case CEPH_OSD_OP_FLAG_WITH_REFERENCE:
       name = "with_reference";
       break;
-    case CEPH_OSD_OP_FLAG_BYPASS_CLEAN_CACHE:
-      name = "bypass_clean_cache";
+    case CEPH_OSD_OP_FLAG_SCRUB:
+      name = "scrub";
       break;
     default:
       name = "???";