Linux Sound subsystem development
 help / color / mirror / Atom feed
From: Cezary Rojewski <cezary.rojewski@intel.com>
To: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Cc: Jaroslav Kysela <perex@perex.cz>,
	Liam Girdwood <lgirdwood@gmail.com>,
	Mark Brown <broonie@kernel.org>, Takashi Iwai <tiwai@suse.com>,
	<linux-sound@vger.kernel.org>
Subject: Re: [RFC][PATCH v4 0/2] ASoC: core: use Complete rebind cards by default for all users
Date: Sun, 26 Apr 2026 16:53:48 +0200	[thread overview]
Message-ID: <62019496-ec5e-41d5-a17c-7739b829f15b@intel.com> (raw)
In-Reply-To: <87eck7k868.wl-kuninori.morimoto.gx@renesas.com>

[-- Attachment #1: Type: text/plain, Size: 2185 bytes --]

On 2026-04-22 5:03 AM, Kuninori Morimoto wrote:
> 
> Hi Mark, Cezary
> 
> Topology is using (A), but its paired (B) might not be called.
> Because of it, it will be hungup, because soc_cleanup_card_resources()
> will access to devm_kzalloc():ed link (= rtd->link) which was already
> lost in that timing.
>      
> 	(A) snd_soc_add_pcm_runtimes()
> 	(B) snd_soc_remove_pcm_runtime()
>      
> To solve this issue, it uses devres_alloc() and call (B) in topology.
> 
> But I can't test it. It needs Acked-by / Tested-by from Cezary.
> I added [RFC]
> 
> v3 -> v4
> 	- call topology snd_soc_remove_pcm_runtime()
> 	- rebind() function will handle all cards by itself.
> 
> v2 -> v3
> 	- separate bind/unbind/rebind and unbind list handling
> 	- tidyup git-log and Subject
> 
> v1 -> v2
> 	- tidyup handling of client_mutex

I've tested it out and results (KASAN) are very similar to the previous 
revisions.  Attaching exemplary dmesg for the exact same order of 
operations as last time.

In regard to technical part, I have to disagree with the approach taken 
in v4.  The goal behind the series: make the code implementing the 
re-binding feature easier to follow.  Here, the following are added:

- soc_tplg_remove_pcm()
- soc_tplg_link_release()
- struct tplg_link

There is soc_tplg_remove_link() already, I believe introducing 
soc_tplg_link_release(), an "unbalanced" function goes against the goal 
of the patch.  Internal struct is a heavy hitter, I'd argue it alone 
defeats the purpose of the patch.

The delta of this series 1) when compared against the proposition of 
mine 2) - attachment found in v3 review:

1) 5 files changed, 71 insertions(+), 68 deletions(-)
2) 3 files changed, 17 insertions(+), 57 deletions(-)

Perhaps we can achieve the goal in multiple steps.  Simplify the code 
implementing the feature by merging 2) and work from there if you 
believe the readability still isn't where it should be.

Side note: leaving the current function names as is would make it easier 
to review the series. Right now, after 'git am' I have to rename 
everything myself and amend the changes to even begin accessing the 
actual impact of the code.


Kind regards,
Czarek

[-- Attachment #2: dmesg_rfc_v4.txt --]
[-- Type: text/plain, Size: 38109 bytes --]

Summary of operations:

blacklist snd_soc_avs
blacklist snd_soc_pcm3168a
blacklist snd_soc_pcm3168a_i2c
boot machine
modprobe snd_soc_avs
modprobe snd_soc_pcm3168a
modprobe snd_soc_pcm3168a_i2c
rmmod snd_soc_avs_pcm3168a


[    0.000000] Linux version 7.0.0-rc2+ (crojewsk@crojewsk-ctrl) (gcc (Ubuntu 11.4.0-1ubuntu1~22.04.3) 11.4.0, GNU ld (GNU Binutils for Ubuntu) 2.38) #1924 SMP PREEMPT_DYNAMIC Sun Apr 26 16:09:25 CEST 2026

(...)

[  243.744327] snd_soc_core: unknown parameter 'dybdbg' ignored
[  243.746438] snd_soc_core:snd_soc_register_dai: faux_driver snd-soc-dummy: ASoC: Registered DAI 'snd-soc-dummy-dai'
[  243.796639] snd_hda_core:snd_hdac_bus_parse_capabilities: snd_soc_avs 0000:00:1f.3: Capability version: 0x0
[  243.796651] snd_hda_core:snd_hdac_bus_parse_capabilities: snd_soc_avs 0000:00:1f.3: HDA capability ID: 0x2
[  243.796657] snd_hda_core:snd_hdac_bus_parse_capabilities: snd_soc_avs 0000:00:1f.3: Found ML capability
[  243.796673] snd_hda_core:snd_hdac_bus_parse_capabilities: snd_soc_avs 0000:00:1f.3: Capability version: 0x0
[  243.796677] snd_hda_core:snd_hdac_bus_parse_capabilities: snd_soc_avs 0000:00:1f.3: HDA capability ID: 0x3
[  243.796682] snd_hda_core:snd_hdac_bus_parse_capabilities: snd_soc_avs 0000:00:1f.3: Found PP capability offset=800
[  243.796699] snd_hda_core:snd_hdac_bus_parse_capabilities: snd_soc_avs 0000:00:1f.3: Capability version: 0x0
[  243.796703] snd_hda_core:snd_hdac_bus_parse_capabilities: snd_soc_avs 0000:00:1f.3: HDA capability ID: 0x1
[  243.796708] snd_hda_core:snd_hdac_bus_parse_capabilities: snd_soc_avs 0000:00:1f.3: Found GTS capability offset=500
[  243.796724] snd_hda_core:snd_hdac_bus_parse_capabilities: snd_soc_avs 0000:00:1f.3: Capability version: 0x0
[  243.796728] snd_hda_core:snd_hdac_bus_parse_capabilities: snd_soc_avs 0000:00:1f.3: HDA capability ID: 0x5
[  243.796733] snd_hda_core:snd_hdac_bus_parse_capabilities: snd_soc_avs 0000:00:1f.3: Found DRSM capability
[  243.796748] snd_hda_core:snd_hdac_bus_parse_capabilities: snd_soc_avs 0000:00:1f.3: Capability version: 0x0
[  243.796753] snd_hda_core:snd_hdac_bus_parse_capabilities: snd_soc_avs 0000:00:1f.3: HDA capability ID: 0x4
[  243.796757] snd_hda_core:snd_hdac_bus_parse_capabilities: snd_soc_avs 0000:00:1f.3: Found SPB capability
[  243.796773] snd_hda_ext_core:snd_hdac_ext_bus_get_ml_capabilities: snd_soc_avs 0000:00:1f.3: In snd_hdac_ext_bus_get_ml_capabilities Link count: 2
[  243.798620] snd_soc_avs 0000:00:1f.3: bound 0000:00:02.0 (ops intel_audio_component_bind_ops [i915])
[  243.800639] snd_hda_core:snd_hdac_display_power: snd_soc_avs 0000:00:1f.3: display power enable
[  243.800661] snd_hda_core:snd_hdac_set_codec_wakeup: snd_soc_avs 0000:00:1f.3: enable codec wakeup
[  243.803669] snd_hda_core:snd_hdac_set_codec_wakeup: snd_soc_avs 0000:00:1f.3: disable codec wakeup
[  243.809459] snd_hda_core:snd_hdac_bus_reset_link: snd_soc_avs 0000:00:1f.3: codec_mask = 0x4
[  243.809600] snd_soc_avs:probe_codec: snd_soc_avs 0000:00:1f.3: codec #2 probed OK: 0x8086281f
[  243.828220] snd_soc_core:snd_soc_register_dai: snd_hda_codec_intelhdmi hda-8086281f:0:02: ASoC: Registered DAI 'hda-codec-binding-dai'
[  243.830435] snd_hda_core:snd_hdac_display_power: snd_soc_avs 0000:00:1f.3: display power disable
[  243.961267] snd_soc_avs:avs_dsp_process_notification: snd_soc_avs 0000:00:1f.3: FW READY 0x9b080000
[  243.969006] snd_soc_avs 0000:00:1f.3: Unrecognized hw config: 10
[  243.970941] snd_soc_avs 0000:00:1f.3: Unrecognized fw param: 26
[  243.971406] snd_soc_core:snd_soc_register_dai: snd_soc_avs 0000:00:1f.3: ASoC: Registered DAI 'Probe Extraction CPU DAI'
[  243.971420] snd_soc_avs:avs_register_dmic_board: snd_soc_avs 0000:00:1f.3: no DMIC endpoints present
[  243.971968] snd_soc_core:snd_soc_register_dai: snd_soc_avs 0000:00:1f.3: ASoC: Registered DAI 'SSP0 Pin'
[  243.971989] snd_soc_core:snd_soc_register_dai: snd_soc_avs 0000:00:1f.3: ASoC: Registered DAI 'SSP2 Pin'
[  243.972301] snd_soc_avs:avs_register_sdw_boards: snd_soc_avs 0000:00:1f.3: find sdw board: sdw:0:0:025d:0711:00
[  243.972312] snd_soc_avs:avs_register_sdw_boards: snd_soc_avs 0000:00:1f.3: find sdw board: sdw:0:1:025d:1308:00
[  243.988330] snd_soc_core:snd_soc_compensate_channel_connection_map: avs_probe_mb avs_probe_mb.2.auto: dai_link (null)
[  243.988347] snd_soc_core:snd_soc_compensate_channel_connection_map: avs_probe_mb avs_probe_mb.2.auto:   [0] cpu0 <-> codec0
[  243.988363] snd_soc_core:snd_soc_add_pcm_runtime: avs_probe_mb avs_probe_mb.2.auto: ASoC: binding Compress Probe Capture
[  243.989109] snd_soc_core:snd_soc_dapm_new_dai_widgets: snd_soc_avs 0000:00:1f.3: ASoC: adding Probe Extraction widget
[  243.989256] snd_soc_core:snd_soc_new_compress: avs_probe_mb avs_probe_mb.2.auto: Compress ASoC: snd-soc-dummy-dai <-> Probe Extraction CPU DAI mapping ok
[  243.991197] snd_soc_core:snd_soc_compensate_channel_connection_map: avs_pcm3168a avs_pcm3168a.3.auto: dai_link (null)
[  243.991214] snd_soc_core:snd_soc_compensate_channel_connection_map: avs_pcm3168a avs_pcm3168a.3.auto:   [0] cpu0 <-> codec0
[  243.991226] snd_soc_core:snd_soc_add_pcm_runtime: avs_pcm3168a avs_pcm3168a.3.auto: ASoC: binding SSP0-Codec-dac
[  243.991238] snd_soc_core:soc_dai_link_sanity_check: avs_pcm3168a avs_pcm3168a.3.auto: ASoC: Component i2c-PCM3168A:00 not found for link SSP0-Codec-dac
[  243.991255] snd_soc_core:snd_soc_compensate_channel_connection_map: avs_hdaudio avs_hdaudio.4.auto: dai_link (null)
[  243.991272] snd_soc_core:snd_soc_compensate_channel_connection_map: avs_hdaudio avs_hdaudio.4.auto:   [0] cpu0 <-> codec0
[  243.991284] snd_soc_core:snd_soc_add_pcm_runtime: avs_hdaudio avs_hdaudio.4.auto: ASoC: binding hda-card-binding-link
[  243.992340] snd_hda_core:snd_hdac_display_power: snd_soc_avs 0000:00:1f.3: display power enable
[  243.992365] snd_hda_core:snd_hdac_set_codec_wakeup: snd_soc_avs 0000:00:1f.3: enable codec wakeup
[  243.995402] snd_hda_core:snd_hdac_set_codec_wakeup: snd_soc_avs 0000:00:1f.3: disable codec wakeup
[  243.997683] snd_hda_ext_core:snd_hdac_ext_bus_link_get: snd_soc_avs 0000:00:1f.3: codec_mask = 0x4
[  244.018560] snd_hda_codec_hdmi:snd_hda_hdmi_generic_build_pcms: snd_hda_codec_intelhdmi hda-8086281f:0:02: hdmi: pcm_num set to 4
[  244.018679] snd_hda_codec_intelhdmi hda-8086281f:0:02: creating for HDMI 0 0
[  244.018703] snd_hda_codec_intelhdmi hda-8086281f:0:02: skipping capture dai for HDMI 0
[  244.018711] snd_hda_codec_intelhdmi hda-8086281f:0:02: creating for HDMI 1 1
[  244.018731] snd_hda_codec_intelhdmi hda-8086281f:0:02: skipping capture dai for HDMI 1
[  244.018739] snd_hda_codec_intelhdmi hda-8086281f:0:02: creating for HDMI 2 2
[  244.018758] snd_hda_codec_intelhdmi hda-8086281f:0:02: skipping capture dai for HDMI 2
[  244.018766] snd_hda_codec_intelhdmi hda-8086281f:0:02: creating for HDMI 3 3
[  244.018785] snd_hda_codec_intelhdmi hda-8086281f:0:02: skipping capture dai for HDMI 3
[  244.018816] snd_soc_core:snd_soc_register_dai: snd_hda_codec_intelhdmi hda-8086281f:0:02: ASoC: Registered DAI 'HDMI 0'
[  244.018827] snd_soc_core:snd_soc_dapm_new_dai_widgets: snd_hda_codec_intelhdmi hda-8086281f:0:02: ASoC: adding HDMI 0 Playback widget
[  244.018891] snd_soc_core:snd_soc_register_dai: snd_hda_codec_intelhdmi hda-8086281f:0:02: ASoC: Registered DAI 'HDMI 1'
[  244.018901] snd_soc_core:snd_soc_dapm_new_dai_widgets: snd_hda_codec_intelhdmi hda-8086281f:0:02: ASoC: adding HDMI 1 Playback widget
[  244.018965] snd_soc_core:snd_soc_register_dai: snd_hda_codec_intelhdmi hda-8086281f:0:02: ASoC: Registered DAI 'HDMI 2'
[  244.018975] snd_soc_core:snd_soc_dapm_new_dai_widgets: snd_hda_codec_intelhdmi hda-8086281f:0:02: ASoC: adding HDMI 2 Playback widget
[  244.019049] snd_soc_core:snd_soc_register_dai: snd_hda_codec_intelhdmi hda-8086281f:0:02: ASoC: Registered DAI 'HDMI 3'
[  244.019059] snd_soc_core:snd_soc_dapm_new_dai_widgets: snd_hda_codec_intelhdmi hda-8086281f:0:02: ASoC: adding HDMI 3 Playback widget
[  244.019307] snd_soc_core:snd_soc_register_dai: snd_soc_avs 0000:00:1f.3: ASoC: Registered DAI 'hdaudio-cpu0'
[  244.019319] snd_soc_core:snd_soc_dapm_new_dai_widgets: snd_soc_avs 0000:00:1f.3: ASoC: adding hdaudio-cpu0 Tx widget
[  244.019413] snd_soc_core:snd_soc_register_dai: snd_soc_avs 0000:00:1f.3: ASoC: Registered DAI 'hdaudio-cpu1'
[  244.019423] snd_soc_core:snd_soc_dapm_new_dai_widgets: snd_soc_avs 0000:00:1f.3: ASoC: adding hdaudio-cpu1 Tx widget
[  244.019511] snd_soc_core:snd_soc_register_dai: snd_soc_avs 0000:00:1f.3: ASoC: Registered DAI 'hdaudio-cpu2'
[  244.019521] snd_soc_core:snd_soc_dapm_new_dai_widgets: snd_soc_avs 0000:00:1f.3: ASoC: adding hdaudio-cpu2 Tx widget
[  244.019618] snd_soc_core:snd_soc_register_dai: snd_soc_avs 0000:00:1f.3: ASoC: Registered DAI 'hdaudio-cpu3'
[  244.019628] snd_soc_core:snd_soc_dapm_new_dai_widgets: snd_soc_avs 0000:00:1f.3: ASoC: adding hdaudio-cpu3 Tx widget
[  244.020914] snd_soc_avs:__avs_component_probe: avs_hdaudio avs_hdaudio.4.auto: probing avs_hdaudio.4.auto card AVS HDMI
[  244.020944] snd_soc_core:soc_tplg_load_header: avs_hdaudio avs_hdaudio.4.auto: ASoC: Got 0x524 bytes of type 8 version 0 vendor 0 at pass 0
[  244.021058] snd_soc_avs:avs_manifest: snd_soc_avs 0000:00:1f.3: init config lookup failed: -2
[  244.021071] snd_soc_core:soc_tplg_load_header: avs_hdaudio avs_hdaudio.4.auto: ASoC: Got 0xa90 bytes of type 5 version 0 vendor 0 at pass 3
[  244.021085] snd_soc_core:soc_tplg_dapm_widget_elems_load: avs_hdaudio avs_hdaudio.4.auto: ASoC: adding 8 DAPM widgets
[  244.021097] snd_soc_core:soc_tplg_dapm_widget_create: avs_hdaudio avs_hdaudio.4.auto: ASoC: creating DAPM widget hdmi1_fe id 17
[  244.021285] snd_soc_core:soc_tplg_dapm_widget_create: avs_hdaudio avs_hdaudio.4.auto: ASoC: creating DAPM widget hdmi1_be id 17
[  244.021442] snd_soc_core:soc_tplg_dapm_widget_create: avs_hdaudio avs_hdaudio.4.auto: ASoC: creating DAPM widget hdmi2_fe id 17
[  244.021628] snd_soc_core:soc_tplg_dapm_widget_create: avs_hdaudio avs_hdaudio.4.auto: ASoC: creating DAPM widget hdmi2_be id 17
[  244.021785] snd_soc_core:soc_tplg_dapm_widget_create: avs_hdaudio avs_hdaudio.4.auto: ASoC: creating DAPM widget hdmi3_fe id 17
[  244.021955] snd_soc_core:soc_tplg_dapm_widget_create: avs_hdaudio avs_hdaudio.4.auto: ASoC: creating DAPM widget hdmi3_be id 17
[  244.022111] snd_soc_core:soc_tplg_dapm_widget_create: avs_hdaudio avs_hdaudio.4.auto: ASoC: creating DAPM widget hdmi4_fe id 17
[  244.022281] snd_soc_core:soc_tplg_dapm_widget_create: avs_hdaudio avs_hdaudio.4.auto: ASoC: creating DAPM widget hdmi4_be id 17
[  244.022438] snd_soc_core:soc_tplg_load_header: avs_hdaudio avs_hdaudio.4.auto: ASoC: Got 0xe40 bytes of type 7 version 0 vendor 0 at pass 4
[  244.022519] snd_soc_core:snd_soc_register_dai: snd_soc_avs 0000:00:1f.3: ASoC: Registered DAI 'HDMI1-dai'
[  244.022529] snd_soc_core:snd_soc_dapm_new_dai_widgets: snd_soc_avs 0000:00:1f.3: ASoC: adding HDMI1-playback widget
[  244.022661] snd_soc_core:snd_soc_compensate_channel_connection_map: avs_hdaudio avs_hdaudio.4.auto: dai_link HDMI1
[  244.022671] snd_soc_core:snd_soc_compensate_channel_connection_map: avs_hdaudio avs_hdaudio.4.auto:   [0] cpu0 <-> codec0
[  244.022683] snd_soc_core:snd_soc_add_pcm_runtime: avs_hdaudio avs_hdaudio.4.auto: ASoC: binding HDMI1
[  244.023133] snd_soc_core:snd_soc_register_dai: snd_soc_avs 0000:00:1f.3: ASoC: Registered DAI 'HDMI2-dai'
[  244.023145] snd_soc_core:snd_soc_dapm_new_dai_widgets: snd_soc_avs 0000:00:1f.3: ASoC: adding HDMI2-playback widget
[  244.023284] snd_soc_core:snd_soc_compensate_channel_connection_map: avs_hdaudio avs_hdaudio.4.auto: dai_link HDMI2
[  244.023294] snd_soc_core:snd_soc_compensate_channel_connection_map: avs_hdaudio avs_hdaudio.4.auto:   [0] cpu0 <-> codec0
[  244.023306] snd_soc_core:snd_soc_add_pcm_runtime: avs_hdaudio avs_hdaudio.4.auto: ASoC: binding HDMI2
[  244.023883] snd_soc_core:snd_soc_register_dai: snd_soc_avs 0000:00:1f.3: ASoC: Registered DAI 'HDMI3-dai'
[  244.023895] snd_soc_core:snd_soc_dapm_new_dai_widgets: snd_soc_avs 0000:00:1f.3: ASoC: adding HDMI3-playback widget
[  244.024026] snd_soc_core:snd_soc_compensate_channel_connection_map: avs_hdaudio avs_hdaudio.4.auto: dai_link HDMI3
[  244.024037] snd_soc_core:snd_soc_compensate_channel_connection_map: avs_hdaudio avs_hdaudio.4.auto:   [0] cpu0 <-> codec0
[  244.024049] snd_soc_core:snd_soc_add_pcm_runtime: avs_hdaudio avs_hdaudio.4.auto: ASoC: binding HDMI3
[  244.024518] snd_soc_core:snd_soc_register_dai: snd_soc_avs 0000:00:1f.3: ASoC: Registered DAI 'HDMI4-dai'
[  244.024529] snd_soc_core:snd_soc_dapm_new_dai_widgets: snd_soc_avs 0000:00:1f.3: ASoC: adding HDMI4-playback widget
[  244.024663] snd_soc_core:snd_soc_compensate_channel_connection_map: avs_hdaudio avs_hdaudio.4.auto: dai_link HDMI4
[  244.024674] snd_soc_core:snd_soc_compensate_channel_connection_map: avs_hdaudio avs_hdaudio.4.auto:   [0] cpu0 <-> codec0
[  244.024685] snd_soc_core:snd_soc_add_pcm_runtime: avs_hdaudio avs_hdaudio.4.auto: ASoC: binding HDMI4
[  244.025134] snd_soc_core:soc_tplg_pcm_elems_load: avs_hdaudio avs_hdaudio.4.auto: ASoC: adding 4 PCM DAIs
[  244.025148] snd_soc_core:soc_tplg_load_header: avs_hdaudio avs_hdaudio.4.auto: ASoC: Got 0x630 bytes of type 4 version 0 vendor 0 at pass 5
[  244.025162] snd_soc_core:soc_tplg_dapm_graph_elems_load: avs_hdaudio avs_hdaudio.4.auto: ASoC: adding 12 DAPM routes for index 0
[  244.025917] avs_hdaudio avs_hdaudio.4.auto: ASoC: Parent card not yet available, widget card binding deferred
[  244.026308] snd_soc_core:snd_soc_compensate_channel_connection_map: avs_hdaudio avs_hdaudio.4.auto: dai_link (null)
[  244.026320] snd_soc_core:snd_soc_compensate_channel_connection_map: avs_hdaudio avs_hdaudio.4.auto:   [0] cpu0 <-> codec0
[  244.026331] snd_soc_core:snd_soc_add_pcm_runtime: avs_hdaudio avs_hdaudio.4.auto: ASoC: binding hda-8086281f:0:02 link0
[  244.026616] snd_soc_core:snd_soc_compensate_channel_connection_map: avs_hdaudio avs_hdaudio.4.auto: dai_link (null)
[  244.026626] snd_soc_core:snd_soc_compensate_channel_connection_map: avs_hdaudio avs_hdaudio.4.auto:   [0] cpu0 <-> codec0
[  244.026636] snd_soc_core:snd_soc_add_pcm_runtime: avs_hdaudio avs_hdaudio.4.auto: ASoC: binding hda-8086281f:0:02 link1
[  244.026913] snd_soc_core:snd_soc_compensate_channel_connection_map: avs_hdaudio avs_hdaudio.4.auto: dai_link (null)
[  244.026923] snd_soc_core:snd_soc_compensate_channel_connection_map: avs_hdaudio avs_hdaudio.4.auto:   [0] cpu0 <-> codec0
[  244.026932] snd_soc_core:snd_soc_add_pcm_runtime: avs_hdaudio avs_hdaudio.4.auto: ASoC: binding hda-8086281f:0:02 link2
[  244.027198] snd_soc_core:snd_soc_compensate_channel_connection_map: avs_hdaudio avs_hdaudio.4.auto: dai_link (null)
[  244.027207] snd_soc_core:snd_soc_compensate_channel_connection_map: avs_hdaudio avs_hdaudio.4.auto:   [0] cpu0 <-> codec0
[  244.027217] snd_soc_core:snd_soc_add_pcm_runtime: avs_hdaudio avs_hdaudio.4.auto: ASoC: binding hda-8086281f:0:02 link3
[  244.027554] snd_soc_core:soc_create_pcm: avs_hdaudio avs_hdaudio.4.auto: ASoC: registered pcm #0 ((null))
[  244.027564] snd_soc_core:soc_new_pcm: avs_hdaudio avs_hdaudio.4.auto: hda-codec-binding-dai <-> snd-soc-dummy-dai mapping ok
[  244.027892] snd_soc_core:soc_create_pcm: avs_hdaudio avs_hdaudio.4.auto: ASoC: registered pcm #0 HDMI1 (*)
[  244.027941] snd_soc_core:soc_new_pcm: avs_hdaudio avs_hdaudio.4.auto: snd-soc-dummy-dai <-> HDMI1-dai mapping ok
[  244.028143] snd_soc_core:soc_create_pcm: avs_hdaudio avs_hdaudio.4.auto: ASoC: registered pcm #1 HDMI2 (*)
[  244.028174] snd_soc_core:soc_new_pcm: avs_hdaudio avs_hdaudio.4.auto: snd-soc-dummy-dai <-> HDMI2-dai mapping ok
[  244.028346] snd_soc_core:soc_create_pcm: avs_hdaudio avs_hdaudio.4.auto: ASoC: registered pcm #2 HDMI3 (*)
[  244.028376] snd_soc_core:soc_new_pcm: avs_hdaudio avs_hdaudio.4.auto: snd-soc-dummy-dai <-> HDMI3-dai mapping ok
[  244.028551] snd_soc_core:soc_create_pcm: avs_hdaudio avs_hdaudio.4.auto: ASoC: registered pcm #3 HDMI4 (*)
[  244.028582] snd_soc_core:soc_new_pcm: avs_hdaudio avs_hdaudio.4.auto: snd-soc-dummy-dai <-> HDMI4-dai mapping ok
[  244.028639] snd_soc_core:soc_create_pcm: avs_hdaudio avs_hdaudio.4.auto: ASoC: registered pcm #5 ((null))
[  244.028645] snd_soc_core:soc_new_pcm: avs_hdaudio avs_hdaudio.4.auto: HDMI 0 <-> hdaudio-cpu0 mapping ok
[  244.028701] snd_soc_core:soc_create_pcm: avs_hdaudio avs_hdaudio.4.auto: ASoC: registered pcm #6 ((null))
[  244.028706] snd_soc_core:soc_new_pcm: avs_hdaudio avs_hdaudio.4.auto: HDMI 1 <-> hdaudio-cpu1 mapping ok
[  244.028762] snd_soc_core:soc_create_pcm: avs_hdaudio avs_hdaudio.4.auto: ASoC: registered pcm #7 ((null))
[  244.028767] snd_soc_core:soc_new_pcm: avs_hdaudio avs_hdaudio.4.auto: HDMI 2 <-> hdaudio-cpu2 mapping ok
[  244.028819] snd_soc_core:soc_create_pcm: avs_hdaudio avs_hdaudio.4.auto: ASoC: registered pcm #8 ((null))
[  244.028824] snd_soc_core:soc_new_pcm: avs_hdaudio avs_hdaudio.4.auto: HDMI 3 <-> hdaudio-cpu3 mapping ok
[  244.028835] snd_soc_core:dapm_connect_dai_routes: avs_hdaudio avs_hdaudio.4.auto: connected DAI link avs_hdaudio.4.auto:hdaudio-cpu0 Tx -> hda-8086281f:0:02:HDMI 0 Playback
[  244.028848] snd_soc_core:dapm_connect_dai_routes: avs_hdaudio avs_hdaudio.4.auto: connected DAI link avs_hdaudio.4.auto:hdaudio-cpu1 Tx -> hda-8086281f:0:02:HDMI 1 Playback
[  244.028859] snd_soc_core:dapm_connect_dai_routes: avs_hdaudio avs_hdaudio.4.auto: connected DAI link avs_hdaudio.4.auto:hdaudio-cpu2 Tx -> hda-8086281f:0:02:HDMI 2 Playback
[  244.028870] snd_soc_core:dapm_connect_dai_routes: avs_hdaudio avs_hdaudio.4.auto: connected DAI link avs_hdaudio.4.auto:hdaudio-cpu3 Tx -> hda-8086281f:0:02:HDMI 3 Playback
[  244.028884] avs_hdaudio avs_hdaudio.4.auto: avs_card_late_probe: mapping HDMI converter 1 to PCM 0 (000000003a4a367a)
[  244.028892] avs_hdaudio avs_hdaudio.4.auto: avs_card_late_probe: mapping HDMI converter 2 to PCM 1 (0000000074918243)
[  244.028898] avs_hdaudio avs_hdaudio.4.auto: avs_card_late_probe: mapping HDMI converter 3 to PCM 2 (000000009ef6d577)
[  244.028904] avs_hdaudio avs_hdaudio.4.auto: avs_card_late_probe: mapping HDMI converter 4 to PCM 3 (00000000f42b2b26)
[  244.041491] snd_hda_core:snd_hdac_display_power: snd_soc_avs 0000:00:1f.3: display power enable
[  244.046059] input: AVS HDMI HDMI/DP as /devices/platform/avs_hdaudio.4.auto/sound/card1/input3
[  244.046968] input: AVS HDMI HDMI/DP,pcm=1 as /devices/platform/avs_hdaudio.4.auto/sound/card1/input4
[  244.047860] input: AVS HDMI HDMI/DP,pcm=2 as /devices/platform/avs_hdaudio.4.auto/sound/card1/input5
[  244.048529] input: AVS HDMI HDMI/DP,pcm=3 as /devices/platform/avs_hdaudio.4.auto/sound/card1/input6
[  246.543804] snd_hda_core:snd_hdac_display_power: snd_soc_avs 0000:00:1f.3: display power disable
[  246.577246] snd_hda_core:snd_hdac_display_power: snd_soc_avs 0000:00:1f.3: display power disable
[  265.018282] pcm3168a i2c-PCM3168A:00: supply VDD1 not found, using dummy regulator
[  265.019449] pcm3168a i2c-PCM3168A:00: supply VDD2 not found, using dummy regulator
[  265.019959] pcm3168a i2c-PCM3168A:00: supply VCCAD1 not found, using dummy regulator
[  265.020419] pcm3168a i2c-PCM3168A:00: supply VCCAD2 not found, using dummy regulator
[  265.020852] pcm3168a i2c-PCM3168A:00: supply VCCDA1 not found, using dummy regulator
[  265.021254] pcm3168a i2c-PCM3168A:00: supply VCCDA2 not found, using dummy regulator
[  265.027399] snd_soc_core:snd_soc_register_dai: pcm3168a i2c-PCM3168A:00: ASoC: Registered DAI 'pcm3168a-dac'
[  265.027431] snd_soc_core:snd_soc_register_dai: pcm3168a i2c-PCM3168A:00: ASoC: Registered DAI 'pcm3168a-adc'
[  265.027447] snd_soc_core:snd_soc_compensate_channel_connection_map: avs_pcm3168a avs_pcm3168a.3.auto: dai_link (null)
[  265.027457] snd_soc_core:snd_soc_compensate_channel_connection_map: avs_pcm3168a avs_pcm3168a.3.auto:   [0] cpu0 <-> codec0
[  265.027469] snd_soc_core:snd_soc_add_pcm_runtime: avs_pcm3168a avs_pcm3168a.3.auto: ASoC: binding SSP0-Codec-dac
[  265.027771] snd_soc_core:snd_soc_compensate_channel_connection_map: avs_pcm3168a avs_pcm3168a.3.auto: dai_link (null)
[  265.027780] snd_soc_core:snd_soc_compensate_channel_connection_map: avs_pcm3168a avs_pcm3168a.3.auto:   [0] cpu0 <-> codec0
[  265.027790] snd_soc_core:snd_soc_add_pcm_runtime: avs_pcm3168a avs_pcm3168a.3.auto: ASoC: binding SSP2-Codec-adc
[  265.028643] snd_soc_core:snd_soc_dapm_new_dai_widgets: snd_soc_avs 0000:00:1f.3: ASoC: adding ssp0 Tx widget
[  265.028687] snd_soc_core:snd_soc_dapm_new_dai_widgets: snd_soc_avs 0000:00:1f.3: ASoC: adding ssp0 Rx widget
[  265.028732] snd_soc_core:snd_soc_dapm_new_dai_widgets: snd_soc_avs 0000:00:1f.3: ASoC: adding ssp2 Tx widget
[  265.028778] snd_soc_core:snd_soc_dapm_new_dai_widgets: snd_soc_avs 0000:00:1f.3: ASoC: adding ssp2 Rx widget
[  265.030033] snd_soc_avs:__avs_component_probe: avs_pcm3168a avs_pcm3168a.3.auto: probing avs_pcm3168a.3.auto card AVS I2S PCM3168A
[  265.030059] snd_soc_core:soc_tplg_load_header: avs_pcm3168a avs_pcm3168a.3.auto: ASoC: Got 0xed0 bytes of type 8 version 0 vendor 0 at pass 0
[  265.030229] snd_soc_avs:avs_manifest: snd_soc_avs 0000:00:1f.3: init config lookup failed: -2
[  265.030371] snd_soc_core:soc_tplg_load_header: avs_pcm3168a avs_pcm3168a.3.auto: ASoC: Got 0xc14 bytes of type 5 version 0 vendor 0 at pass 3
[  265.030383] snd_soc_core:soc_tplg_dapm_widget_elems_load: avs_pcm3168a avs_pcm3168a.3.auto: ASoC: adding 6 DAPM widgets
[  265.030393] snd_soc_core:soc_tplg_dapm_widget_create: avs_pcm3168a avs_pcm3168a.3.auto: ASoC: creating DAPM widget ssp0p_fe id 17
[  265.030652] snd_soc_core:soc_tplg_dapm_widget_create: avs_pcm3168a avs_pcm3168a.3.auto: ASoC: creating DAPM widget ssp0p_be id 17
[  265.030795] snd_soc_core:soc_tplg_dapm_widget_create: avs_pcm3168a avs_pcm3168a.3.auto: ASoC: creating DAPM widget ssp2c_fe id 17
[  265.031133] snd_soc_core:soc_tplg_dapm_widget_create: avs_pcm3168a avs_pcm3168a.3.auto: ASoC: creating DAPM widget ssp2c_be id 17
[  265.031315] snd_soc_core:soc_tplg_dapm_widget_create: avs_pcm3168a avs_pcm3168a.3.auto: ASoC: creating DAPM widget ssp0c_fe id 4
[  265.031396] snd_soc_core:soc_tplg_control_dmixer_create: avs_pcm3168a avs_pcm3168a.3.auto: ASoC: adding mixer kcontrol DSP Volume with access 0x7
[  265.031442] snd_soc_core:soc_tplg_dapm_widget_create: avs_pcm3168a avs_pcm3168a.3.auto: ASoC: template ssp0c_fe with 1/0/0 (mixer/enum/bytes) control
[  265.031694] snd_soc_core:soc_tplg_dapm_widget_create: avs_pcm3168a avs_pcm3168a.3.auto: ASoC: creating DAPM widget ssp0c_be id 17
[  265.031846] snd_soc_core:soc_tplg_load_header: avs_pcm3168a avs_pcm3168a.3.auto: ASoC: Got 0xab0 bytes of type 7 version 0 vendor 0 at pass 4
[  265.031930] snd_soc_core:snd_soc_register_dai: snd_soc_avs 0000:00:1f.3: ASoC: Registered DAI 'Audio I2S0-dai'
[  265.031940] snd_soc_core:snd_soc_dapm_new_dai_widgets: snd_soc_avs 0000:00:1f.3: ASoC: adding Audio I2S0-playback widget
[  265.032070] snd_soc_core:snd_soc_compensate_channel_connection_map: avs_pcm3168a avs_pcm3168a.3.auto: dai_link Audio I2S0
[  265.032080] snd_soc_core:snd_soc_compensate_channel_connection_map: avs_pcm3168a avs_pcm3168a.3.auto:   [0] cpu0 <-> codec0
[  265.032091] snd_soc_core:snd_soc_add_pcm_runtime: avs_pcm3168a avs_pcm3168a.3.auto: ASoC: binding Audio I2S0
[  265.032562] snd_soc_core:snd_soc_register_dai: snd_soc_avs 0000:00:1f.3: ASoC: Registered DAI 'Audio I2S2-dai'
[  265.032571] snd_soc_core:snd_soc_dapm_new_dai_widgets: snd_soc_avs 0000:00:1f.3: ASoC: adding Audio I2S2-capture widget
[  265.032695] snd_soc_core:snd_soc_compensate_channel_connection_map: avs_pcm3168a avs_pcm3168a.3.auto: dai_link Audio I2S2
[  265.032704] snd_soc_core:snd_soc_compensate_channel_connection_map: avs_pcm3168a avs_pcm3168a.3.auto:   [0] cpu0 <-> codec0
[  265.032713] snd_soc_core:snd_soc_add_pcm_runtime: avs_pcm3168a avs_pcm3168a.3.auto: ASoC: binding Audio I2S2
[  265.033141] snd_soc_core:snd_soc_register_dai: snd_soc_avs 0000:00:1f.3: ASoC: Registered DAI 'I2S0 Reference-dai'
[  265.033149] snd_soc_core:snd_soc_dapm_new_dai_widgets: snd_soc_avs 0000:00:1f.3: ASoC: adding I2S0 Reference-capture widget
[  265.033272] snd_soc_core:snd_soc_compensate_channel_connection_map: avs_pcm3168a avs_pcm3168a.3.auto: dai_link I2S0 Reference
[  265.033280] snd_soc_core:snd_soc_compensate_channel_connection_map: avs_pcm3168a avs_pcm3168a.3.auto:   [0] cpu0 <-> codec0
[  265.033290] snd_soc_core:snd_soc_add_pcm_runtime: avs_pcm3168a avs_pcm3168a.3.auto: ASoC: binding I2S0 Reference
[  265.033630] snd_soc_core:soc_tplg_pcm_elems_load: avs_pcm3168a avs_pcm3168a.3.auto: ASoC: adding 3 PCM DAIs
[  265.033639] snd_soc_core:soc_tplg_load_header: avs_pcm3168a avs_pcm3168a.3.auto: ASoC: Got 0x4a4 bytes of type 4 version 0 vendor 0 at pass 5
[  265.033650] snd_soc_core:soc_tplg_dapm_graph_elems_load: avs_pcm3168a avs_pcm3168a.3.auto: ASoC: adding 9 DAPM routes for index 0
[  265.034156] avs_pcm3168a avs_pcm3168a.3.auto: ASoC: Parent card not yet available, widget card binding deferred
[  265.047589] snd_hda_core:snd_hdac_display_power: snd_soc_avs 0000:00:1f.3: display power enable
[  265.047610] snd_hda_core:snd_hdac_set_codec_wakeup: snd_soc_avs 0000:00:1f.3: enable codec wakeup
[  265.050630] snd_hda_core:snd_hdac_set_codec_wakeup: snd_soc_avs 0000:00:1f.3: disable codec wakeup
[  265.072724] snd_soc_avs:avs_dsp_process_notification: snd_soc_avs 0000:00:1f.3: FW READY 0x9b080000
[  265.122940] snd_soc_core:snd_soc_dapm_new_dai_widgets: pcm3168a i2c-PCM3168A:00: ASoC: adding Playback widget
[  265.123008] snd_soc_core:snd_soc_dapm_new_dai_widgets: pcm3168a i2c-PCM3168A:00: ASoC: adding Capture widget
[  265.128920] snd_soc_core:soc_create_pcm: avs_pcm3168a avs_pcm3168a.3.auto: ASoC: registered pcm #0 ((null))
[  265.128931] snd_soc_core:soc_new_pcm: avs_pcm3168a avs_pcm3168a.3.auto: pcm3168a-dac <-> SSP0 Pin mapping ok
[  265.129025] snd_soc_core:soc_create_pcm: avs_pcm3168a avs_pcm3168a.3.auto: ASoC: registered pcm #1 ((null))
[  265.129034] snd_soc_core:soc_new_pcm: avs_pcm3168a avs_pcm3168a.3.auto: pcm3168a-adc <-> SSP2 Pin mapping ok
[  265.129331] snd_soc_core:soc_create_pcm: avs_pcm3168a avs_pcm3168a.3.auto: ASoC: registered pcm #0 Audio I2S0 (*)
[  265.129392] snd_soc_core:soc_new_pcm: avs_pcm3168a avs_pcm3168a.3.auto: snd-soc-dummy-dai <-> Audio I2S0-dai mapping ok
[  265.129674] snd_soc_core:soc_create_pcm: avs_pcm3168a avs_pcm3168a.3.auto: ASoC: registered pcm #1 Audio I2S2 (*)
[  265.129732] snd_soc_core:soc_new_pcm: avs_pcm3168a avs_pcm3168a.3.auto: snd-soc-dummy-dai <-> Audio I2S2-dai mapping ok
[  265.130006] snd_soc_core:soc_create_pcm: avs_pcm3168a avs_pcm3168a.3.auto: ASoC: registered pcm #2 I2S0 Reference (*)
[  265.130056] snd_soc_core:soc_new_pcm: avs_pcm3168a avs_pcm3168a.3.auto: snd-soc-dummy-dai <-> I2S0 Reference-dai mapping ok
[  265.130071] snd_soc_core:snd_soc_dapm_link_dai_widgets: pcm3168a i2c-PCM3168A:00: Playback -> DAC1
[  265.130088] snd_soc_core:snd_soc_dapm_link_dai_widgets: pcm3168a i2c-PCM3168A:00: Playback -> DAC2
[  265.130104] snd_soc_core:snd_soc_dapm_link_dai_widgets: pcm3168a i2c-PCM3168A:00: Playback -> DAC3
[  265.130120] snd_soc_core:snd_soc_dapm_link_dai_widgets: pcm3168a i2c-PCM3168A:00: Playback -> DAC4
[  265.130138] snd_soc_core:snd_soc_dapm_link_dai_widgets: pcm3168a i2c-PCM3168A:00: ADC1 -> Capture
[  265.130154] snd_soc_core:snd_soc_dapm_link_dai_widgets: pcm3168a i2c-PCM3168A:00: ADC2 -> Capture
[  265.130170] snd_soc_core:snd_soc_dapm_link_dai_widgets: pcm3168a i2c-PCM3168A:00: ADC3 -> Capture
[  265.130186] snd_soc_core:dapm_connect_dai_routes: avs_pcm3168a avs_pcm3168a.3.auto: connected DAI link avs_pcm3168a.3.auto:ssp0 Tx -> i2c-PCM3168A:00:Playback
[  265.130205] snd_soc_core:dapm_connect_dai_routes: avs_pcm3168a avs_pcm3168a.3.auto: connected DAI link i2c-PCM3168A:00:Capture -> avs_pcm3168a.3.auto:ssp2 Rx
[  267.623138] snd_hda_core:snd_hdac_display_power: snd_soc_avs 0000:00:1f.3: display power disable
[  293.064303] ==================================================================
[  293.064386] BUG: KASAN: slab-use-after-free in snd_soc_tplg_component_remove+0x5a/0x430 [snd_soc_core]
[  293.064518] Read of size 8 at addr ffff88812af23a50 by task rmmod/1213

[  293.064585] CPU: 10 UID: 0 PID: 1213 Comm: rmmod Tainted: G S                  7.0.0-rc2+ #1924 PREEMPT(full) 
[  293.064596] Tainted: [S]=CPU_OUT_OF_SPEC
[  293.064598] Hardware name: Intel Corporation MBL RVP (CPU:RaptorLake)/MBL RVP (ID:05), BIOS SB_RPLA.01.01.00.01.01.014.D-00000000 Jan 21 2025
[  293.064602] Call Trace:
[  293.064605]  <TASK>
[  293.064608]  dump_stack_lvl+0x70/0x90
[  293.064620]  print_report+0xce/0x610
[  293.064630]  ? snd_soc_tplg_component_remove+0x5a/0x430 [snd_soc_core]
[  293.064726]  ? kasan_complete_mode_report_info+0x64/0x1f0
[  293.064733]  ? snd_soc_tplg_component_remove+0x5a/0x430 [snd_soc_core]
[  293.064836]  kasan_report+0xe2/0x120
[  293.064844]  ? snd_soc_tplg_component_remove+0x5a/0x430 [snd_soc_core]
[  293.064949]  __asan_load8+0x82/0xb0
[  293.064957]  snd_soc_tplg_component_remove+0x5a/0x430 [snd_soc_core]
[  293.065059]  ? __pfx_mutex_unlock+0x10/0x10
[  293.065070]  avs_remove_topology+0x12/0x20 [snd_soc_avs]
[  293.065125]  avs_component_remove+0x10e/0x160 [snd_soc_avs]
[  293.065181]  snd_soc_component_remove+0x3b/0x50 [snd_soc_core]
[  293.065286]  soc_remove_component+0x101/0x110 [snd_soc_core]
[  293.065391]  soc_cleanup_card_resources+0x1a0/0x490 [snd_soc_core]
[  293.065496]  snd_soc_unregister_card+0x12b/0x180 [snd_soc_core]
[  293.065601]  devm_card_release+0x21/0x30 [snd_soc_core]
[  293.065704]  release_nodes+0x84/0x180
[  293.065716]  devres_release_all+0xff/0x150
[  293.065724]  ? __pfx_devres_release_all+0x10/0x10
[  293.065734]  device_unbind_cleanup+0x1a/0x120
[  293.065741]  device_release_driver_internal+0x2d4/0x330
[  293.065748]  ? __kasan_check_write+0x18/0x20
[  293.065756]  driver_detach+0x85/0xf0
[  293.065764]  bus_remove_driver+0xc4/0x180
[  293.065771]  driver_unregister+0x51/0x80
[  293.065778]  platform_driver_unregister+0x16/0x20
[  293.065786]  avs_pcm3168a_driver_exit+0x14/0xbe0 [snd_soc_avs_pcm3168a]
[  293.065793]  __do_sys_delete_module.constprop.0+0x258/0x440
[  293.065802]  ? __kasan_check_write+0x18/0x20
[  293.065808]  ? __pfx___do_sys_delete_module.constprop.0+0x10/0x10
[  293.065814]  ? __pfx__raw_spin_lock_irqsave+0x10/0x10
[  293.065821]  ? __rcu_read_unlock+0x3a/0x80
[  293.065831]  ? get_from_partial_node+0x228/0x3a0
[  293.065840]  ? __account_obj_stock+0xa4/0x370
[  293.065850]  __x64_sys_delete_module+0x23/0x30
[  293.065856]  x64_sys_call+0x1a79/0x21c0
[  293.065864]  do_syscall_64+0xc7/0x4c0
[  293.065872]  ? __kasan_check_read+0x15/0x20
[  293.065878]  ? __call_rcu_common.constprop.0+0x24b/0x430
[  293.065887]  ? __fput+0x315/0x4d0
[  293.065894]  ? call_rcu+0x12/0x20
[  293.065901]  ? kmem_cache_free+0x2e8/0x4c0
[  293.065911]  ? __fput+0x315/0x4d0
[  293.065916]  ? fpregs_assert_state_consistent+0x7c/0x90
[  293.065928]  ? fput_close_sync+0xcb/0x170
[  293.065934]  ? __pfx_fput_close_sync+0x10/0x10
[  293.065944]  ? __kasan_check_read+0x15/0x20
[  293.065949]  ? fpregs_assert_state_consistent+0x7c/0x90
[  293.065957]  ? do_syscall_64+0x109/0x4c0
[  293.065963]  ? __kasan_check_read+0x15/0x20
[  293.065969]  ? fpregs_assert_state_consistent+0x7c/0x90
[  293.065977]  ? do_syscall_64+0x109/0x4c0
[  293.065984]  ? irqentry_exit+0x41/0x6e0
[  293.065992]  ? exc_page_fault+0x79/0xc0
[  293.065999]  entry_SYSCALL_64_after_hwframe+0x76/0x7e
[  293.066007] RIP: 0033:0x7f3424f26c9b
[  293.066013] Code: 73 01 c3 48 8b 0d 95 21 0f 00 f7 d8 64 89 01 48 83 c8 ff c3 66 2e 0f 1f 84 00 00 00 00 00 90 f3 0f 1e fa b8 b0 00 00 00 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 8b 0d 65 21 0f 00 f7 d8 64 89 01 48
[  293.066020] RSP: 002b:00007ffcbb299958 EFLAGS: 00000206 ORIG_RAX: 00000000000000b0
[  293.066029] RAX: ffffffffffffffda RBX: 000055d070bdf980 RCX: 00007f3424f26c9b
[  293.066034] RDX: 000000000000000a RSI: 0000000000000800 RDI: 000055d070bdf9e8
[  293.066038] RBP: 0000000000000000 R08: 0000000000000000 R09: 0000000000000000
[  293.066042] R10: 00007f3424fbeac0 R11: 0000000000000206 R12: 00007ffcbb299bb0
[  293.066046] R13: 000055d070bdf2a0 R14: 00007ffcbb29b6c4 R15: 000055d070bdf980
[  293.066055]  </TASK>

[  293.094214] Allocated by task 1200:
[  293.095415]  kasan_save_stack+0x2c/0x60
[  293.095420]  kasan_save_track+0x18/0x40
[  293.095425]  kasan_save_alloc_info+0x3c/0x50
[  293.095429]  __kasan_kmalloc+0xb5/0xc0
[  293.095434]  __kmalloc_node_track_caller_noprof+0x209/0x630
[  293.095439]  devm_kmalloc+0x61/0x120
[  293.095444]  soc_tplg_dapm_graph_elems_load+0xd4/0x450 [snd_soc_core]
[  293.095513]  snd_soc_tplg_component_load+0x3a9/0x690 [snd_soc_core]
[  293.095582]  avs_load_topology+0x1c/0x30 [snd_soc_avs]
[  293.095618]  __avs_component_probe+0x8b/0x440 [snd_soc_avs]
[  293.095653]  avs_component_probe+0xcc/0x110 [snd_soc_avs]
[  293.095689]  snd_soc_component_probe+0x41/0x80 [snd_soc_core]
[  293.095759]  soc_probe_component+0x302/0x5a0 [snd_soc_core]
[  293.095828]  soc_card_bind+0x8fb/0x1600 [snd_soc_core]
[  293.095898]  snd_soc_add_component+0x30e/0x4b0 [snd_soc_core]
[  293.095967]  snd_soc_register_component+0x59/0x70 [snd_soc_core]
[  293.096036]  devm_snd_soc_register_component+0x5d/0xb0 [snd_soc_core]
[  293.096105]  pcm3168a_probe+0x28e/0x3d0 [snd_soc_pcm3168a]
[  293.096114]  pcm3168a_i2c_probe+0x35/0x40 [snd_soc_pcm3168a_i2c]
[  293.096120]  i2c_device_probe+0x29a/0x480
[  293.096128]  really_probe+0x160/0x560
[  293.096132]  __driver_probe_device+0xe6/0x210
[  293.096136]  driver_probe_device+0x4e/0x120
[  293.096141]  __driver_attach+0x153/0x310
[  293.096145]  bus_for_each_dev+0xf2/0x160
[  293.096151]  driver_attach+0x31/0x40
[  293.096155]  bus_add_driver+0x1bd/0x350
[  293.096159]  driver_register+0xad/0x1f0
[  293.096163]  i2c_register_driver+0x8f/0x120
[  293.096168]  0xffffffffc0562030
[  293.096172]  do_one_initcall+0x9f/0x3d0
[  293.096177]  do_init_module+0x1b0/0x4f0
[  293.096183]  load_module+0x3e52/0x3f90
[  293.096186]  init_module_from_file+0x175/0x1a0
[  293.096191]  idempotent_init_module+0x295/0x3e0
[  293.096195]  __x64_sys_finit_module+0x95/0x110
[  293.096199]  x64_sys_call+0x15da/0x21c0
[  293.096203]  do_syscall_64+0xc7/0x4c0
[  293.096207]  entry_SYSCALL_64_after_hwframe+0x76/0x7e

[  293.097393] Freed by task 1213:
[  293.098568]  kasan_save_stack+0x2c/0x60
[  293.098573]  kasan_save_track+0x18/0x40
[  293.098577]  kasan_save_free_info+0x3f/0x60
[  293.098581]  __kasan_slab_free+0x67/0x90
[  293.098586]  kfree+0x239/0x470
[  293.098590]  release_nodes+0x8f/0x180
[  293.098595]  devres_release_all+0xff/0x150
[  293.098600]  device_unbind_cleanup+0x1a/0x120
[  293.098604]  device_release_driver_internal+0x2d4/0x330
[  293.098609]  driver_detach+0x85/0xf0
[  293.098613]  bus_remove_driver+0xc4/0x180
[  293.098617]  driver_unregister+0x51/0x80
[  293.098622]  platform_driver_unregister+0x16/0x20
[  293.098627]  avs_pcm3168a_driver_exit+0x14/0xbe0 [snd_soc_avs_pcm3168a]
[  293.098632]  __do_sys_delete_module.constprop.0+0x258/0x440
[  293.098637]  __x64_sys_delete_module+0x23/0x30
[  293.098641]  x64_sys_call+0x1a79/0x21c0
[  293.098645]  do_syscall_64+0xc7/0x4c0
[  293.098650]  entry_SYSCALL_64_after_hwframe+0x76/0x7e

[  293.099809] The buggy address belongs to the object at ffff88812af23a00
                which belongs to the cache kmalloc-192 of size 192
[  293.102174] The buggy address is located 80 bytes inside of
                freed 192-byte region [ffff88812af23a00, ffff88812af23ac0)

[  293.105718] The buggy address belongs to the physical page:
[  293.106907] page: refcount:0 mapcount:0 mapping:0000000000000000 index:0xffff88812af23100 pfn:0x12af22
[  293.106913] head: order:1 mapcount:0 entire_mapcount:0 nr_pages_mapped:0 pincount:0
[  293.106916] flags: 0x17ffffc0000240(workingset|head|node=0|zone=2|lastcpupid=0x1fffff)
[  293.106922] page_type: f5(slab)
[  293.106928] raw: 0017ffffc0000240 ffff8881000423c0 ffffea0004ac7110 ffffea00048c7610
[  293.106933] raw: ffff88812af23100 0000000800200016 00000000f5000000 0000000000000000
[  293.106938] head: 0017ffffc0000240 ffff8881000423c0 ffffea0004ac7110 ffffea00048c7610
[  293.106943] head: ffff88812af23100 0000000800200016 00000000f5000000 0000000000000000
[  293.106947] head: 0017ffffc0000001 ffffea0004abc881 00000000ffffffff 00000000ffffffff
[  293.106952] head: ffffffffffffffff 0000000000000000 00000000ffffffff 0000000000000002
[  293.106955] page dumped because: kasan: bad access detected

[  293.108129] Memory state around the buggy address:
[  293.109314]  ffff88812af23900: fa fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
[  293.110518]  ffff88812af23980: fb fb fb fb fb fb fb fb fc fc fc fc fc fc fc fc
[  293.111715] >ffff88812af23a00: fa fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
[  293.112914]                                                  ^
[  293.114119]  ffff88812af23a80: fb fb fb fb fb fb fb fb fc fc fc fc fc fc fc fc
[  293.115344]  ffff88812af23b00: fa fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
[  293.116569] ==================================================================
[  293.118115] Disabling lock debugging due to kernel taint
[  293.118139] snd_soc_core:snd_soc_get_pcm_runtime: avs_pcm3168a avs_pcm3168a.3.auto: ASoC: failed to find rtd I2S0 Reference
[  293.118154] snd_soc_core:snd_soc_unregister_dai: snd_soc_avs 0000:00:1f.3: ASoC: Unregistered DAI 'I2S0 Reference-dai'
[  293.118163] snd_soc_core:snd_soc_get_pcm_runtime: avs_pcm3168a avs_pcm3168a.3.auto: ASoC: failed to find rtd Audio I2S2
[  293.118172] snd_soc_core:snd_soc_unregister_dai: snd_soc_avs 0000:00:1f.3: ASoC: Unregistered DAI 'Audio I2S2-dai'
[  293.118181] snd_soc_core:snd_soc_get_pcm_runtime: avs_pcm3168a avs_pcm3168a.3.auto: ASoC: failed to find rtd Audio I2S0
[  293.118189] snd_soc_core:snd_soc_unregister_dai: snd_soc_avs 0000:00:1f.3: ASoC: Unregistered DAI 'Audio I2S0-dai'
[  293.124734] snd_soc_core:snd_soc_unregister_card: avs_pcm3168a avs_pcm3168a.3.auto: ASoC: Unregistered card 'AVS I2S PCM3168A'

  parent reply	other threads:[~2026-04-26 14:54 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-04-22  3:03 [RFC][PATCH v4 0/2] ASoC: core: use Complete rebind cards by default for all users Kuninori Morimoto
2026-04-22  3:04 ` [RFC][PATCH v4 1/2] ASoC: topology: make sure to call snd_soc_remove_pcm_runtime() Kuninori Morimoto
2026-04-22  3:04 ` [RFC][PATCH v4 2/2] ASoC: core: use Complete rebind cards by default for all users Kuninori Morimoto
2026-04-26 14:53 ` Cezary Rojewski [this message]
2026-04-26 23:18   ` [RFC][PATCH v4 0/2] " Kuninori Morimoto
2026-04-28 16:22     ` Cezary Rojewski

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=62019496-ec5e-41d5-a17c-7739b829f15b@intel.com \
    --to=cezary.rojewski@intel.com \
    --cc=broonie@kernel.org \
    --cc=kuninori.morimoto.gx@renesas.com \
    --cc=lgirdwood@gmail.com \
    --cc=linux-sound@vger.kernel.org \
    --cc=perex@perex.cz \
    --cc=tiwai@suse.com \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox