Hi Takashi, This cumulative resend keeps the twelve-patch series on the same base, a4311e9447bbb219044db38897f95be112f46a8a. It covers PCM stop-threshold sampling, locked partial-progress reporting, the optional reset operation, VirtIO ACK error propagation and recovery, PCM and control DMA ownership, signal-safe teardown, staged capture lifecycle and work prioritization, and capture parameter documentation.
Relative to v18, patch 7 validates ordinary indirect capture appl_ptr accounting before calling the indirect transfer helper. It bounds ACK consumption by completed, unread capture bytes and rejects positive advances before RX ring seeding. Active over-budget advances follow the existing XRUN path; invalid PAUSED advances roll back without ending PAUSED. Validation: - Cumulative ARM64 stages 04–12 passed W=1 builds with KASAN, lockdep, and OSS PCM enabled. Stage 04 built Image and modules; stages 05–12 rebuilt modules incrementally. - A bounded candidate-only raw SYNC_PTR audit rejected unseeded PREPARED and over-budget RUNNING advances before indirect accounting. The PCM pointer rolled back, and prepare/start/read recovery passed. Valid partial ACKs also passed. No vulnerable baseline sequence was rerun. - Candidate state runs passed valid subperiod ACKs, PAUSED rollback and resume, DRAINING tail consumption and over-budget rollback, and raw ACK before and after PAUSED RESET. - A slow-reader QEMU run kept the unread capture slot unchanged while appl_ptr was held, then recycled it once after one period was consumed. - Four final-byte no-hook QEMU runs covered ordinary and staged capture through RW and MMAP, including reset and reopen. The 14-sample oracle passed across ring wrap with no KASAN or lockdep diagnostics. - v18 MMIO rollback, timeout-width, and PCI remove/reprobe checks are inherited for the unchanged transport and control-message paths. The bounded ownership trace did not reproduce an in-flight duplicate virtqueue add or message-length overflow; neither is claimed as reproduced. Numeric ALSA runtime->boundary wrap, physical Virtualization.framework devices, and KCSAN were not tested. Previous version: https://lore.kernel.org/r/[email protected]/ AI assistance was used for analysis, implementation, and test preparation. Assisted-by: LLM Thanks, Joonho base-commit: a4311e9447bbb219044db38897f95be112f46a8a
