XPost: linux.debian.bugs.dist
From:
jamieforth@gmail.com
Package: src:linux
Version: 6.12.30-1~bpo12+1
Severity: normal
Dear Maintainer,
* What led up to the situation?
Playing sound via a Focusrite Clarett 8Pre USB audio interface causes
a regular glitch in the sound every ~60 seconds, accompanied by the
kernel log message `retire_capture_urb: N callbacks suppressed'.
Occasional xruns are reported by pw-top, but not consistently with the glitch/retire_capture_urb warning.
This only seems to happen with Linux 6.12* amd64 kernels.
1. Boot a backported Linux 6.12* kernel in bookworm.
Tested with:
- linux-image-6.12.12+bpo-amd64
- linux-image-6.12.30+bpo-amd64
2. Connect the USB interface and set as the default output device.
3. Play a sound.
Tested with:
- speaker-test -t sine -c 2
- mplayer -ao alsa|pulse|jack
* What exactly did you do (or not do) that was effective (or
ineffective)?
Ineffective:
- Disabling pipewire/wireplumber/pulseaudio
- Changing ALSA buffer-size and period-num
- With or without threadirqs
- rtprio settings look fine and audio threads are given the same
priorities under all kernel versions
- Using the same USB interface with a different laptop running trixie
(linux-image-6.12.33+deb13-amd64)
Effective (this laptop):
- Playing sound through internal audio hardware (6.1 and 6.12
kernels)
- Playing sound through the same USB interface when running a stable
bookworm 6.1 kernel (e.g. linux-image-6.1.0-37-amd64).
* What was the outcome of this action?
When running a Linux 6.12 kernel (backported in bookworm, or seemingly
also in trixie) playing sound in various ways through a USB audio
interface results in glitching and retire_capture_urb warnings.
* What outcome did you expect instead?
I would expect the same behaviour as observed with Linux 6.1 kernels.
* Further info
There are no differences in default ALSA parameters running under 6.1
or 6.12 kernels.
$ cat /proc/asound/USB/pcm0c/sub0/sw_params
access: MMAP_INTERLEAVED
format: S32_LE
subformat: STD
channels: 10
rate: 48000 (48000/1)
period_size: 128
buffer_size: 32768
$ cat /proc/asound/USB/pcm0c/sub0/sw_params
tstamp_mode: ENABLE
period_step: 1
avail_min: 128
start_threshold: 9223372036854775807
stop_threshold: 32768
silence_threshold: 0
silence_size: 0
boundary: 4611686018427387904
Diff between udevadm reported device info under 6.1 and 6.12 kernels.
$ udevadm info /dev/snd/by-id/usb-Focusrite_Clarett_8Pre_USB_00005283-00
5c5
< D: c 116:16
---
D: c 116:17
14c14
< E: MINOR=16
---
E: MINOR=17
$ udevadm info --attribute-walk /dev/snd/by-id/usb-Focusrite_Clarett_8Pre_USB_00005283-00
135c135
< ATTRS{bcdDevice}=="0601"
---
ATTRS{bcdDevice}=="0612"
145c145
< ATTRS{manufacturer}=="Linux 6.1.0-37-amd64 xhci-hcd"
---
ATTRS{manufacturer}=="Linux 6.12.30+bpo-amd64 xhci-hcd"
193c193
< ATTRS{irq}=="148"
---
ATTRS{irq}=="155"
197c197,204
< ATTRS{msi_irqs/148}=="msi"
---
ATTRS{msi_irqs/155}=="msi"
ATTRS{msi_irqs/156}=="msi"
ATTRS{msi_irqs/157}=="msi"
ATTRS{msi_irqs/158}=="msi"
ATTRS{msi_irqs/159}=="msi"
ATTRS{msi_irqs/160}=="msi"
ATTRS{msi_irqs/161}=="msi"
ATTRS{msi_irqs/162}=="msi"
219d225
< ATTRS{resource0}=="(not readable)"
The additional IRQs listed under the 6.12 kernel don't appear to
exist, only irq/155-xhci_hcd in this case.
Jamie
-- Package-specific info:
** Version:
Linux version 6.12.30+bpo-amd64 (debian-kernel@l