Messages in this thread Patch in this message | | | Date | Sat, 23 Jan 2021 13:42:03 +0100 | From | Takashi Iwai <> | Subject | Re: bisected regression in v5.11-rc1 snd-usb-audio |
| |
On Sat, 23 Jan 2021 12:08:02 +0100, Jamie Heilman wrote: > > > If the problem is still seen with the very latest Linus tree and the > > previous patch, please enable the dyndbg, e.g. pass dydbg=+p option to > > snd-usb-audio module, i.e. reload like > > modprobe snd-usb-audio dydbg=+p > > or boot with > > snd_usb_audio.dyndbg=+p > > boot option, retest, and give the kernel messages. > > OK, updated to 5.11.0-rc4-00202-gfe75a21824e7, repatched & rebuilt with: > CONFIG_SND_DEBUG=y > CONFIG_SND_CTL_VALIDATION=y > CONFIG_DYNAMIC_DEBUG=y > CONFIG_DYNAMIC_DEBUG_CORE=y > > and added dyndbg=+p to my snd-usb-audio options, dmesg after an > attempted aplay execution is attached. (snip) > [ 108.941521] WARNING: CPU: 0 PID: 2776 at sound/core/pcm_lib.c:1148 snd_pcm_hw_rule_add+0xd3/0x160 [snd_pcm]
OK, this must be the culprit of the weird behavior. I totally overlooked that the max dependencies are three because of the terminator.
Could you try the patch below in addition?
thanks,
Takashi
--- a/include/sound/pcm.h +++ b/include/sound/pcm.h @@ -229,7 +229,7 @@ typedef int (*snd_pcm_hw_rule_func_t)(struct snd_pcm_hw_params *params, struct snd_pcm_hw_rule { unsigned int cond; int var; - int deps[4]; + int deps[5]; snd_pcm_hw_rule_func_t func; void *private;
| |