[PATCH] ALSA: usb-audio: Clear fixed clock rate at closing EP

Jason A. Donenfeld Jason at zx2c4.com
Wed Sep 7 12:19:01 CEST 2022


On Wed, Sep 7, 2022 at 12:04 PM Takashi Iwai <tiwai at suse.de> wrote:
>
> The recent commit c11117b634f4 ("ALSA: usb-audio: Refcount multiple
> accesses on the single clock") tries to manage the clock rate shared
> by several endpoints.  This was intended for avoiding the unmatched
> rate by a different endpoint, but unfortunately, it introduced a
> regression for PulseAudio and pipewire, too; those applications try to
> probe the multiple possible rates (44.1k and 48kHz) and setting up the
> normal rate fails but only the last rate is applied.
>
> The cause is that the last sample rate is still left to the clock
> reference even after closing the endpoint, and this value is still
> used at the next open.  It happens only when applications set up via
> PCM prepare but don't start/stop the stream; the rate is reset when
> the stream is stopped, but it's not cleared at close.
>
> This patch addresses the issue above, simply by clearing the rate set
> in the clock reference at the last close of each endpoint.

Tested-by: Jason A. Donenfeld <Jason at zx2c4.com>


More information about the Alsa-devel mailing list