[next] Unable to handle kernel execute from non-executable memory at virtual address - devm_clk_release

From: Naresh Kamboju
Date: Tue Jun 21 2022 - 21:11:47 EST


The following kernel crash was noticed on arm64 Raspberry Pi 4 Model B
devices while booting. This crash is always reproducible.

Reported-by: Linux Kernel Functional Testing <lkft@xxxxxxxxxx>

metadata:
git_ref: master
git_repo: https://gitlab.com/Linaro/lkft/mirrors/next/linux-next
git_sha: 1e502319853ceebfe7480a436ba22ab01372fa0c
git_describe: next-20220620
kernel_version: 5.19.0-rc3
kernel-config: https://builds.tuxbuild.com/2ApqivCh2DP6v2QxI17B2GnWiUk/config
build-url: https://gitlab.com/Linaro/lkft/mirrors/next/linux-next/-/pipelines/567830223
artifact-location: https://builds.tuxbuild.com/2ApqivCh2DP6v2QxI17B2GnWiUk
toolchain: gcc-11

Crash log:
----------
[ 0.000000] Linux version 5.19.0-rc3-next-20220620
(tuxmake@tuxmake) (aarch64-linux-gnu-gcc (Debian 11.3.0-3) 11.3.0, GNU
ld (GNU Binutils for Debian) 2.38) #1 SMP PREEMPT @1655717238
[ 0.000000] Machine model: Raspberry Pi 4 Model B
<trim>

[ 18.462465] Bluetooth: HCI UART protocol Broadcom registered
[ 18.462543] Bluetooth: HCI UART protocol QCA registered
[ 18.462633] Bluetooth: HCI UART protocol Marvell registered
[ 18.464172] hci_uart_bcm serial0-0: supply vbat not found, using
dummy regulator
[ 18.464478] hci_uart_bcm serial0-0: supply vddio not found, using
dummy regulator
[ 18.464942] cfg80211: Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7'
[ 18.465655] platform regulatory.0: Direct firmware load for
regulatory.db failed with error -2
[ 18.465683] cfg80211: failed to load regulatory.db
[ 18.465928] bcm2835-power bcm2835-power: Timeout waiting for grafx power OK
[ 18.472964] bcm2835-power bcm2835-power: Timeout waiting for grafx power OK
[ 18.475203] raspberrypi-firmware soc:firmware: Request 0x00030066
returned status 0x80000001
[ 18.475231] vc4-drm gpu: [drm] Couldn't stop firmware display driver: -22
[ 18.490782] vc4-drm gpu: bound fe400000.hvs (ops vc4_hvs_ops [vc4])
[ 18.500428] Unable to handle kernel execute from non-executable
memory at virtual address ffff000040241c10
[ 18.500455] Mem abort info:
[ 18.500465] ESR = 0x000000008600000f
[ 18.500477] EC = 0x21: IABT (current EL), IL = 32 bits
[ 18.500491] SET = 0, FnV = 0
[ 18.500503] EA = 0, S1PTW = 0
[ 18.500514] FSC = 0x0f: level 3 permission fault
[ 18.500527] swapper pgtable: 4k pages, 48-bit VAs, pgdp=00000000020b6000
[ 18.500542] [ffff000040241c10] pgd=18000000fbff8003,
p4d=18000000fbff8003, pud=18000000fbe2a003, pmd=18000000fbe28003,
pte=0068000040241707
[ 18.500612] Internal error: Oops: 8600000f [#1] PREEMPT SMP
[ 18.500624] Modules linked in: hci_uart vc4(+) btqca btbcm cec
bluetooth drm_display_helper cfg80211 crct10dif_ce v3d drm_cma_helper
clk_raspberrypi drm_shmem_helper reset_raspberrypi raspberrypi_hwmon
drm_kms_helper gpu_sched rfkill bcm2711_thermal iproc_rng200
pwm_bcm2835 i2c_bcm2835 drm rng_core pcie_brcmstb fuse
[ 18.500752] CPU: 0 PID: 246 Comm: systemd-udevd Not tainted
5.19.0-rc3-next-20220620 #1
[ 18.500765] Hardware name: Raspberry Pi 4 Model B (DT)
[ 18.500772] pstate: 80000005 (Nzcv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--)
[ 18.500785] pc : 0xffff000040241c10
[ 18.500800] lr : devm_clk_release+0x30/0x50
[ 18.500817] sp : ffff80000b42b6f0
[ 18.500823] x29: ffff80000b42b6f0 x28: ffff0000423bad50 x27: 0000000000000000
[ 18.500845] x26: 00000000fffffdfb x25: ffff800009cc7d80 x24: ffff80000a98ea78
[ 18.500866] x23: ffff80000a0d7008 x22: ffff000040241c10 x21: ffff80000b42b7a8
[ 18.500886] x20: ffff00004893c600 x19: ffff00004893d300 x18: 000000003957dc32
[ 18.500906] x17: 000000000000001c x16: 000000005d75779c x15: 00000000c3027b0d
[ 18.500926] x14: 000000000000001a x13: 0000000000000000 x12: ffff000042d25338
[ 18.500946] x11: 0000000000000040 x10: ffff000042d25240 x9 : ffff800008a4d774
[ 18.500965] x8 : ffff000042d25268 x7 : 0000000000000000 x6 : ffff80000a98f000
[ 18.500984] x5 : ffff800008a4d780 x4 : fffffc0001224f20 x3 : ffff00004893c700
[ 18.501003] x2 : ffff80000886d9d0 x1 : ffff000040241c10 x0 : ffff000040104700
[ 18.501022] Call trace:
[ 18.501028] 0xffff000040241c10
[ 18.501037] release_nodes+0x64/0x104
[ 18.501052] devres_release_group+0xd8/0x14c
[ 18.501063] component_bind_all+0x144/0x290
[ 18.501079] vc4_drm_bind+0x118/0x2f4 [vc4]
[ 18.501181] try_to_bring_up_aggregate_device+0x230/0x320
[ 18.501198] component_master_add_with_match+0xbc/0x10c
[ 18.501212] vc4_platform_drm_probe+0xcc/0x10c [vc4]
[ 18.501300] platform_probe+0x74/0xf0
[ 18.501318] really_probe+0xc8/0x3f0
[ 18.501331] __driver_probe_device+0x11c/0x190
[ 18.501344] driver_probe_device+0x44/0x100
[ 18.501357] __driver_attach+0xd8/0x200
[ 18.501370] bus_for_each_dev+0x7c/0xe0
[ 18.501381] driver_attach+0x30/0x40
[ 18.501393] bus_add_driver+0x154/0x240
[ 18.501405] driver_register+0x84/0x140
[ 18.501419] __platform_driver_register+0x34/0x40
[ 18.501434] vc4_drm_register+0x5c/0x1000 [vc4]
[ 18.501520] do_one_initcall+0x50/0x2b0
[ 18.501533] do_init_module+0x50/0x200
[ 18.501544] load_module+0x1b80/0x1f40
[ 18.501553] __do_sys_finit_module+0xac/0x12c
[ 18.501562] __arm64_sys_finit_module+0x2c/0x40
[ 18.501571] invoke_syscall+0x50/0x120
[ 18.501588] el0_svc_common.constprop.0+0x104/0x124
[ 18.501604] do_el0_svc+0x3c/0xcc
[ 18.501619] el0_svc+0x38/0xc0
[ 18.501633] el0t_64_sync_handler+0xbc/0x140
[ 18.501647] el0t_64_sync+0x18c/0x190
[ 18.501663] Code: 40a43e00 ffff0000 ffffffff 00000000 (40a43e00)
[ 18.501674] ---[ end trace 0000000000000000 ]---


URL:
[1] https://qa-reports.linaro.org/lkft/linux-next-master/build/next-20220620/testrun/10270853/suite/ltp-sched-tests/test/cfs_bandwidth01/details/
[2] https://lkft.validation.linaro.org/scheduler/job/5191948#L810


--
Linaro LKFT
https://lkft.linaro.org