selftests: ftrace: Internal error: Oops: sve_save_state

From: Naresh Kamboju
Date: Tue Oct 17 2023 - 04:04:34 EST


Following kernel crash noticed while running selftests: ftrace:
ftracetest-ktap on FVP models running stable-rc 6.5.8-rc2.

This is not an easy to reproduce issue and not seen on mainline and next.
We are investigating this report.

Reported-by: Linux Kernel Functional Testing <lkft@xxxxxxxxxx>
Reported-by: Naresh Kamboju <naresh.kamboju@xxxxxxxxxx>


Test log:
----------
kselftest: Running tests in ftrace
TAP version 13
1..1
# timeout set to 0
# selftests: ftrace: ftracetest-ktap
# TAP version 13
# 1..129
# ok 1 Basic trace file check
# ok 2 Basic test for tracers
# ok 3 Basic trace clock test
# ok 4 Basic event tracing check
# ok 5 Change the ringbuffer size
# ok 6 Snapshot and tracing setting
# ok 7 Snapshot and tracing_cpumask
# ok 8 trace_pipe and trace_marker
[ 471.689140]
[ 471.689264] **********************************************************
[ 471.689422] ** NOTICE NOTICE NOTICE NOTICE NOTICE NOTICE NOTICE **
[ 471.689574] ** **
[ 471.689716] ** trace_printk() being used. Allocating extra memory. **
[ 471.689878] ** **
[ 471.690031] ** This means that this is a DEBUG kernel and it is **
[ 471.690183] ** unsafe for production use. **
[ 471.690335] ** **
[ 471.690487] ** If you see this message and you are not debugging **
[ 471.690728] ** the kernel, report this immediately to your vendor! **
[ 471.690881] ** **
[ 471.691033] ** NOTICE NOTICE NOTICE NOTICE NOTICE NOTICE NOTICE **
[ 471.691185] **********************************************************
[ 543.243648] hrtimer: interrupt took 11937170 ns
[ 764.987161] Unable to handle kernel NULL pointer dereference at
virtual address 0000000000000000
[ 764.992518] Mem abort info:
[ 764.995330] ESR = 0x0000000096000044
[ 764.998562] EC = 0x25: DABT (current EL), IL = 32 bits
[ 765.002434] SET = 0, FnV = 0
[ 765.005361] EA = 0, S1PTW = 0
[ 765.008327] FSC = 0x04: level 0 translation fault
[ 765.012011] Data abort info:
[ 765.014858] ISV = 0, ISS = 0x00000044, ISS2 = 0x00000000
[ 765.018797] CM = 0, WnR = 1, TnD = 0, TagAccess = 0
[ 765.022562] GCS = 0, Overlay = 0, DirtyBit = 0, Xs = 0
[ 765.026438] user pgtable: 4k pages, 48-bit VAs, pgdp=00000008848bd000
[ 765.030782] [0000000000000000] pgd=0000000000000000, p4d=0000000000000000
[ 765.037045] Internal error: Oops: 0000000096000044 [#1] PREEMPT SMP
[ 765.038392] Modules linked in: ftrace_direct pl111_drm arm_spe_pmu
drm_dma_helper crct10dif_ce panel_simple drm_kms_helper fuse drm
dm_mod ip_tables x_tables [last unloaded: ftrace_direct]
[ 765.044892] CPU: 3 PID: 808 Comm: rmmod Not tainted 6.5.8-rc2 #1
[ 765.046192] Hardware name: FVP Base RevC (DT)
[ 765.047264] pstate: 234020c9 (nzCv daIF +PAN -UAO +TCO +DIT -SSBS BTYPE=--)
[ 765.048693] pc : sve_save_state+0x4/0xf0
[ 765.049820] lr : fpsimd_save+0x1b8/0x218
[ 765.050933] sp : ffff800080a83ac0
[ 765.051871] x29: ffff800080a83ac0 x28: ffff000805257058 x27: 0000000000000001
[ 765.054108] x26: 0000000000000000 x25: ffffd7c64d332980 x24: 0000000000000000
[ 765.056341] x23: 0000000000000001 x22: ffff284232103000 x21: 0000000000000040
[ 765.058575] x20: ffff00087f7470b0 x19: ffffd7c64d6440b0 x18: 0000000000000000
[ 765.060811] x17: 0000000000000000 x16: ffff800080018000 x15: 0000000000000000
[ 765.063041] x14: 0000000000000000 x13: 0000000000000000 x12: 0000380a873b560e
[ 765.065277] x11: ffffd7c64e0ae390 x10: ffff800080a83b10 x9 : ffffd7c64b5b7710
[ 765.067516] x8 : ffff800080a839b8 x7 : 000000000000001e x6 : ffff00080000c200
[ 765.069752] x5 : ffffd7c64b78cc30 x4 : 0000000000000000 x3 : 0000000000000000
[ 765.071983] x2 : 0000000000000001 x1 : ffff000805257820 x0 : 0000000000000880
[ 765.074221] Call trace:
[ 765.075045] sve_save_state+0x4/0xf0
[ 765.076138] fpsimd_thread_switch+0x2c/0xe8
[ 765.077305] __switch_to+0x20/0x158
[ 765.078384] __schedule+0x2cc/0xb38
[ 765.079464] preempt_schedule_irq+0x44/0xa8
[ 765.080633] el1_interrupt+0x4c/0x68
[ 765.081691] el1h_64_irq_handler+0x18/0x28
[ 765.082829] el1h_64_irq+0x64/0x68
[ 765.083874] ftrace_return_to_handler+0x98/0x158
[ 765.085090] return_to_handler+0x20/0x48
[ 765.086205] do_sve_acc+0x64/0x128
[ 765.087272] el0_sve_acc+0x3c/0xa0
[ 765.088356] el0t_64_sync_handler+0x114/0x130
[ 765.089524] el0t_64_sync+0x190/0x198
[ 765.090712] Code: d51b4408 d65f03c0 d503201f d503245f (e5bb5800)
[ 765.092024] ---[ end trace 0000000000000000 ]---
[ 765.904294] pstore: backend (efi_pstore) writing error (-5)
[ 765.905531] note: rmmod[808] exited with irqs disabled

Links:
test log link:
- https://qa-reports.linaro.org/lkft/linux-stable-rc-linux-6.5.y/build/v6.5.7-191-gbe4ec7370801/testrun/20672437/suite/log-parser-test/test/check-kernel-oops/log

Details of tests:
- https://tuxapi.tuxsuite.com/v1/groups/linaro/projects/lkft/tests/2WrHwIIFdZpJWV5smWZVr2yJxl1

Build link:
- https://storage.tuxsuite.com/public/linaro/lkft/builds/2WrHvExYOOOZVoxlISTdAD1gMzO/


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