Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.debian.kernel > #94772
| From | "smg" <smgdream@foxmail.com> |
|---|---|
| Newsgroups | linux.debian.bugs.dist, linux.debian.kernel |
| Subject | Bug#1152888: Regression: MOTU M4 USB audio playback fails with EIO on Linux 6.12.115 (works on 6.12.113) |
| Date | 2026-11-04 16:20 +0100 |
| Message-ID | <NVKWl-9OTy-1@gated-at.bofh.it> (permalink) |
| References | <NV7BE-9tvH-1@gated-at.bofh.it> |
| Organization | linux.* mail to news gateway |
Cross-posted to 2 groups.
Hi Salvatore,
answering the question from your Message #42: yes, 70b4db7d2581 on top of
6.12.115-2 fixes it. Confirmed on real hardware, and on a device from a
different vendor (Topping, not MOTU).
Device: Topping E2x2, USB ID 152a:8752 (XMOS/Thesycon UAC2)
Playback endpoint 0x01 (OUT, ASYNC), implicit feedback via EP 0x81
How it was built
I rebuilt only sound/usb/snd-usb-audio.ko, against the Debian 6.12.115-2
configuration and the Module.symvers shipped in
linux-headers-6.12.115+deb13.1-amd64, using gcc-14, the same compiler
Debian used for this kernel. The resulting module has an identical
vermagic:
6.12.115+deb13.1-amd64 SMP preempt mod_unload modversions
Baseline sanity check: built *without* the patch, prepare_playback_urb()
comes out at exactly the same size as in the shipped module (1653 bytes),
so the build environment reproduces Debian's build. With the patch applied
it is 1646 bytes, and the disassembly contains:
imul %r10d,%edx
cmp %edx,0x8(%r12)
i.e. (frames + counts) * stride compared against ctx->buffer_size.
A correction to my previous message
I wrote that ctx->buffer_size might not exist in 6.12.y. That was wrong.
It does exist - struct snd_urb_ctx in sound/usb/card.h has:
unsigned int buffer_size; /* size of data buffer, if data URB */
and it is assigned unconditionally in data_ep_set_params() in
sound/usb/endpoint.c:
u->buffer_size = maxsize * u->packets;
That line is outside the "if (usb_pipein(ep->pipe) || ep->implicit_fb_sync)"
branch, so the value is valid for capture, implicit-feedback playback and
plain playback alike. Consequently 70b4db7d2581 applies to 6.12.y as-is.
No substitute such as subs->buffer_bytes is needed.
Before / after
Before (6.12.115-2, stock module), while playing:
state: RUNNING
delay : 4608 (constant)
hw_ptr : 0 (never advances)
appl_ptr : 4608
After (6.12.115-2 + 70b4db7d2581), while playing:
state: RUNNING
delay : 7222
hw_ptr : 701497
appl_ptr : 708630
hw_ptr advances continuously and the output is audible again.
Disclosure: I worked on this together with an LLM-based assistant. It
helped with the source analysis, with preparing the module build and
with drafting this message. I reviewed all of it, and I ran the builds
and the hardware tests myself on the machine described above; the
measurements quoted here come from my own system.
Thanks,
smg <smgdream@foxmail.com>
Back to linux.debian.kernel | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Bug#1152888: Regression: MOTU M4 USB audio playback fails with EIO on Linux 6.12.115 (works on 6.12.113) Benjamin Scherrer <benjamin@wagnerbrutal.de> - 2026-11-02 22:20 +0100
Processed: Re: Bug#1152888: Regression: MOTU M4 USB audio playback fails with EIO on Linux 6.12.115 (works on 6.12.113) "Debian Bug Tracking System" <owner@bugs.debian.org> - 2026-11-03 17:20 +0100
Bug#1152888: Regression: MOTU M4 USB audio playback fails with EIO on Linux 6.12.115 (works on 6.12.113) Salvatore Bonaccorso <carnil@debian.org> - 2026-11-03 17:20 +0100
Bug#1152888: Regression: MOTU M4 USB audio playback fails with EIO on Linux 6.12.115 (works on 6.12.113) Benjamin Scherrer <benjamin@wagnerbrutal.de> - 2026-11-03 23:50 +0100
Bug#1152888: Regression: MOTU M4 USB audio playback fails with EIO on Linux 6.12.115 (works on 6.12.113) Sebastian Kiesel <sebastian-debian-reportbug@skiesel.de> - 2026-11-03 17:40 +0100
Bug#1152888: Michele Zelioli <michele.zelioli@ik.me> - 2026-11-03 21:50 +0100
Bug#1152888: MOTU M2 also affected by 6.12.115 USB audio regression Christopher Ludwin <cjludwin@pm.me> - 2026-11-03 23:10 +0100
Bug#1152888: Regression: MOTU M4 USB audio playback fails with EIO on Linux 6.12.115 (works on 6.12.113) "smg" <smgdream@foxmail.com> - 2026-11-04 04:20 +0100
Processed: Re: Bug#1152888: Regression: MOTU M4 USB audio playback fails with EIO on Linux 6.12.115 (works on 6.12.113) "Debian Bug Tracking System" <owner@bugs.debian.org> - 2026-11-04 06:00 +0100
Bug#1152888: Regression: MOTU M4 USB audio playback fails with EIO on Linux 6.12.115 (works on 6.12.113) "smg" <smgdream@foxmail.com> - 2026-11-04 16:20 +0100
Bug#1152888: Regression: MOTU M4 USB audio playback fails with EIO on Linux 6.12.115 (works on 6.12.113) Benjamin Scherrer <benjamin@wagnerbrutal.de> - 2026-11-04 17:30 +0100
Bug#1152888: Regression: MOTU M4 USB audio playback fails with EIO on Linux 6.12.115 (works on 6.12.113) Sebastian Kiesel <sebastian-debian-reportbug@skiesel.de> - 2026-11-04 18:50 +0100
Processed: Re: Bug#1152888: Regression: MOTU M4 USB audio playback fails with EIO on Linux 6.12.115 (works on 6.12.113) "Debian Bug Tracking System" <owner@bugs.debian.org> - 2026-11-05 07:50 +0100
csiph-web