]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
crimson/os/seastore/cache.h: actually call complete_load
authorSamuel Just <sjust@redhat.com>
Tue, 26 May 2020 18:15:42 +0000 (11:15 -0700)
committerSamuel Just <sjust@redhat.com>
Tue, 2 Jun 2020 23:56:41 +0000 (16:56 -0700)
Signed-off-by: Samuel Just <sjust@redhat.com>
src/crimson/os/seastore/cache.h
src/crimson/os/seastore/cached_extent.h

index 3007ba6d2294a916885a0bc4a078d9f5558c56df..a0360109fa8829c253ee1f65f434fcd49de6c2cf 100644 (file)
@@ -196,6 +196,7 @@ public:
        length,
        ref->get_bptr()).safe_then(
          [ref=std::move(ref)]() mutable {
+           ref->on_clean_read();
            ref->complete_io();
            return get_extent_ertr::make_ready_future<TCachedExtentRef<T>>(
              std::move(ref));
index 463f5eeae595f77603565a7c6b6df0acf53fc243..4f40a3ecd286079ad41a2bc9550b7c8c6112d7bc 100644 (file)
@@ -80,6 +80,16 @@ public:
    */
   virtual void on_initial_write() {}
 
+  /**
+   * on_clean_read
+   *
+   * Called after read of initially written extent.
+   *  State will be CLEAN. Implentation may use this
+   * call to fixup the buffer with the newly available
+   * absolute get_paddr().
+   */
+  virtual void on_clean_read() {}
+
   /**
    * on_delta_write
    *