All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v18 00/12] ALSA: virtio: fix capture lifetime and accounting
@ 2026-11-06  0:06 Joonho Lee
  2026-11-06  0:06 ` [PATCH v18 01/12] ALSA: pcm: mark stop-threshold accesses for capture policy sampling Joonho Lee
                   ` (11 more replies)
  0 siblings, 12 replies; 25+ messages in thread
From: Joonho Lee @ 2026-11-06  0:06 UTC (permalink / raw)
  To: linux-sound
  Cc: tiwai, perex, anton.yakovlev, mst, virtualization, linux-kernel,
	corbet, skhan, rdunlap, linux-doc

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 v17, patch 4 adds the transfer-failure XRUN latch so later
completions do not advance PCM accounting after a failed ACK. The existing
ACK and prepare recovery behavior is retained. Patch 6's partial-restore
rollback and event-message ownership fixes, and patch 9's wait-result type
fix, are carried forward unchanged from v17. Patch 7 retains PCM DMA lifetime
and fixed-slot completion checks, and now reserves the successfully seeded
ordinary capture ring until userspace advances appl_ptr. Patch 10 retains the
staged capture lifecycle and paused linked-stream XRUN handling, and restores
full-ring accounting after active and native paused RESET requeues completed
requests.

Validation:

- Cumulative stages 04–12 passed incremental ARM64 W=1 builds with KASAN,
  lockdep, and OSS PCM enabled.
- The no-hook production candidate passed ordinary and staged RW/MMAP QEMU
  capture. The 14-capture sequence verifier passed across both modes,
  including RESET/reopen boundaries.
- A slow-reader QEMU oracle reproduces unread-period overwrite on upstream
  a4311e9 and v17. The candidate keeps the ring slice unchanged until
  appl_ptr advances. Separate active and paused RESET pairs reproduce the
  same baseline issue and show the candidate preserving the unread slice.
- Synthetic ACK-failure QEMU probes cover capture, playback, and DRAINING
  admission. Subsequent virtqueue completions and recovery paths were also
  exercised.
- An exact ALSA-helper model covers partial-period capture accounting.
- MMIO rollback, timeout-width, PCI remove/reprobe, and linked paused-XRUN
  evidence is inherited from the validated v17 candidate for source paths
  unchanged by v18; the manifest identifies those inherited checks.

These are guest QEMU and host-model results. ACK failures were injected by
test-only hooks; the returned VirtIO completions were real QEMU events.
Physical Virtualization.framework devices and KCSAN were not tested.

Previous version:
https://lore.kernel.org/linux-sound/20261105070845.6449-1-mynameisjune111@gmail.com/

AI assistance was used for analysis, implementation, and test preparation.
Assisted-by: LLM

Thanks,
Joonho

base-commit: a4311e9447bbb219044db38897f95be112f46a8a

^ permalink raw reply	[flat|nested] 25+ messages in thread

end of thread, other threads:[~2026-11-06  0:36 UTC | newest]

Thread overview: 25+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-11-06  0:06 [PATCH v18 00/12] ALSA: virtio: fix capture lifetime and accounting Joonho Lee
2026-11-06  0:06 ` [PATCH v18 01/12] ALSA: pcm: mark stop-threshold accesses for capture policy sampling Joonho Lee
2026-11-06  0:10   ` sashiko-bot
2026-11-06  0:06 ` [PATCH v18 02/12] ALSA: pcm: report partial progress under the stream lock Joonho Lee
2026-11-06  0:11   ` sashiko-bot
2026-11-06  0:06 ` [PATCH v18 03/12] ALSA: pcm: add an optional reset operation " Joonho Lee
2026-11-06  0:14   ` sashiko-bot
2026-11-06  0:06 ` [PATCH v18 04/12] ALSA: virtio: Propagate PCM send failures through ACK Joonho Lee
2026-11-06  0:35   ` sashiko-bot
2026-11-06  0:06 ` [PATCH v18 05/12] ALSA: virtio: Recover PCM state after a failed start Joonho Lee
2026-11-06  0:26   ` sashiko-bot
2026-11-06  0:06 ` [PATCH v18 06/12] ALSA: virtio: Retain queued messages through device reset Joonho Lee
2026-11-06  0:31   ` sashiko-bot
2026-11-06  0:06 ` [PATCH v18 07/12] ALSA: virtio: retain PCM DMA pages and validate capture ring ownership Joonho Lee
2026-11-06  0:36   ` sashiko-bot
2026-11-06  0:06 ` [PATCH v18 08/12] ALSA: virtio: Keep control payloads alive through DMA completion Joonho Lee
2026-11-06  0:14   ` sashiko-bot
2026-11-06  0:06 ` [PATCH v18 09/12] ALSA: virtio: wait through signals for PCM teardown Joonho Lee
2026-11-06  0:22   ` sashiko-bot
2026-11-06  0:06 ` [PATCH v18 10/12] ALSA: virtio: serialize staged capture lifecycle and defer paused XRUNs Joonho Lee
2026-11-06  0:30   ` sashiko-bot
2026-11-06  0:06 ` [PATCH v18 11/12] ALSA: virtio: prioritize staged capture period work Joonho Lee
2026-11-06  0:20   ` sashiko-bot
2026-11-06  0:06 ` [PATCH v18 12/12] docs: describe virtio-sound capture options Joonho Lee
2026-11-06  0:17   ` sashiko-bot

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.