File tree Expand file tree Collapse file tree 5 files changed +17
-8
lines changed
Expand file tree Collapse file tree 5 files changed +17
-8
lines changed Original file line number Diff line number Diff line change @@ -1524,7 +1524,8 @@ bool SegmentCleaner::check_usage()
15241524 if (paddr.get_addr_type () == paddr_types_t ::SEGMENT) {
15251525 if (is_backref_node (type)) {
15261526 assert (laddr == L_ADDR_NULL);
1527- assert (backref_key != P_ADDR_NULL);
1527+ assert (backref_key.is_absolute_segmented ()
1528+ || backref_key == P_ADDR_MIN);
15281529 tracker->allocate (
15291530 paddr.as_seg_paddr ().get_segment_id (),
15301531 paddr.as_seg_paddr ().get_segment_off (),
@@ -1832,7 +1833,8 @@ bool RBMCleaner::check_usage()
18321833 if (rbm->get_device_id () == paddr.get_device_id ()) {
18331834 if (is_backref_node (type)) {
18341835 assert (laddr == L_ADDR_NULL);
1835- assert (backref_key != P_ADDR_NULL);
1836+ assert (backref_key.is_absolute_random_block ()
1837+ || backref_key == P_ADDR_MIN);
18361838 tracker.allocate (
18371839 paddr,
18381840 len);
Original file line number Diff line number Diff line change @@ -1937,8 +1937,7 @@ Cache::replay_delta(
19371937 * safetly skip these deltas because the extent must already
19381938 * have been rewritten.
19391939 */
1940- if (delta.paddr != P_ADDR_NULL &&
1941- delta.paddr .get_addr_type () == paddr_types_t ::SEGMENT) {
1940+ if (delta.paddr .is_absolute_segmented ()) {
19421941 auto & seg_addr = delta.paddr .as_seg_paddr ();
19431942 auto seg_info = get_segment_info (seg_addr.get_segment_id ());
19441943 if (seg_info) {
Original file line number Diff line number Diff line change @@ -111,7 +111,7 @@ SegmentedJournal::prep_replay_segments(
111111 auto journal_tail = trimmer.get_journal_tail ();
112112 auto journal_tail_paddr = journal_tail.offset ;
113113 ceph_assert (journal_tail != JOURNAL_SEQ_NULL);
114- ceph_assert (journal_tail_paddr != P_ADDR_NULL );
114+ ceph_assert (journal_tail_paddr. is_absolute_segmented () );
115115 auto from = std::find_if (
116116 segments.begin (),
117117 segments.end (),
Original file line number Diff line number Diff line change @@ -651,6 +651,14 @@ struct paddr_t {
651651 return get_addr_type () != paddr_types_t ::RESERVED;
652652 }
653653
654+ bool is_absolute_random_block () const {
655+ return get_addr_type () == paddr_types_t ::RANDOM_BLOCK;
656+ }
657+
658+ bool is_absolute_segmented () const {
659+ return get_addr_type () == paddr_types_t ::SEGMENT;
660+ }
661+
654662 bool is_fake () const {
655663 return get_device_id () == DEVICE_ID_FAKE;
656664 }
Original file line number Diff line number Diff line change @@ -184,7 +184,7 @@ class Transaction {
184184 delayed_temp_offset += ref->get_length ();
185185 delayed_alloc_list.emplace_back (ref);
186186 fresh_block_stats.increment (ref->get_length ());
187- } else if (ref->get_paddr ().is_absolute ()) {
187+ } else if (ref->get_paddr ().is_absolute_random_block ()) {
188188 pre_alloc_list.emplace_back (ref);
189189 fresh_block_stats.increment (ref->get_length ());
190190 } else {
@@ -237,15 +237,15 @@ class Transaction {
237237 }
238238
239239 void mark_inplace_rewrite_extent_ool (LogicalCachedExtentRef ref) {
240- assert (ref->get_paddr ().is_absolute ());
240+ assert (ref->get_paddr ().is_absolute_random_block ());
241241 assert (!ref->is_inline ());
242242 inplace_ool_block_list.push_back (ref);
243243 }
244244
245245 void add_inplace_rewrite_extent (CachedExtentRef ref) {
246246 ceph_assert (!is_weak ());
247247 ceph_assert (ref);
248- ceph_assert (ref->get_paddr ().is_absolute ());
248+ ceph_assert (ref->get_paddr ().is_absolute_random_block ());
249249 assert (ref->state == CachedExtent::extent_state_t ::DIRTY);
250250 pre_inplace_rewrite_list.emplace_back (ref->cast <LogicalCachedExtent>());
251251 }
You can’t perform that action at this time.
0 commit comments