Skip to content

Commit 9491e1b

Browse files
committed
crimson/os/seastore: fake paddr is only possible with UT, wrap with UNIT_TESTS_BUILT
Signed-off-by: Yingxin Cheng <[email protected]>
1 parent 5cc1b63 commit 9491e1b

File tree

3 files changed

+11
-0
lines changed

3 files changed

+11
-0
lines changed

src/crimson/os/seastore/cache.cc

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1408,7 +1408,11 @@ record_t Cache::prepare_record(
14081408
fresh_stat.increment(i->get_length());
14091409
get_by_ext(efforts.fresh_inline_by_ext,
14101410
i->get_type()).increment(i->get_length());
1411+
#ifdef UNIT_TESTS_BUILT
14111412
assert(i->is_inline() || i->get_paddr().is_fake());
1413+
#else
1414+
assert(i->is_inline());
1415+
#endif
14121416

14131417
bufferlist bl;
14141418
i->prepare_write();

src/crimson/os/seastore/extent_placement_manager.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -558,9 +558,11 @@ class ExtentPlacementManager {
558558

559559
bool get_checksum_needed(paddr_t addr) {
560560
// checksum offloading only for blocks physically stored in the device
561+
#ifdef UNIT_TESTS_BUILT
561562
if (addr.is_fake()) {
562563
return true;
563564
}
565+
#endif
564566
assert(addr.is_absolute());
565567
return !devices_by_id[addr.get_device_id()]->is_end_to_end_data_protection();
566568
}

src/crimson/os/seastore/transaction.h

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -188,11 +188,16 @@ class Transaction {
188188
pre_alloc_list.emplace_back(ref);
189189
fresh_block_stats.increment(ref->get_length());
190190
} else {
191+
#ifdef UNIT_TESTS_BUILT
191192
if (likely(ref->get_paddr() == make_record_relative_paddr(0))) {
192193
ref->set_paddr(make_record_relative_paddr(offset));
193194
} else {
194195
ceph_assert(ref->get_paddr().is_fake());
195196
}
197+
#else
198+
assert(ref->get_paddr() == make_record_relative_paddr(0));
199+
ref->set_paddr(make_record_relative_paddr(offset));
200+
#endif
196201
offset += ref->get_length();
197202
inline_block_list.push_back(ref);
198203
fresh_block_stats.increment(ref->get_length());

0 commit comments

Comments
 (0)