Hi,

I've prepared the reproducer and build instructions for this series:

https://github.com/whatisyourname0/virtio-snd-reproducer/tree/88913cb432c3771d179a274e3b622a22b03bb9f1/capture-followups

DEPENDENCIES.md lists the exact base and prerequisite patches. The
preparation script reconstructs the pre-ACK, ACK-only and ACK plus
scheduling trees from those patches. Each tree matches the source used
for the original tests. The two kernel patches in this series are
unchanged.

For patch 1, ack/ extracts the baseline and candidate routines and tests
ACK ordering and refill failure with two kernel threads. I rebuilt the
ACK-only kernel and fixture module with KASAN and lockdep. All four
cases passed, followed by module unload and a clean guest shutdown. The
fixture supplies test queue hooks; full virtqueue coverage is a separate
part of the test setup.

I also rebuilt QEMU and the kernel with both patches for the capture
regression checks. All 24 captures across four/eight channels and
one/two vCPUs matched the expected file length and SHA-256. A deliberate
reader stall produced XRUN, and a fresh capture after it matched the
oracle. An eight-channel, one-vCPU run completed 70 seconds under guest
CPU load and a subsequent ten-second capture without XRUN or a data
mismatch. The kernel logs were clean.

These QEMU tests use a deterministic synthetic source. They cover
capture correctness and recovery; the VZ comparison in the original
cover letter remains the evidence for patch 2's scheduling benefit. The
ACK fixture uses the ACK-only tree because patch 2 changes a shared
helper. Both build paths are documented separately.

FRESH-BUILD-VALIDATION.md records the source and artifact hashes,
results and remaining test limits. The package also includes the QEMU
fixture patch, the guest build recipe and the channel/frame oracle.

I'd appreciate guidance on which parts would be most useful to keep in
the kernel test suite and which should stay with the QEMU test backend.

Thanks,
Joonho

Reply via email to