Message ID | 20230327120932.2158389-1-mgonzalez@freebox.fr (mailing list archive) |
---|---|
Headers | show |
Series | Fix G12 PMU conflict | expand |
Hi, On Mon, 27 Mar 2023 14:09:29 +0200, Marc Gonzalez wrote: > Move the PMU DT node & adjust the register offsets. > > Marc Gonzalez (3): > arm64: dts: meson-g12-common: specify full DMC range > perf/amlogic: resolve conflict between canvas & pmu > perf/amlogic: adjust register offsets > > [...] Thanks, Applied to https://git.kernel.org/pub/scm/linux/kernel/git/amlogic/linux.git (v6.3/dt-fixes) [1/3] arm64: dts: meson-g12-common: specify full DMC range https://git.kernel.org/amlogic/c/aec4353114a408b3a831a22ba34942d05943e462 [2/3] perf/amlogic: resolve conflict between canvas & pmu https://git.kernel.org/amlogic/c/33acea2049b5058b93d1dabb536b494f543f02a2 These changes has been applied on the intermediate git tree [1]. The v6.3/dt-fixes branch will then be sent via a formal Pull Request to the Linux SoC maintainers for inclusion in their intermediate git branches in order to be sent to Linus during the next merge window, or sooner if it's a set of fixes. In the cases of fixes, those will be merged in the current release candidate kernel and as soon they appear on the Linux master branch they will be backported to the previous Stable and Long-Stable kernels [2]. The intermediate git branches are merged daily in the linux-next tree [3], people are encouraged testing these pre-release kernels and report issues on the relevant mailing-lists. If problems are discovered on those changes, please submit a signed-off-by revert patch followed by a corrective changeset. [1] https://git.kernel.org/pub/scm/linux/kernel/git/amlogic/linux.git [2] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git [3] https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
On 27/03/2023 14:09, Marc Gonzalez wrote: > Move the PMU DT node & adjust the register offsets. > > Marc Gonzalez (3): > arm64: dts: meson-g12-common: specify full DMC range > perf/amlogic: resolve conflict between canvas & pmu > perf/amlogic: adjust register offsets Hmmm... the perf driver doesn't like my setup... :( # perf record -a -F 1009 --call-graph fp -B curl -o /dev/null http://192.168.1.254:8095/fixed/1G % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 0 1024M 0 8342k 0 0 7564k 0 0:02:18 0:00:01 0:02:17 7563k [ 1036.936099] SError Interrupt on CPU1, code 0x00000000bf000000 -- SError [ 1036.936116] CPU: 1 PID: 61 Comm: kworker/u9:0 Not tainted 6.2.0 #449 [ 1036.936122] Hardware name: SEI Robotics SEI510 (DT) [ 1036.936126] Workqueue: brcmf_wq/mmc2:0001:1 brcmf_sdio_dataworker [ 1036.936144] pstate: 80000005 (Nzcv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--) [ 1036.936150] pc : brcmf_sdiod_skbuff_read+0x28/0xa0 [ 1036.936159] lr : brcmf_sdiod_recv_chain+0xe4/0x160 [ 1036.936166] sp : ffff80000a18bc00 [ 1036.936169] x29: ffff80000a18bc00 x28: ffff8000087d31a0 x27: ffff8000087d2e60 [ 1036.936177] x26: ffff000004990b00 x25: 0000000000000009 x24: ffff8000087d31a0 [ 1036.936184] x23: ffff000004998500 x22: 0000000000008000 x21: ffff000000873278 [ 1036.936192] x20: 000000000000c100 x19: ffff000000872800 x18: 0000000000000000 [ 1036.936199] x17: ffff80005df77000 x16: ffff80000800c000 x15: 0000000000000000 [ 1036.936205] x14: 0000000000000002 x13: 0000000000077f7a x12: 0000000000000068 [ 1036.936213] x11: 00000000000000c0 x10: 0000000000000068 x9 : fffffc0000150800 [ 1036.936220] x8 : fffffc0000150801 x7 : ffff80005df77000 x6 : ffff000004998500 [ 1036.936227] x5 : ffff0000008bc000 x4 : 000000000000c103 x3 : ffff000004998500 [ 1036.936233] x2 : 0000000000008000 x1 : 0000000000000002 x0 : ffff000000872800 [ 1036.936243] Kernel panic - not syncing: Asynchronous SError Interrupt [ 1036.936247] CPU: 1 PID: 61 Comm: kworker/u9:0 Not tainted 6.2.0 #449 [ 1036.936252] Hardware name: SEI Robotics SEI510 (DT) [ 1036.936255] Workqueue: brcmf_wq/mmc2:0001:1 brcmf_sdio_dataworker [ 1036.936262] Call trace: [ 1036.936264] dump_backtrace.part.0+0xe0/0xf0 [ 1036.936273] show_stack+0x18/0x30 [ 1036.936280] dump_stack_lvl+0x68/0x84 [ 1036.936288] dump_stack+0x18/0x34 [ 1036.936294] panic+0x184/0x344 [ 1036.936301] nmi_panic+0xac/0xb0 [ 1036.936308] arm64_serror_panic+0x6c/0x80 [ 1036.936314] do_serror+0x58/0x60 [ 1036.936318] el1h_64_error_handler+0x30/0x50 [ 1036.936324] el1h_64_error+0x64/0x68 [ 1036.936330] brcmf_sdiod_skbuff_read+0x28/0xa0 [ 1036.936336] brcmf_sdiod_recv_chain+0xe4/0x160 [ 1036.936343] brcmf_sdio_dataworker+0x898/0x23d0 [ 1036.936348] process_one_work+0x1cc/0x320 [ 1036.936354] worker_thread+0x14c/0x450 [ 1036.936359] kthread+0xfc/0x100 [ 1036.936364] ret_from_fork+0x10/0x20 [ 1036.936371] SMP: stopping secondary CPUs [ 1036.936378] Kernel Offset: disabled [ 1036.936379] CPU features: 0x00000,01000100,0000420b [ 1036.936384] Memory Limit: none [ 1037.149180] ---[ end Kernel panic - not syncing: Asynchronous SError Interrupt ]---
Hi, On Mon, 27 Mar 2023 14:09:29 +0200, Marc Gonzalez wrote: > Move the PMU DT node & adjust the register offsets. > > Marc Gonzalez (3): > arm64: dts: meson-g12-common: specify full DMC range > perf/amlogic: resolve conflict between canvas & pmu > perf/amlogic: adjust register offsets > > [...] Thanks, Applied to https://git.kernel.org/pub/scm/linux/kernel/git/amlogic/linux.git (v6.3/fixes) [3/3] perf/amlogic: adjust register offsets https://git.kernel.org/amlogic/c/f9d323e7c1724270d747657051099826744e91e7 These changes has been applied on the intermediate git tree [1]. The v6.3/fixes branch will then be sent via a formal Pull Request to the Linux SoC maintainers for inclusion in their intermediate git branches in order to be sent to Linus during the next merge window, or sooner if it's a set of fixes. In the cases of fixes, those will be merged in the current release candidate kernel and as soon they appear on the Linux master branch they will be backported to the previous Stable and Long-Stable kernels [2]. The intermediate git branches are merged daily in the linux-next tree [3], people are encouraged testing these pre-release kernels and report issues on the relevant mailing-lists. If problems are discovered on those changes, please submit a signed-off-by revert patch followed by a corrective changeset. [1] https://git.kernel.org/pub/scm/linux/kernel/git/amlogic/linux.git [2] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git [3] https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
On 27/03/2023 17:25, Marc Gonzalez wrote: > Hmmm... the perf driver doesn't like my setup... :( > > # perf record -a -F 1009 --call-graph fp -B curl -o /dev/null http://192.168.1.254:8095/fixed/1G > % Total % Received % Xferd Average Speed Time Time Time Current > Dload Upload Total Spent Left Speed > 0 1024M 0 8342k 0 0 7564k 0 0:02:18 0:00:01 0:02:17 7563k > > [ 1036.936099] SError Interrupt on CPU1, code 0x00000000bf000000 -- SError > [ 1036.936116] CPU: 1 PID: 61 Comm: kworker/u9:0 Not tainted 6.2.0 #449 > [ 1036.936122] Hardware name: SEI Robotics SEI510 (DT) > [ 1036.936126] Workqueue: brcmf_wq/mmc2:0001:1 brcmf_sdio_dataworker > [ 1036.936144] pstate: 80000005 (Nzcv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--) > [ 1036.936150] pc : brcmf_sdiod_skbuff_read+0x28/0xa0 > [ 1036.936159] lr : brcmf_sdiod_recv_chain+0xe4/0x160 > [ 1036.936166] sp : ffff80000a18bc00 > [ 1036.936169] x29: ffff80000a18bc00 x28: ffff8000087d31a0 x27: ffff8000087d2e60 > [ 1036.936177] x26: ffff000004990b00 x25: 0000000000000009 x24: ffff8000087d31a0 > [ 1036.936184] x23: ffff000004998500 x22: 0000000000008000 x21: ffff000000873278 > [ 1036.936192] x20: 000000000000c100 x19: ffff000000872800 x18: 0000000000000000 > [ 1036.936199] x17: ffff80005df77000 x16: ffff80000800c000 x15: 0000000000000000 > [ 1036.936205] x14: 0000000000000002 x13: 0000000000077f7a x12: 0000000000000068 > [ 1036.936213] x11: 00000000000000c0 x10: 0000000000000068 x9 : fffffc0000150800 > [ 1036.936220] x8 : fffffc0000150801 x7 : ffff80005df77000 x6 : ffff000004998500 > [ 1036.936227] x5 : ffff0000008bc000 x4 : 000000000000c103 x3 : ffff000004998500 > [ 1036.936233] x2 : 0000000000008000 x1 : 0000000000000002 x0 : ffff000000872800 > [ 1036.936243] Kernel panic - not syncing: Asynchronous SError Interrupt > [ 1036.936247] CPU: 1 PID: 61 Comm: kworker/u9:0 Not tainted 6.2.0 #449 > [ 1036.936252] Hardware name: SEI Robotics SEI510 (DT) > [ 1036.936255] Workqueue: brcmf_wq/mmc2:0001:1 brcmf_sdio_dataworker > [ 1036.936262] Call trace: > [ 1036.936264] dump_backtrace.part.0+0xe0/0xf0 > [ 1036.936273] show_stack+0x18/0x30 > [ 1036.936280] dump_stack_lvl+0x68/0x84 > [ 1036.936288] dump_stack+0x18/0x34 > [ 1036.936294] panic+0x184/0x344 > [ 1036.936301] nmi_panic+0xac/0xb0 > [ 1036.936308] arm64_serror_panic+0x6c/0x80 > [ 1036.936314] do_serror+0x58/0x60 > [ 1036.936318] el1h_64_error_handler+0x30/0x50 > [ 1036.936324] el1h_64_error+0x64/0x68 > [ 1036.936330] brcmf_sdiod_skbuff_read+0x28/0xa0 > [ 1036.936336] brcmf_sdiod_recv_chain+0xe4/0x160 > [ 1036.936343] brcmf_sdio_dataworker+0x898/0x23d0 > [ 1036.936348] process_one_work+0x1cc/0x320 > [ 1036.936354] worker_thread+0x14c/0x450 > [ 1036.936359] kthread+0xfc/0x100 > [ 1036.936364] ret_from_fork+0x10/0x20 > [ 1036.936371] SMP: stopping secondary CPUs > [ 1036.936378] Kernel Offset: disabled > [ 1036.936379] CPU features: 0x00000,01000100,0000420b > [ 1036.936384] Memory Limit: none > [ 1037.149180] ---[ end Kernel panic - not syncing: Asynchronous SError Interrupt ]--- Different crash signature: # ./wifi.sh Successfully initialized wpa_supplicant [ 40.127823] ieee80211 phy0: brcmf_dongle_roam: WLC_SET_ROAM_TRIGGER error (-52) udhcpc: started, v1.35.0 udhcpc: broadcasting discover udhcpc: broadcasting discover udhcpc: broadcasting select for 192.168.1.67, server 192.168.1.254 udhcpc: lease of 192.168.1.67 obtained from 192.168.1.254, lease time 43200 deleting routers adding dns 192.168.1.254 # # perf record -a -F 1009 --call-graph fp -B curl -o /dev/null http://192.168.1.254:8095/fixed/1G % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 15 1024M 15 156M 0 0 8079k 0 0:02:09 0:00:19 0:01:50 8051k [ 132.334655] SError Interrupt on CPU2, code 0x00000000bf000000 -- SError [ 132.334678] CPU: 2 PID: 158 Comm: perf Not tainted 6.2.0 #449 [ 132.334686] Hardware name: SEI Robotics SEI510 (DT) [ 132.334690] pstate: 20000005 (nzCv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--) [ 132.334697] pc : __arch_copy_from_user+0x1c8/0x230 [ 132.334714] lr : copy_page_from_iter_atomic+0x1d4/0x5d0 [ 132.334723] sp : ffff80000a42bb50 [ 132.334725] x29: ffff80000a42bb50 x28: 0000000000000000 x27: 0000000000000800 [ 132.334737] x26: ffff80000877da80 x25: ffff000000eb3a00 x24: 0000000000016498 [ 132.334745] x23: ffff000000000000 x22: 0000040000000000 x21: ffff80000a42bd50 [ 132.334752] x20: ffff000005400000 x19: 0000000000000800 x18: 0000000000000000 [ 132.334759] x17: 0000000000000000 x16: 0000000000000000 x15: 0000ffff84a73ff0 [ 132.334766] x14: 0000000000000007 x13: 00000000000f1f68 x12: 0000000000000001 [ 132.334774] x11: 0000001ecf0a934d x10: 0000000000000000 x9 : ffff80000875c020 [ 132.334781] x8 : ffff800008753188 x7 : ffffffffffffff80 x6 : ffff0000054001a0 [ 132.334788] x5 : ffff000005400800 x4 : 0000000000000000 x3 : 0000000000000800 [ 132.334796] x2 : 0000000000000600 x1 : 0000ffff84a741c0 x0 : ffff000005400000 [ 132.334807] Kernel panic - not syncing: Asynchronous SError Interrupt [ 132.334811] CPU: 2 PID: 158 Comm: perf Not tainted 6.2.0 #449 [ 132.334817] Hardware name: SEI Robotics SEI510 (DT) [ 132.334822] Call trace: [ 132.334824] dump_backtrace.part.0+0xe0/0xf0 [ 132.334836] show_stack+0x18/0x30 [ 132.334843] dump_stack_lvl+0x68/0x84 [ 132.334851] dump_stack+0x18/0x34 [ 132.334857] panic+0x184/0x344 [ 132.334865] nmi_panic+0xac/0xb0 [ 132.334870] arm64_serror_panic+0x6c/0x80 [ 132.334875] do_serror+0x58/0x60 [ 132.334879] el1h_64_error_handler+0x30/0x50 [ 132.334885] el1h_64_error+0x64/0x68 [ 132.334891] __arch_copy_from_user+0x1c8/0x230 [ 132.334897] generic_perform_write+0xe8/0x1e0 [ 132.334905] __generic_file_write_iter+0x11c/0x1b0 [ 132.334911] generic_file_write_iter+0x78/0x110 [ 132.334915] vfs_write+0x2b0/0x390 [ 132.334923] ksys_write+0x68/0x100 [ 132.334928] __arm64_sys_write+0x1c/0x30 [ 132.334934] invoke_syscall+0x48/0x120 [ 132.334943] el0_svc_common.constprop.0+0x44/0xf0 [ 132.334950] do_el0_svc+0x38/0xc0 [ 132.334956] el0_svc+0x2c/0x90 [ 132.334960] el0t_64_sync_handler+0xb8/0xc0 [ 132.334964] el0t_64_sync+0x190/0x194 [ 132.334970] SMP: stopping secondary CPUs [ 132.334977] Kernel Offset: disabled [ 132.334978] CPU features: 0x00000,01000100,0000420b [ 132.334982] Memory Limit: none Will check this patch: https://lore.kernel.org/all/20230209115403.521868-1-jiucheng.xu@amlogic.com/
On 27/03/2023 17:36, Marc Gonzalez wrote: > On 27/03/2023 17:25, Marc Gonzalez wrote: > >> Hmmm... the perf driver doesn't like my setup... :( >> >> # perf record -a -F 1009 --call-graph fp -B curl -o /dev/null http://192.168.1.254:8095/fixed/1G >> % Total % Received % Xferd Average Speed Time Time Time Current >> Dload Upload Total Spent Left Speed >> 0 1024M 0 8342k 0 0 7564k 0 0:02:18 0:00:01 0:02:17 7563k >> >> [ 1036.936099] SError Interrupt on CPU1, code 0x00000000bf000000 -- SError >> [ 1036.936116] CPU: 1 PID: 61 Comm: kworker/u9:0 Not tainted 6.2.0 #449 >> [ 1036.936122] Hardware name: SEI Robotics SEI510 (DT) >> [ 1036.936126] Workqueue: brcmf_wq/mmc2:0001:1 brcmf_sdio_dataworker >> [ 1036.936144] pstate: 80000005 (Nzcv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--) >> [ 1036.936150] pc : brcmf_sdiod_skbuff_read+0x28/0xa0 >> [ 1036.936159] lr : brcmf_sdiod_recv_chain+0xe4/0x160 >> [ 1036.936166] sp : ffff80000a18bc00 >> [ 1036.936169] x29: ffff80000a18bc00 x28: ffff8000087d31a0 x27: ffff8000087d2e60 >> [ 1036.936177] x26: ffff000004990b00 x25: 0000000000000009 x24: ffff8000087d31a0 >> [ 1036.936184] x23: ffff000004998500 x22: 0000000000008000 x21: ffff000000873278 >> [ 1036.936192] x20: 000000000000c100 x19: ffff000000872800 x18: 0000000000000000 >> [ 1036.936199] x17: ffff80005df77000 x16: ffff80000800c000 x15: 0000000000000000 >> [ 1036.936205] x14: 0000000000000002 x13: 0000000000077f7a x12: 0000000000000068 >> [ 1036.936213] x11: 00000000000000c0 x10: 0000000000000068 x9 : fffffc0000150800 >> [ 1036.936220] x8 : fffffc0000150801 x7 : ffff80005df77000 x6 : ffff000004998500 >> [ 1036.936227] x5 : ffff0000008bc000 x4 : 000000000000c103 x3 : ffff000004998500 >> [ 1036.936233] x2 : 0000000000008000 x1 : 0000000000000002 x0 : ffff000000872800 >> [ 1036.936243] Kernel panic - not syncing: Asynchronous SError Interrupt >> [ 1036.936247] CPU: 1 PID: 61 Comm: kworker/u9:0 Not tainted 6.2.0 #449 >> [ 1036.936252] Hardware name: SEI Robotics SEI510 (DT) >> [ 1036.936255] Workqueue: brcmf_wq/mmc2:0001:1 brcmf_sdio_dataworker >> [ 1036.936262] Call trace: >> [ 1036.936264] dump_backtrace.part.0+0xe0/0xf0 >> [ 1036.936273] show_stack+0x18/0x30 >> [ 1036.936280] dump_stack_lvl+0x68/0x84 >> [ 1036.936288] dump_stack+0x18/0x34 >> [ 1036.936294] panic+0x184/0x344 >> [ 1036.936301] nmi_panic+0xac/0xb0 >> [ 1036.936308] arm64_serror_panic+0x6c/0x80 >> [ 1036.936314] do_serror+0x58/0x60 >> [ 1036.936318] el1h_64_error_handler+0x30/0x50 >> [ 1036.936324] el1h_64_error+0x64/0x68 >> [ 1036.936330] brcmf_sdiod_skbuff_read+0x28/0xa0 >> [ 1036.936336] brcmf_sdiod_recv_chain+0xe4/0x160 >> [ 1036.936343] brcmf_sdio_dataworker+0x898/0x23d0 >> [ 1036.936348] process_one_work+0x1cc/0x320 >> [ 1036.936354] worker_thread+0x14c/0x450 >> [ 1036.936359] kthread+0xfc/0x100 >> [ 1036.936364] ret_from_fork+0x10/0x20 >> [ 1036.936371] SMP: stopping secondary CPUs >> [ 1036.936378] Kernel Offset: disabled >> [ 1036.936379] CPU features: 0x00000,01000100,0000420b >> [ 1036.936384] Memory Limit: none >> [ 1037.149180] ---[ end Kernel panic - not syncing: Asynchronous SError Interrupt ]--- > > > Different crash signature: > > # ./wifi.sh > Successfully initialized wpa_supplicant > [ 40.127823] ieee80211 phy0: brcmf_dongle_roam: WLC_SET_ROAM_TRIGGER error (-52) > udhcpc: started, v1.35.0 > udhcpc: broadcasting discover > udhcpc: broadcasting discover > udhcpc: broadcasting select for 192.168.1.67, server 192.168.1.254 > udhcpc: lease of 192.168.1.67 obtained from 192.168.1.254, lease time 43200 > deleting routers > adding dns 192.168.1.254 > # > # perf record -a -F 1009 --call-graph fp -B curl -o /dev/null http://192.168.1.254:8095/fixed/1G > % Total % Received % Xferd Average Speed Time Time Time Current > Dload Upload Total Spent Left Speed > 15 1024M 15 156M 0 0 8079k 0 0:02:09 0:00:19 0:01:50 8051k > > [ 132.334655] SError Interrupt on CPU2, code 0x00000000bf000000 -- SError > [ 132.334678] CPU: 2 PID: 158 Comm: perf Not tainted 6.2.0 #449 > [ 132.334686] Hardware name: SEI Robotics SEI510 (DT) > [ 132.334690] pstate: 20000005 (nzCv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--) > [ 132.334697] pc : __arch_copy_from_user+0x1c8/0x230 > [ 132.334714] lr : copy_page_from_iter_atomic+0x1d4/0x5d0 > [ 132.334723] sp : ffff80000a42bb50 > [ 132.334725] x29: ffff80000a42bb50 x28: 0000000000000000 x27: 0000000000000800 > [ 132.334737] x26: ffff80000877da80 x25: ffff000000eb3a00 x24: 0000000000016498 > [ 132.334745] x23: ffff000000000000 x22: 0000040000000000 x21: ffff80000a42bd50 > [ 132.334752] x20: ffff000005400000 x19: 0000000000000800 x18: 0000000000000000 > [ 132.334759] x17: 0000000000000000 x16: 0000000000000000 x15: 0000ffff84a73ff0 > [ 132.334766] x14: 0000000000000007 x13: 00000000000f1f68 x12: 0000000000000001 > [ 132.334774] x11: 0000001ecf0a934d x10: 0000000000000000 x9 : ffff80000875c020 > [ 132.334781] x8 : ffff800008753188 x7 : ffffffffffffff80 x6 : ffff0000054001a0 > [ 132.334788] x5 : ffff000005400800 x4 : 0000000000000000 x3 : 0000000000000800 > [ 132.334796] x2 : 0000000000000600 x1 : 0000ffff84a741c0 x0 : ffff000005400000 > [ 132.334807] Kernel panic - not syncing: Asynchronous SError Interrupt > [ 132.334811] CPU: 2 PID: 158 Comm: perf Not tainted 6.2.0 #449 > [ 132.334817] Hardware name: SEI Robotics SEI510 (DT) > [ 132.334822] Call trace: > [ 132.334824] dump_backtrace.part.0+0xe0/0xf0 > [ 132.334836] show_stack+0x18/0x30 > [ 132.334843] dump_stack_lvl+0x68/0x84 > [ 132.334851] dump_stack+0x18/0x34 > [ 132.334857] panic+0x184/0x344 > [ 132.334865] nmi_panic+0xac/0xb0 > [ 132.334870] arm64_serror_panic+0x6c/0x80 > [ 132.334875] do_serror+0x58/0x60 > [ 132.334879] el1h_64_error_handler+0x30/0x50 > [ 132.334885] el1h_64_error+0x64/0x68 > [ 132.334891] __arch_copy_from_user+0x1c8/0x230 > [ 132.334897] generic_perform_write+0xe8/0x1e0 > [ 132.334905] __generic_file_write_iter+0x11c/0x1b0 > [ 132.334911] generic_file_write_iter+0x78/0x110 > [ 132.334915] vfs_write+0x2b0/0x390 > [ 132.334923] ksys_write+0x68/0x100 > [ 132.334928] __arm64_sys_write+0x1c/0x30 > [ 132.334934] invoke_syscall+0x48/0x120 > [ 132.334943] el0_svc_common.constprop.0+0x44/0xf0 > [ 132.334950] do_el0_svc+0x38/0xc0 > [ 132.334956] el0_svc+0x2c/0x90 > [ 132.334960] el0t_64_sync_handler+0xb8/0xc0 > [ 132.334964] el0t_64_sync+0x190/0x194 > [ 132.334970] SMP: stopping secondary CPUs > [ 132.334977] Kernel Offset: disabled > [ 132.334978] CPU features: 0x00000,01000100,0000420b > [ 132.334982] Memory Limit: none > > > Will check this patch: > https://lore.kernel.org/all/20230209115403.521868-1-jiucheng.xu@amlogic.com/ Panics also with the above patch applied :( The problem seems to be with perf, since normal downloads complete successfully: # ./wifi.sh Successfully initialized wpa_supplicant [ 12.029572] ieee80211 phy0: brcmf_dongle_roam: WLC_SET_ROAM_TRIGGER error (-52) udhcpc: started, v1.35.0 udhcpc: broadcasting discover udhcpc: broadcasting discover udhcpc: broadcasting select for 192.168.1.67, server 192.168.1.254 udhcpc: lease of 192.168.1.67 obtained from 192.168.1.254, lease time 43200 deleting routers adding dns 192.168.1.254 # # curl -o /dev/null http://192.168.1.254:8095/fixed/1G % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 1024M 100 1024M 0 0 7927k 0 0:02:12 0:02:12 --:--:-- 8023k # # perf record -a -F 1009 --call-graph fp -B curl -o /dev/null http://192.168.1.254:8095/fixed/1G % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 8 1024M 8 85.7M 0 0 8009k 0 0:02:10 0:00:10 0:02:00 8101k [ 222.699138] SError Interrupt on CPU2, code 0x00000000bf000000 -- SError [ 222.699155] CPU: 2 PID: 159 Comm: perf Not tainted 6.2.0 #451 [ 222.699162] Hardware name: SEI Robotics SEI510 (DT) [ 222.699165] pstate: 20000005 (nzCv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--) [ 222.699170] pc : __arch_copy_from_user+0x1c8/0x230 [ 222.699184] lr : copy_page_from_iter_atomic+0x1d4/0x5d0 [ 222.699192] sp : ffff80000a313b50 [ 222.699195] x29: ffff80000a313b50 x28: 0000000000000000 x27: 0000000000001000 [ 222.699205] x26: ffff80000877da80 x25: ffff000000b27d00 x24: 0000000000001f90 [ 222.699213] x23: ffff000000000000 x22: 0000040000000000 x21: ffff80000a313d50 [ 222.699220] x20: ffff000005400000 x19: 0000000000001000 x18: 0000000000000000 [ 222.699227] x17: 0000000000000000 x16: 0000000000000000 x15: 0000ffffa4b73f28 [ 222.699234] x14: 0000000000000000 x13: ffff80000875f3ac x12: ffff800008025714 [ 222.699241] x11: ffff800008085888 x10: ffff8000080855f4 x9 : ffff800008753188 [ 222.699247] x8 : 000000000000000f x7 : 0080000100000009 x6 : ffff0000054001a8 [ 222.699253] x5 : ffff000005401000 x4 : 0000000000000008 x3 : ffffffffffffff80 [ 222.699260] x2 : 0000000000000df8 x1 : 0000ffffa4b74100 x0 : ffff000005400000 [ 222.699270] Kernel panic - not syncing: Asynchronous SError Interrupt [ 222.699274] CPU: 2 PID: 159 Comm: perf Not tainted 6.2.0 #451 [ 222.699279] Hardware name: SEI Robotics SEI510 (DT) [ 222.699284] Call trace: [ 222.699286] dump_backtrace.part.0+0xe0/0xf0 [ 222.699298] show_stack+0x18/0x30 [ 222.699303] dump_stack_lvl+0x68/0x84 [ 222.699314] dump_stack+0x18/0x34 [ 222.699319] panic+0x184/0x344 [ 222.699327] nmi_panic+0xac/0xb0 [ 222.699334] arm64_serror_panic+0x6c/0x80 [ 222.699339] do_serror+0x58/0x60 [ 222.699343] el1h_64_error_handler+0x30/0x50 [ 222.699347] el1h_64_error+0x64/0x68 [ 222.699351] __arch_copy_from_user+0x1c8/0x230 [ 222.699357] generic_perform_write+0xe8/0x1e0 [ 222.699366] __generic_file_write_iter+0x11c/0x1b0 [ 222.699374] generic_file_write_iter+0x78/0x110 [ 222.699380] vfs_write+0x2b0/0x390 [ 222.699388] ksys_write+0x68/0x100 [ 222.699394] __arm64_sys_write+0x1c/0x30 [ 222.699400] invoke_syscall+0x48/0x120 [ 222.699408] el0_svc_common.constprop.0+0x44/0xf0 [ 222.699414] do_el0_svc+0x38/0xc0 [ 222.699420] el0_svc+0x2c/0x90 [ 222.699425] el0t_64_sync_handler+0xb8/0xc0 [ 222.699430] el0t_64_sync+0x190/0x194 [ 222.699437] SMP: stopping secondary CPUs [ 222.699444] Kernel Offset: disabled [ 222.699445] CPU features: 0x00000,01000100,0000420b [ 222.699449] Memory Limit: none Has anyone ever experienced something similar?
On 27/03/2023 17:52, Marc Gonzalez wrote: > [ 222.699138] SError Interrupt on CPU2, code 0x00000000bf000000 -- SError > [ 222.699155] CPU: 2 PID: 159 Comm: perf Not tainted 6.2.0 #451 > [ 222.699162] Hardware name: SEI Robotics SEI510 (DT) > [ 222.699165] pstate: 20000005 (nzCv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--) > [ 222.699170] pc : __arch_copy_from_user+0x1c8/0x230 > [ 222.699184] lr : copy_page_from_iter_atomic+0x1d4/0x5d0 > [ 222.699192] sp : ffff80000a313b50 > [ 222.699195] x29: ffff80000a313b50 x28: 0000000000000000 x27: 0000000000001000 > [ 222.699205] x26: ffff80000877da80 x25: ffff000000b27d00 x24: 0000000000001f90 > [ 222.699213] x23: ffff000000000000 x22: 0000040000000000 x21: ffff80000a313d50 > [ 222.699220] x20: ffff000005400000 x19: 0000000000001000 x18: 0000000000000000 > [ 222.699227] x17: 0000000000000000 x16: 0000000000000000 x15: 0000ffffa4b73f28 > [ 222.699234] x14: 0000000000000000 x13: ffff80000875f3ac x12: ffff800008025714 > [ 222.699241] x11: ffff800008085888 x10: ffff8000080855f4 x9 : ffff800008753188 > [ 222.699247] x8 : 000000000000000f x7 : 0080000100000009 x6 : ffff0000054001a8 > [ 222.699253] x5 : ffff000005401000 x4 : 0000000000000008 x3 : ffffffffffffff80 > [ 222.699260] x2 : 0000000000000df8 x1 : 0000ffffa4b74100 x0 : ffff000005400000 > [ 222.699270] Kernel panic - not syncing: Asynchronous SError Interrupt > [ 222.699274] CPU: 2 PID: 159 Comm: perf Not tainted 6.2.0 #451 > [ 222.699279] Hardware name: SEI Robotics SEI510 (DT) > [ 222.699284] Call trace: > [ 222.699286] dump_backtrace.part.0+0xe0/0xf0 > [ 222.699298] show_stack+0x18/0x30 > [ 222.699303] dump_stack_lvl+0x68/0x84 > [ 222.699314] dump_stack+0x18/0x34 > [ 222.699319] panic+0x184/0x344 > [ 222.699327] nmi_panic+0xac/0xb0 > [ 222.699334] arm64_serror_panic+0x6c/0x80 > [ 222.699339] do_serror+0x58/0x60 > [ 222.699343] el1h_64_error_handler+0x30/0x50 > [ 222.699347] el1h_64_error+0x64/0x68 > [ 222.699351] __arch_copy_from_user+0x1c8/0x230 > [ 222.699357] generic_perform_write+0xe8/0x1e0 > [ 222.699366] __generic_file_write_iter+0x11c/0x1b0 > [ 222.699374] generic_file_write_iter+0x78/0x110 > [ 222.699380] vfs_write+0x2b0/0x390 > [ 222.699388] ksys_write+0x68/0x100 > [ 222.699394] __arm64_sys_write+0x1c/0x30 > [ 222.699400] invoke_syscall+0x48/0x120 > [ 222.699408] el0_svc_common.constprop.0+0x44/0xf0 > [ 222.699414] do_el0_svc+0x38/0xc0 > [ 222.699420] el0_svc+0x2c/0x90 > [ 222.699425] el0t_64_sync_handler+0xb8/0xc0 > [ 222.699430] el0t_64_sync+0x190/0x194 In my (limited) experience, these types of panics are Linux getting nuked from a more privileged context (trustzone). And indeed, there was a typo in my device tree that disabled one reserved-memory area. Doh! After fixing the DT, I can run memtest=17 sucessfully, and the perf run completes without a hitch. Sorry for the noise.