All of lore.kernel.org
 help / color / mirror / Atom feed
From: sashiko-bot@kernel.org
To: "Joonho Lee" <mynameisjune111@gmail.com>
Cc: virtualization@lists.linux.dev,
	"Michael S. Tsirkin" <mst@redhat.com>,
	"Eugenio Perez" <eperezma@redhat.com>
Subject: Re: [PATCH v29 07/17] ALSA: virtio: Recover PCM state after a failed start
Date: Thu, 12 Nov 2026 06:13:22 +0000	[thread overview]
Message-ID: <sashiko-outbox-210502@kernel.org> (raw)
In-Reply-To: <20261112053446.73504-8-mynameisjune111@gmail.com>

> Capture trigger queues I/O messages before PCM_START. If the START
> message cannot be allocated or sent, transfers may remain queued, and
> ALSA does not invoke the action undo callback for the failed trigger.
> 
> Mark the stream stopped and disable transfers for every failed START
> path. Arm runtime->stop_operating so sync_stop releases pending I/O and
> prevents prepare, hw_params, or START retries until release succeeds.
> 
> Latch a transfer XRUN in both playback and capture, and schedule the
> existing period worker so a running or draining core stream sees the
> pointer error. This also retires a failed playback START during drain,
> where drain-init can already have advanced the core state to DRAINING.
> 
> The stopped flag is shared with ACK callbacks that can run without the
> ALSA stream lock. Protect every stopped access with vss->lock. Read the
> pending message count under the same lock in open and hw_params. In
> sync_stop, decide whether RELEASE is needed and mark the stream stopped
> in one locked transition; leave it stopped when release or draining
> fails.
> 
> Always cancel elapsed-period work in sync_stop, even when no RELEASE is
> needed.
> 
> Record the RELEASE obligation after successful PREPARE and clear it as
> soon as RELEASE succeeds. If the subsequent RX wait fails, retry that
> wait without submitting RELEASE again.
> 
> Fixes: da76e9f3e43a ("ALSA: virtio: PCM substream operators")
> Assisted-by: LLM
> Signed-off-by: Joonho Lee <mynameisjune111@gmail.com>

Sashiko has reviewed this patch and found no issues.

-- 
Sashiko AI review · https://sashiko.dev/#/patchset/20261112053446.73504-1-mynameisjune111@gmail.com?part=7


  reply	other threads:[~2026-11-12  6:13 UTC|newest]

Thread overview: 35+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-11-12  5:34 [PATCH v29 00/17] ALSA: virtio: preserve PCM progress Joonho Lee
2026-11-12  5:34 ` [PATCH v29 01/17] ALSA: pcm: mark stop-threshold accesses for capture policy sampling Joonho Lee
2026-11-12  5:39   ` sashiko-bot
2026-11-12  5:34 ` [PATCH v29 02/17] ALSA: pcm: report partial progress under the stream lock Joonho Lee
2026-11-12  5:46   ` sashiko-bot
2026-11-12  5:34 ` [PATCH v29 03/17] ALSA: pcm: add an optional reset operation " Joonho Lee
2026-11-12  5:44   ` sashiko-bot
2026-11-12  5:34 ` [PATCH v29 04/17] ALSA: pcm: notify drivers after linked prepare completes Joonho Lee
2026-11-12  5:53   ` sashiko-bot
2026-11-12  5:34 ` [PATCH v29 05/17] ALSA: pcm: serialize linked buffer actions Joonho Lee
2026-11-12  5:43   ` sashiko-bot
2026-11-12  5:34 ` [PATCH v29 06/17] ALSA: virtio: propagate playback send failures through ACK Joonho Lee
2026-11-12  6:02   ` sashiko-bot
2026-11-12  5:34 ` [PATCH v29 07/17] ALSA: virtio: Recover PCM state after a failed start Joonho Lee
2026-11-12  6:13   ` sashiko-bot [this message]
2026-11-12  5:34 ` [PATCH v29 08/17] ALSA: virtio: Retain queued messages through device reset Joonho Lee
2026-11-12  6:00   ` sashiko-bot
2026-11-12  5:34 ` [PATCH v29 09/17] ALSA: virtio: bound PCM transfers and retain DMA buffers Joonho Lee
2026-11-12  6:00   ` sashiko-bot
2026-11-12  5:34 ` [PATCH v29 10/17] ALSA: virtio: Keep control payloads alive through DMA completion Joonho Lee
2026-11-12  5:44   ` sashiko-bot
2026-11-12  5:34 ` [PATCH v29 11/17] ALSA: virtio: wait through signals for PCM teardown Joonho Lee
2026-11-12  5:49   ` sashiko-bot
2026-11-12  5:34 ` [PATCH v29 12/17] ALSA: virtio: use request-owned capture and serialize recovery Joonho Lee
2026-11-12  6:08   ` sashiko-bot
2026-11-12  5:34 ` [PATCH v29 13/17] ALSA: virtio: prioritize capture period work Joonho Lee
2026-11-12  5:46   ` sashiko-bot
2026-11-12  5:34 ` [PATCH v29 14/17] docs: describe virtio-sound capture options Joonho Lee
2026-11-12  5:46   ` sashiko-bot
2026-11-12  5:34 ` [PATCH v29 15/17] ALSA: virtio: reject invalid playback completions Joonho Lee
2026-11-12  5:53   ` sashiko-bot
2026-11-12  5:34 ` [PATCH v29 16/17] ALSA: pcm: add an explicit application pointer to indirect playback transfer Joonho Lee
2026-11-12  5:51   ` sashiko-bot
2026-11-12  5:34 ` [PATCH v29 17/17] ALSA: virtio: preserve playback progress across pause and buffer access Joonho Lee
2026-11-12  6:04   ` sashiko-bot

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=sashiko-outbox-210502@kernel.org \
    --to=sashiko-bot@kernel.org \
    --cc=eperezma@redhat.com \
    --cc=mst@redhat.com \
    --cc=mynameisjune111@gmail.com \
    --cc=sashiko-reviews@lists.linux.dev \
    --cc=virtualization@lists.linux.dev \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.