Re: [PULL 0/9] parallels: fix reachable assertion and related bounds-checking gaps

Stefan Hajnoczi <[email protected]>
Newsgroups gmane.comp.emulators.qemu.block,gmane.comp.emulators.qemu
Message-ID <CAJSP0QWsKcV-o=pt9BSbF7pLhAOCZVV6_w_UsTF-Q5Gb_X9PUw@mail.gmail.com>
The qemu-iotests parallels-checks output has a mismatch:
https://gitlab.com/qemu-project/qemu/-/jobs/15576051278#L143

53/56 block-parallels-optional+block-thorough -
qemu:io-parallels-parallels-checks ERROR 9.82s exit status 1
>>> ASAN_OPTIONS=halt_on_error=1:abort_on_error=1:print_summary=1 RUST_BACKTRACE=1 PYTHON=/builds/qemu-project/qemu/build/pyvenv/bin/python3 MSAN_OPTIONS=halt_on_error=1:abort_on_error=1:print_summary=1:print_stacktrace=1 MALLOC_PERTURB_=221 MESON_TEST_ITERATION=1 UBSAN_OPTIONS=halt_on_error=1:abort_on_error=1:print_summary=1:print_stacktrace=1 LD_LIBRARY_PATH=/builds/qemu-project/qemu/build/subprojects/libvfio-user/lib /builds/qemu-project/qemu/build/pyvenv/bin/python3 /builds/qemu-project/qemu/build/../tests/qemu-iotests/check -tap -parallels parallels-checks --source-dir /builds/qemu-project/qemu/tests/qemu-iotests --build-dir /builds/qemu-project/qemu/build/tests/qemu-iotests
――――――――――――――――――――――――――――――――――――― ✀ ―――――――――――――――――――――――――――――――――――――
stderr:
--- /builds/qemu-project/qemu/tests/qemu-iotests/tests/parallels-checks.out
+++ /builds/qemu-project/qemu/build/scratch/parallels-file-parallels-checks/parallels-checks.out.bad
@@ -143,6 +143,8 @@
protocol type: file
file length: 2 GiB (2147483648 bytes)
disk size: 1 MiB
+ Format specific information:
+ extent size hint: 1048576
== an unallocated cluster still reads as zeroes ==
read 1048576/1048576 bytes at offset 0
1 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
(test program exited with status code 1)

On Tue, Jul 28, 2026 at 6:43 AM Denis V. Lunev <[email protected]> wrote:
>
> The following changes since commit 6333226c2abb72f31648c251624c56e70993d625:
>
>   Merge tag 'pull-9p-20260725' of https://github.com/cschoenebeck/qemu into staging (2026-07-26 08:30:07 -0400)
>
> are available in the Git repository at:
>
>   https://gitlab.com/dlunev/qemu.git tags/pull-parallels-2026-07-22
>
> for you to fetch changes up to 2a1c31578eb96f829f3234fe9da1abecbb11aa1e:
>
>   MAINTAINERS: update parallels tree location (2026-07-27 14:42:24 +0200)
>
> ----------------------------------------------------------------
> Parallels block driver patches
>
> - fix a reachable assert()/process abort on a crafted image with an
>   inconsistent BAT vs. advertised disk size (GitLab #3804)
> - fix related integer overflows capping the format's usable catalog
>   size below its documented maximum
> - reject BAT entries pointing outside the data area in either
>   direction
> - harden the dirty-bitmap extension loader against a reachable
>   abort and an unsafe allocator
>
> This is my first pull request signed with this key:
>
>   RSA rsa4096/0BAEAA87D3020ADC1150E51F5E0771B6CB666CAB
>   Denis V. Lunev <[email protected]>
>
> Public key: https://keys.openpgp.org/vks/v1/by-fingerprint/0BAEAA87D3020ADC1150E51F5E0771B6CB666CAB
>
> Signed-off-by: Denis V. Lunev <[email protected]>
> CC: Thomas Huth <[email protected]>
> CC: Stefan Hajnoczi <[email protected]>
>
> ----------------------------------------------------------------
> Denis V. Lunev (9):
>   parallels: fix integer overflow in header size calculation
>   parallels: read header/BAT table in bounded chunks
>   parallels: fix bat_entries overflow in image creation
>   parallels: reject BAT entries pointing outside backed storage
>   parallels: validate bitmap L1 table size before allocating it
>   parallels: skip loading a genuinely empty bitmap L1 table
>   parallels: avoid fatal abort on large bitmap L1 table
>   parallels: validate BAT capacity against advertised disk size
>   MAINTAINERS: update parallels tree location
>
>  MAINTAINERS                                   |   2 +-
>  block/parallels-ext.c                         |  52 +++++----
>  block/parallels.c                             |  74 ++++++++++---
>  tests/qemu-iotests/212                        |   8 +-
>  tests/qemu-iotests/212.out                    |  10 +-
>  tests/qemu-iotests/tests/parallels-checks     | 102 ++++++++++++++++++
>  tests/qemu-iotests/tests/parallels-checks.out |  59 ++++++++++
>  7 files changed, 270 insertions(+), 37 deletions(-)
>
> --
> 2.53.0
>
>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.