]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
os/bluestore: Added check against using out-of-range extent
authorAdam Kupczyk <akupczyk@redhat.com>
Mon, 8 Jun 2020 10:36:00 +0000 (12:36 +0200)
committerAdam Kupczyk <akupczyk@redhat.com>
Tue, 22 Dec 2020 14:52:20 +0000 (15:52 +0100)
This fixes https://tracker.ceph.com/issues/46194

Signed-off-by: Adam Kupczyk <akupczyk@redhat.com>
(cherry picked from commit 340917d409012d8a8530c9050b79b875e87dc029)

Conflicts:
       src/os/bluestore/BlueFS.cc

src/os/bluestore/BlueFS.cc

index 498af0086c63f5c03dd3f4e5880d5cae91aad0f1..6e45821965d3536ae8ce3ebe7d265e52278fb139 100644 (file)
@@ -1558,6 +1558,7 @@ int BlueFS::_read_random(
       uint64_t x_off = 0;
       auto p = h->file->fnode.seek(off, &x_off);
       uint64_t l = std::min(p->length - x_off, static_cast<uint64_t>(len));
+      ceph_assert(p != h->file->fnode.extents.end());
       dout(20) << __func__ << " read random 0x"
               << std::hex << x_off << "~" << l << std::dec
               << " of " << *p << dendl;