[alsa-devel] [PATCH v2] ASoC: soc-core: defer card probe until all component is added to list
Rohit Kumar
rohitkr at codeaurora.org
Fri Jan 11 09:11:53 CET 2019
Thanks Pierre for reporting the issue.
On 1/11/2019 10:37 AM, Pierre-Louis Bossart wrote:
> While debugging Skylake audio stuff, I came across a kernel oops
> introduced by this commit.
>
> It's quite late here and my brain is fried, submitting as is but my
> money is on the use of link->platform->of_node which is quite unlikely
> to work on ACPI platforms.
>
Right, either name or of_node should not be NULL for soc_find_component.
We will provide fix.
> and btw you may want to fix the typos, it's registration, not
> registartion.
Sure.
>
> -Pierre
>
> 8780cf1142a59568a3aa77959cbd76b2edb6fd81 is the first bad commit
> commit 8780cf1142a59568a3aa77959cbd76b2edb6fd81
> Author: Ajit Pandey <ajitp at codeaurora.org>
> Date: Wed Jan 9 14:17:07 2019 +0530
>
> ASoC: soc-core: defer card probe until all component is added to list
>
> DAI component probe is not called if it is not present
> in component list during sound card registration.
> Check if component is available in component list for
> platform and cpu dai before soundcard registration.
>
> Signed-off-by: Ajit Pandey <ajitp at codeaurora.org>
> Signed-off-by: Rohit kumar <rohitkr at codeaurora.org>
> Signed-off-by: Mark Brown <broonie at kernel.org>
>
> :040000 040000 98da59b0a73551030a0c9030b8cd58114003c82b
> 48f0618f37a16dcfea5999ecd9743edbb0763594 M sound
>
> [ 2.686029] HDMI HDA Codec ehdaudio0D2: Max dais supported: 3
> [ 2.687854] BUG: unable to handle kernel NULL pointer dereference
> at 0000000000000000
> [ 2.687858] PGD 0 P4D 0
> [ 2.687862] Oops: 0000 [#1] SMP PTI
> [ 2.687866] CPU: 1 PID: 1647 Comm: systemd-udevd Not tainted
> 4.20.0-rc7-test+ #88
> [ 2.687867] Hardware name: Dell Inc. XPS 13 9350/07TYC2, BIOS 1.0.0
> 09/10/2015
> [ 2.687872] RIP: 0010:strcmp+0xc/0x20
> [ 2.687875] Code: 75 f7 48 83 c6 01 0f b6 4e ff 48 83 c2 01 84 c9
> 88 4a ff 75 ed f3 c3 0f 1f 80 00 00 00 00 48 83 c7 01 0f b6 47 ff 48
> 83 c6 01 <3a> 46 ff 75 07 84 c0 75 eb 31 c0 c3 19 c0 83 c8 01 c3 66 90
> 48 85
> [ 2.687877] RSP: 0018:ffff9fadc104bb18 EFLAGS: 00010202
> [ 2.687880] RAX: 0000000000000065 RBX: ffff9d6834ba5428 RCX:
> 0000000000000001
> [ 2.687882] RDX: ffffffffc0288d00 RSI: 0000000000000001 RDI:
> ffff9d68351b5a61
> [ 2.687883] RBP: 0000000000000000 R08: 0000000000000001 R09:
> ffff9d6836dbfd80
> [ 2.687885] R10: 0000000000000000 R11: ffff9d6835e65648 R12:
> 0000000000000000
> [ 2.687887] R13: 0000000000000000 R14: 0000000000000000 R15:
> ffff9fadc104be98
> [ 2.687889] FS: 00007f976806a8c0(0000) GS:ffff9d6838a80000(0000)
> knlGS:0000000000000000
> [ 2.687891] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
> [ 2.687893] CR2: 0000000000000000 CR3: 00000002b4286002 CR4:
> 00000000003606e0
> [ 2.687895] Call Trace:
> [ 2.687902] soc_find_component+0x4c/0x70 [snd_soc_core]
> [ 2.687908] soc_init_dai_link+0x124/0x280 [snd_soc_core]
> [ 2.687913] snd_soc_register_card+0x6b/0x1f0 [snd_soc_core]
> [ 2.687918] ? __devres_alloc_node+0x2c/0x60
> [ 2.687922] devm_snd_soc_register_card+0x3e/0x80 [snd_soc_core]
> [ 2.687926] platform_drv_probe+0x35/0x90
> [ 2.687930] ? driver_sysfs_add+0x70/0xd0
> [ 2.687932] really_probe+0xee/0x2e0
> [ 2.687935] driver_probe_device+0x4a/0xe0
> [ 2.687938] __driver_attach+0xac/0xb0
> [ 2.687941] ? driver_probe_device+0xe0/0xe0
> [ 2.687943] bus_for_each_dev+0x71/0xb0
> [ 2.687946] bus_add_driver+0x191/0x210
> [ 2.687948] ? 0xffffffffc01bf000
> [ 2.687951] driver_register+0x56/0xe0
> [ 2.687953] ? 0xffffffffc01bf000
> [ 2.687956] do_one_initcall+0x41/0x1b8
> [ 2.687960] ? kobject_uevent_env+0x101/0x680
> [ 2.687962] ? _cond_resched+0x10/0x40
> [ 2.687966] ? kmem_cache_alloc_trace+0x35/0x160
> [ 2.687969] do_init_module+0x56/0x1db
> [ 2.687973] load_module+0x1e7c/0x2560
> [ 2.687976] ? vfs_read+0x10a/0x130
> [ 2.687979] ? __do_sys_finit_module+0xba/0xe0
> [ 2.687983] __do_sys_finit_module+0xba/0xe0
> [ 2.687988] do_syscall_64+0x43/0xf0
> [ 2.687992] entry_SYSCALL_64_after_hwframe+0x44/0xa9
> [ 2.687995] RIP: 0033:0x7f9768aef219
> [ 2.687998] Code: 00 c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 44 00
> 00 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24
> 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 8b 0d 47 fc 0c 00 f7 d8 64 89
> 01 48
> [ 2.688000] RSP: 002b:00007ffccf3a4c98 EFLAGS: 00000246 ORIG_RAX:
> 0000000000000139
> [ 2.688003] RAX: ffffffffffffffda RBX: 000055991cf57970 RCX:
> 00007f9768aef219
> [ 2.688006] RDX: 0000000000000000 RSI: 00007f97689d3cad RDI:
> 000000000000000f
> [ 2.688008] RBP: 00007f97689d3cad R08: 0000000000000000 R09:
> 0000000000000000
> [ 2.688010] R10: 000000000000000f R11: 0000000000000246 R12:
> 0000000000000000
> [ 2.688012] R13: 000055991cf49930 R14: 0000000000020000 R15:
> 000055991cf57970
> [ 2.688015] Modules linked in: snd_soc_skl_hda_dsp(+)
> snd_soc_hdac_hdmi snd_soc_dmic ax88179_178a(+) usbnet
> snd_hda_codec_realtek snd_hda_codec_generic snd_soc_skl
> snd_soc_hdac_hda snd_hda_ext_core snd_soc_skl_ipc x86_pkg_temp_thermal
> snd_soc_sst_ipc snd_soc_sst_dsp snd_soc_acpi_intel_match snd_soc_acpi
> snd_soc_core snd_compress snd_hda_codec snd_hwdep snd_hda_core snd_pcm
> efivarfs intel_lpss_pci xhci_pci intel_lpss mfd_core xhci_hcd
> [ 2.688031] CR2: 0000000000000000
> [ 2.688034] ---[ end trace 8b96d01935d9effd ]---
> [ 2.688037] RIP: 0010:strcmp+0xc/0x20
> [ 2.688039] Code: 75 f7 48 83 c6 01 0f b6 4e ff 48 83 c2 01 84 c9
> 88 4a ff 75 ed f3 c3 0f 1f 80 00 00 00 00 48 83 c7 01 0f b6 47 ff 48
> 83 c6 01 <3a> 46 ff 75 07 84 c0 75 eb 31 c0 c3 19 c0 83 c8 01 c3 66 90
> 48 85
> [ 2.688042] RSP: 0018:ffff9fadc104bb18 EFLAGS: 00010202
> [ 2.688044] RAX: 0000000000000065 RBX: ffff9d6834ba5428 RCX:
> 0000000000000001
> [ 2.688046] RDX: ffffffffc0288d00 RSI: 0000000000000001 RDI:
> ffff9d68351b5a61
> [ 2.688048] RBP: 0000000000000000 R08: 0000000000000001 R09:
> ffff9d6836dbfd80
> [ 2.688050] R10: 0000000000000000 R11: ffff9d6835e65648 R12:
> 0000000000000000
> [ 2.688052] R13: 0000000000000000 R14: 0000000000000000 R15:
> ffff9fadc104be98
> [ 2.688055] FS: 00007f976806a8c0(0000) GS:ffff9d6838a80000(0000)
> knlGS:0000000000000000
> [ 2.688057] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
> [ 2.688059] CR2: 0000000000000000 CR3: 00000002b4286002 CR4:
> 00000000003606e0
>
Thanks,
Rohit
--
Qualcomm INDIA, on behalf of Qualcomm Innovation Center, Inc.is a member
of the Code Aurora Forum, hosted by the Linux Foundation.
More information about the Alsa-devel
mailing list