Am 23.10.2025 um 10:10 hat Akihiko Odaki geschrieben:
> Commit 2cc4d1c5eab1 ("tests/check-block: Skip iotests when sanitizers
> are enabled") changed iotests to skip when sanitizers are enabled.
> The rationale is that AddressSanitizer emits warnings and reports leaks,
> which results in test breakage. Later, sanitizers that are enabled for
> production environments (safe-stack and cfi-icall) were exempted.
>
> However, this approach has a few problems.
>
> - It requires rebuild to disable sanitizers if the existing build has
> them enabled.
> - It disables other useful non-production sanitizers.
> - The exemption of safe-stack and cfi-icall is not correctly
> implemented, so qemu-iotests are incorrectly enabled whenever either
> safe-stack or cfi-icall is enabled *and*, even if there is another
> sanitizer like AddressSanitizer.
>
> To solve these problems, direct AddressSanitizer warnings to separate
> files to avoid changing the test results, and selectively disable
> leak detection at runtime instead of requiring to disable all
> sanitizers at buildtime.
>
> Enabling AddressSanitizer actually revealed a use-after-free so a patch
> to fix it is placed before one that enables iotests with sanitizers.
>
> Signed-off-by: Akihiko Odaki <[email protected]>
Thanks, applied to the block branch.
Kevin