From a7c1d3b9d85212add19746cd7fb4365068ab4b15 Mon Sep 17 00:00:00 2001 From: Kefu Chai Date: Thu, 23 Feb 2017 02:33:50 +0800 Subject: [PATCH] os/bluestore: fix bluestore_blob_t::generate_test_instances() add extends before marking unused ranges, otherwise add_unused() asserts if (offset + len < blob_len) this method is supposed to be used by ceph-dencoder, but bluestore_blob_t's codec is quite different. we are not testing its encoding in ceph-dencoder at this moment. Signed-off-by: Kefu Chai --- src/os/bluestore/bluestore_types.cc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/os/bluestore/bluestore_types.cc b/src/os/bluestore/bluestore_types.cc index 59a705d91e6e9..7398d03ce8036 100644 --- a/src/os/bluestore/bluestore_types.cc +++ b/src/os/bluestore/bluestore_types.cc @@ -630,12 +630,12 @@ void bluestore_blob_t::generate_test_instances(list& ls) ls.push_back(new bluestore_blob_t); ls.back()->init_csum(Checksummer::CSUM_XXHASH32, 16, 65536); ls.back()->csum_data = buffer::claim_malloc(4, strdup("abcd")); - ls.back()->add_unused(0, 3); - ls.back()->add_unused(8, 8); ls.back()->extents.emplace_back(bluestore_pextent_t(0x40100000, 0x10000)); ls.back()->extents.emplace_back( bluestore_pextent_t(bluestore_pextent_t::INVALID_OFFSET, 0x1000)); ls.back()->extents.emplace_back(bluestore_pextent_t(0x40120000, 0x10000)); + ls.back()->add_unused(0, 3); + ls.back()->add_unused(8, 8); } ostream& operator<<(ostream& out, const bluestore_blob_t& o) -- 2.39.5