Project

General

Profile

Actions

Bug #60697

closed

crash: virtual int KernelDevice::read(uint64_t, uint64_t, ceph::bufferlist*, IOContext*, bool): assert((uint64_t)r == len)

Added by Telemetry Bot 12 months ago. Updated 12 months ago.

Status:
Duplicate
Priority:
Normal
Assignee:
-
Target version:
-
% Done:

0%

Source:
Telemetry
Tags:
Backport:
Regression:
No
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:
Pull request ID:
Crash signature (v1):

ea75e162fed2d4ba34067e8233e48a0fffa3e1c87fade0322c73e50d1f895215


Description

http://telemetry.front.sepia.ceph.com:4000/d/jByk5HaMz/crash-spec-x-ray?orgId=1&var-sig_v2=de225d814457839cc830456fd869315920dc0d25b55e25728b0471086e3b0357

Assert condition: (uint64_t)r == len
Assert function: virtual int KernelDevice::read(uint64_t, uint64_t, ceph::bufferlist*, IOContext*, bool)

Sanitized backtrace:

    KernelDevice::read(unsigned long, unsigned long, ceph::buffer::list*, IOContext*, bool)
    BlueFS::_read(BlueFS::FileReader*, unsigned long, unsigned long, ceph::buffer::list*, char*)
    BlueRocksRandomAccessFile::Prefetch(unsigned long, unsigned long)
    rocksdb::LegacyRandomAccessFileWrapper::Prefetch(unsigned long, unsigned long, rocksdb::IOOptions const&, rocksdb::IODebugContext*)
    rocksdb::RandomAccessFileReader::Prefetch(unsigned long, unsigned long) const
    rocksdb::BlockPrefetcher::PrefetchIfNeeded(rocksdb::BlockBasedTable::Rep const*, rocksdb::BlockHandle const&, unsigned long, bool)
    rocksdb::BlockBasedTableIterator::InitDataBlock()
    rocksdb::BlockBasedTableIterator::FindBlockForward()
    rocksdb::BlockBasedTableIterator::FindKeyForward()
    rocksdb::BlockBasedTableIterator::Next()
    rocksdb::BlockBasedTableIterator::NextAndGetResult(rocksdb::IterateResult*)
    rocksdb::IteratorWrapperBase<rocksdb::Slice>::NextAndGetResult(rocksdb::IterateResult*)
    rocksdb::IteratorWrapperBase<rocksdb::Slice>::Next()
    rocksdb::MergingIterator::Next()
    rocksdb::MergingIterator::NextAndGetResult(rocksdb::IterateResult*)
    rocksdb::IteratorWrapperBase<rocksdb::Slice>::Next()
    rocksdb::DBIter::Next()
    rocksdb::ArenaWrappedDBIter::Next()
    ShardMergeIteratorImpl::next()
    BlueStore::_collection_list(BlueStore::Collection*, ghobject_t const&, ghobject_t const&, int, bool, std::vector<ghobject_t, std::allocator<ghobject_t> >*, ghobject_t*)
    BlueStore::collection_list(boost::intrusive_ptr<ObjectStore::CollectionImpl>&, ghobject_t const&, ghobject_t const&, int, std::vector<ghobject_t, std::allocator<ghobject_t> >*, ghobject_t*)
    PGBackend::objects_list_range(hobject_t const&, hobject_t const&, std::vector<hobject_t, std::allocator<hobject_t> >*, std::vector<ghobject_t, std::allocator<ghobject_t> >*)
    PgScrubber::build_scrub_map_chunk(ScrubMap&, ScrubMapBuilder&, hobject_t, hobject_t, bool)
    PgScrubber::build_replica_map_chunk()

Crash dump sample:
{
    "assert_condition": "(uint64_t)r == len",
    "assert_file": "blk/kernel/KernelDevice.cc",
    "assert_func": "virtual int KernelDevice::read(uint64_t, uint64_t, ceph::bufferlist*, IOContext*, bool)",
    "assert_line": 1255,
    "assert_msg": "blk/kernel/KernelDevice.cc: In function 'virtual int KernelDevice::read(uint64_t, uint64_t, ceph::bufferlist*, IOContext*, bool)' thread 7fdd99940700 time 2023-04-03T20:28:22.160083+0200\nblk/kernel/KernelDevice.cc: 1255: FAILED ceph_assert((uint64_t)r == len)",
    "assert_thread_name": "tp_osd_tp",
    "backtrace": [
        "/lib/x86_64-linux-gnu/libpthread.so.0(+0x13140) [0x7fddb75b8140]",
        "gsignal()",
        "abort()",
        "(ceph::__ceph_assert_fail(char const*, char const*, int, char const*)+0x17e) [0x560ba3478fca]",
        "/usr/bin/ceph-osd(+0xc2310e) [0x560ba347910e]",
        "(KernelDevice::read(unsigned long, unsigned long, ceph::buffer::v15_2_0::list*, IOContext*, bool)+0x9cf) [0x560ba404d0cf]",
        "(BlueFS::_read(BlueFS::FileReader*, unsigned long, unsigned long, ceph::buffer::v15_2_0::list*, char*)+0x5b7) [0x560ba3b9bf97]",
        "(BlueRocksRandomAccessFile::Prefetch(unsigned long, unsigned long)+0x1b) [0x560ba3bc4b4b]",
        "(rocksdb::LegacyRandomAccessFileWrapper::Prefetch(unsigned long, unsigned long, rocksdb::IOOptions const&, rocksdb::IODebugContext*)+0x4d) [0x560ba40cd5e1]",
        "(rocksdb::RandomAccessFileReader::Prefetch(unsigned long, unsigned long) const+0x62) [0x560ba4371870]",
        "(rocksdb::BlockPrefetcher::PrefetchIfNeeded(rocksdb::BlockBasedTable::Rep const*, rocksdb::BlockHandle const&, unsigned long, bool)+0x155) [0x560ba450643f]",
        "(rocksdb::BlockBasedTableIterator::InitDataBlock()+0x161) [0x560ba45044d5]",
        "(rocksdb::BlockBasedTableIterator::FindBlockForward()+0x2a8) [0x560ba4504bd2]",
        "(rocksdb::BlockBasedTableIterator::FindKeyForward()+0x8e) [0x560ba4504926]",
        "(rocksdb::BlockBasedTableIterator::Next()+0x88) [0x560ba45041ec]",
        "(rocksdb::BlockBasedTableIterator::NextAndGetResult(rocksdb::IterateResult*)+0x1d) [0x560ba450421b]",
        "(rocksdb::IteratorWrapperBase<rocksdb::Slice>::NextAndGetResult(rocksdb::IterateResult*)+0x66) [0x560ba4268b22]",
        "/usr/bin/ceph-osd(+0x19eae9a) [0x560ba4240e9a]",
        "(rocksdb::IteratorWrapperBase<rocksdb::Slice>::Next()+0x62) [0x560ba41996b4]",
        "(rocksdb::MergingIterator::Next()+0xaf) [0x560ba43abe47]",
        "(rocksdb::MergingIterator::NextAndGetResult(rocksdb::IterateResult*)+0x28) [0x560ba43abf82]",
        "(rocksdb::IteratorWrapperBase<rocksdb::Slice>::Next()+0x62) [0x560ba41996b4]",
        "(rocksdb::DBIter::Next()+0x1dc) [0x560ba418f946]",
        "(rocksdb::ArenaWrappedDBIter::Next()+0x1c) [0x560ba4458c14]",
        "(ShardMergeIteratorImpl::next()+0x47) [0x560ba4083c97]",
        "/usr/bin/ceph-osd(+0x11fdc2a) [0x560ba3a53c2a]",
        "(BlueStore::_collection_list(BlueStore::Collection*, ghobject_t const&, ghobject_t const&, int, bool, std::vector<ghobject_t, std::allocator<ghobject_t> >*, ghobject_t*)+0x100d) [0x560ba3a809dd]",
        "(BlueStore::collection_list(boost::intrusive_ptr<ObjectStore::CollectionImpl>&, ghobject_t const&, ghobject_t const&, int, std::vector<ghobject_t, std::allocator<ghobject_t> >*, ghobject_t*)+0xc7) [0x560ba3a81f57]",
        "(PGBackend::objects_list_range(hobject_t const&, hobject_t const&, std::vector<hobject_t, std::allocator<hobject_t> >*, std::vector<ghobject_t, std::allocator<ghobject_t> >*)+0x468) [0x560ba3725608]",
        "(PgScrubber::build_scrub_map_chunk(ScrubMap&, ScrubMapBuilder&, hobject_t, hobject_t, bool)+0x320) [0x560ba375f8d0]",
        "(PgScrubber::build_replica_map_chunk()+0x24b) [0x560ba3763d8b]" 
    ],
    "ceph_version": "17.2.5",
    "crash_id": "2023-04-03T18:28:22.561725Z_43feabe5-a9fa-416d-b120-001a0748e9a7",
    "entity_name": "osd.96866daae50c3175822716f4f01d1a9a62f56bde",
    "os_id": "11",
    "os_name": "Debian GNU/Linux 11 (bullseye)",
    "os_version": "11 (bullseye)",
    "os_version_id": "11",
    "process_name": "ceph-osd",
    "stack_sig": "ea75e162fed2d4ba34067e8233e48a0fffa3e1c87fade0322c73e50d1f895215",
    "timestamp": "2023-04-03T18:28:22.561725Z",
    "utsname_machine": "x86_64",
    "utsname_release": "6.1.2-1-pve",
    "utsname_sysname": "Linux",
    "utsname_version": "#1 SMP PREEMPT_DYNAMIC PVE 6.1.2-1 (2023-01-10T00:00Z)" 
}


Related issues 1 (1 open0 closed)

Has duplicate bluestore - Bug #60706: crash: virtual int KernelDevice::read(uint64_t, uint64_t, ceph::bufferlist*, IOContext*, bool): assert((uint64_t)r == len)New

Actions
Actions #1

Updated by Telemetry Bot 12 months ago

  • Crash signature (v1) updated (diff)
  • Crash signature (v2) updated (diff)
  • Affected Versions v17.2.5 added
Actions #2

Updated by Igor Fedotov 12 months ago

  • Has duplicate Bug #60706: crash: virtual int KernelDevice::read(uint64_t, uint64_t, ceph::bufferlist*, IOContext*, bool): assert((uint64_t)r == len) added
Actions #3

Updated by Igor Fedotov 12 months ago

  • Status changed from New to Duplicate
Actions

Also available in: Atom PDF