]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commit
os/bluestore: Writer, fix find_mutable_blob
authorAdam Kupczyk <akupczyk@ibm.com>
Thu, 25 Jul 2024 07:41:46 +0000 (07:41 +0000)
committerAdam Kupczyk <akupczyk@ibm.com>
Wed, 7 Aug 2024 10:55:46 +0000 (10:55 +0000)
commit5326fed8328cf479815171a2edf81c21e858f2eb
tree093b7e6e94ec52b413804c932d33c5f65d016232
parent938a0f183ce2e280ed1159fcbfe1b3b04b600176
os/bluestore: Writer, fix find_mutable_blob

1) Algorithm assumed that blob->blob_start() is aligned to csum size.
It is true for blobs created by write_v2, but write_v1 can generate
blob like: begin = 0x9000, size = 0x6000, csum = 0x2000.
2) Blobs with unused were selected even if those need to be expanded.
This is illegal since we cannot expand unused.

Fixed blob selection algorithm.

Signed-off-by: Adam Kupczyk <akupczyk@ibm.com>
src/os/bluestore/Writer.cc