lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <233ff5d0-ca8a-4526-8aac-c95e5f2de221@gmail.com>
Date: Sat, 7 Sep 2024 01:28:43 -0700
From: Rudraksha Gupta <guptarud@...il.com>
To: Linux regressions mailing list <regressions@...ts.linux.dev>,
 bartosz.golaszewski@...aro.org, andersson@...nel.org
Cc: brgl@...ev.pl, konrad.dybcio@...aro.org, robh@...nel.org,
 krzk+dt@...nel.org, conor+dt@...nel.org, robimarko@...il.com,
 quic_gurus@...cinc.com, luzmaximilian@...il.com, catalin.marinas@....com,
 will@...nel.org, srinivas.kandagatla@...aro.org, arnd@...db.de,
 quic_eberman@...cinc.com, elder@...nel.org, linux-arm-msm@...r.kernel.org,
 devicetree@...r.kernel.org, linux-kernel@...r.kernel.org,
 linux-arm-kernel@...ts.infradead.org, kernel@...cinc.com,
 ahalaney@...hat.com, quic_djaggi@...cinc.com
Subject: Re: [REGRESSION] firmware: qcom: scm: smc: switch to using the SCM
 allocator

> Hmm, from the outside it looks like nobody looked into below regression
> report (reminder: culprit authored by Bartosz Golaszewski and commited
> by Bjorn Andersson). Wonder why. Did it fall through the cracks or did I
> miss anything?
>
> Rudraksha Gupta: I assume the issue still happens?
Thanks for poking this. Wasn't sure how fast this is supposed to be 
reverted/patched. And yep! Pasted below:

[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Linux version 6.11.0-rc6-msm8960+ (user@...alhost) 
(Alpine clang version 18.1.8, LLD 18.1.8) #2 SMP Sat Sep  7 01:22:22 PDT 
2024
[    0.000000] CPU: ARMv7 Processor [511f04d4] revision 4 (ARMv7), 
cr=10c5787d
[    0.000000] CPU: div instructions available: patching division code
[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, PIPT instruction 
cache
[    0.000000] OF: fdt: Machine model: Samsung Galaxy Express SGH-I437
[    0.000000] earlycon: msm_serial_dm0 at MMIO 0x16440000 (options 
'115200n8')
[    0.000000] printk: legacy bootconsole [msm_serial_dm0] enabled
[    0.000000] Memory policy: Data cache writealloc
[    0.000000] Zone ranges:
[    0.000000]   Normal   [mem 0x0000000080200000-0x00000000afffffff]
[    0.000000]   HighMem  [mem 0x00000000b0000000-0x00000000bfffffff]
[    0.000000] Movable zone start for each node
[    0.000000] Early memory node ranges
[    0.000000]   node   0: [mem 0x0000000080200000-0x0000000088cfffff]
[    0.000000]   node   0: [mem 0x0000000090000000-0x00000000bfffffff]
[    0.000000] Initmem setup node 0 [mem 
0x0000000080200000-0x00000000bfffffff]
[    0.000000] On node 0, zone Normal: 512 pages in unavailable ranges
[    0.000000] On node 0, zone Normal: 768 pages in unavailable ranges
[    0.000000] percpu: Embedded 19 pages/cpu s45144 r8192 d24488 u77824
[    0.000000] Kernel command line: earlycon clk_ignore_unused 
PMOS_NO_OUTPUT_REDIRECT console=ttyMSM0,115200
[    0.000000] Unknown kernel command line parameters 
"PMOS_NO_OUTPUT_REDIRECT", will be passed to user space.
[    0.000000] Dentry cache hash table entries: 131072 (order: 7, 524288 
bytes, linear)
[    0.000000] Inode-cache hash table entries: 65536 (order: 6, 262144 
bytes, linear)
[    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 232192
[    0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=2, Nodes=1
[    0.000000] ftrace: allocating 38347 entries in 75 pages
[    0.000000] ftrace: allocated 75 pages with 4 groups
[    0.000000] trace event string verifier disabled
[    0.000000] rcu: Hierarchical RCU implementation.
[    0.000000] rcu:     RCU event tracing is enabled.
[    0.000000] rcu:     RCU restricting CPUs from NR_CPUS=4 to nr_cpu_ids=2.
[    0.000000]  Rude variant of Tasks RCU enabled.
[    0.000000]  Tracing variant of Tasks RCU enabled.
[    0.000000] rcu: RCU calculated value of scheduler-enlistment delay 
is 10 jiffies.
[    0.000000] rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=2
[    0.000000] RCU Tasks Rude: Setting shift to 1 and lim to 1 
rcu_task_cb_adjust=1.
[    0.000000] RCU Tasks Trace: Setting shift to 1 and lim to 1 
rcu_task_cb_adjust=1.
[    0.000000] NR_IRQS: 16, nr_irqs: 16, preallocated irqs: 16
[    0.000000] rcu: srcu_init: Setting srcu_struct sizes based on 
contention.
[    0.000000] clocksource: dg_timer: mask: 0xffffffff max_cycles: 
0xffffffff, max_idle_ns: 283149695806 ns
[    0.000002] sched_clock: 32 bits at 7MHz, resolution 148ns, wraps 
every 318145725365ns
[    0.009532] Switching to timer-based delay loop, resolution 148ns
[    0.017997] Console: colour dummy device 80x30
[    0.023311] Calibrating delay loop (skipped), value calculated using 
timer frequency.. 13.50 BogoMIPS (lpj=67500)
[    0.027572] CPU: Testing write buffer coherency: ok
[    0.037875] pid_max: default: 32768 minimum: 301
[    0.042565] LSM: initializing lsm=capability
[    0.047408] Mount-cache hash table entries: 2048 (order: 1, 8192 
bytes, linear)
[    0.051555] Mountpoint-cache hash table entries: 2048 (order: 1, 8192 
bytes, linear)
[    0.060527] CPU0: thread -1, cpu 0, socket 0, mpidr 80000000
[    0.066424] 8<--- cut here ---
[    0.071895] Unable to handle kernel NULL pointer dereference at 
virtual address 00000090 when read
[    0.074743] [00000090] *pgd=00000000
[    0.083659] Internal error: Oops: 5 [#1] SMP ARM
[    0.087283] Modules linked in:
[    0.091834] CPU: 0 UID: 0 PID: 1 Comm: swapper/0 Not tainted 
6.11.0-rc6-msm8960+ #2
[    0.094674] Hardware name: Generic DT based system
[    0.102146] PC is at qcom_scm_get_tzmem_pool+0x1c/0x24
[    0.106956] LR is at __scm_smc_call+0x30/0x2d4
[    0.112025] pc : [<c08944b4>]    lr : [<c0896fd0>] psr: 60000013
[    0.116411] sp : f0815d78  ip : f0815e98  fp : f0815d78
[    0.122510] r10: 00000002  r9 : f0815e18  r8 : 00000001
[    0.127666] r7 : c1106694  r6 : f0815e30  r5 : c1270038  r4 : 00000001
[    0.132824] r3 : f0815e18  r2 : 00000002  r1 : f0815e30  r0 : 00000000
[    0.139354] Flags: nZCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM 
Segment none
[    0.145803] Control: 10c5787d  Table: 8000406a  DAC: 00000051
[    0.152929] Register r0 information: NULL pointer
[    0.158597] Register r1 information: 2-page vmalloc region starting 
at 0xf0814000 allocated at copy_process+0x16c/0xdd8
[    0.163248] Register r2 information: non-paged memory
[    0.173721] Register r3 information: 2-page vmalloc region starting 
at 0xf0814000 allocated at copy_process+0x16c/0xdd8
[    0.178887] Register r4 information: non-paged memory
[    0.189361] Register r5 information: non-slab/vmalloc memory
[    0.194518] Register r6 information: 2-page vmalloc region starting 
at 0xf0814000 allocated at copy_process+0x16c/0xdd8
[    0.200197] Register r7 information: non-slab/vmalloc memory
[    0.210585] Register r8 information: non-paged memory
[    0.216427] Register r9 information: 2-page vmalloc region starting 
at 0xf0814000 allocated at copy_process+0x16c/0xdd8
[    0.221335] Register r10 information: non-paged memory
[    0.231807] Register r11 information: 2-page vmalloc region starting 
at 0xf0814000 allocated at copy_process+0x16c/0xdd8
[    0.236973] Register r12 information: 2-page vmalloc region starting 
at 0xf0814000 allocated at copy_process+0x16c/0xdd8
[    0.247888] Process swapper/0 (pid: 1, stack limit = 0x(ptrval))
[    0.258619] Stack: (0xf0815d78 to 0xf0816000)
[    0.264548] 
5d60:                                                       f0815e08 
c0896fd0
[    0.268771] 5d80: f0815d9c c0193bfc c1117d70 c1124000 00000036 
00000000 c1117d70 f0815da8
[    0.276848] 5da0: c12589bc 00000800 00000035 00000000 039b929b 
00000000 c2000030 c0a68a64
[    0.284925] 5dc0: f0815dd8 c0193bfc c1117d70 c1124000 00000036 
00000000 c1117d70 00000000
[    0.293002] 5de0: f0815e18 c0193bfc c078b204 00000001 c1270038 
00000000 c1106694 00000001
[    0.301078] 5e00: f0815ef0 00000000 f0815eb0 c0896624 00000001 
c0194138 f0815e78 c0194138
[    0.309155] 5e20: f0815e48 00000000 f0815ebf f0815e4c 00000006 
00000001 00000001 00000000
[    0.317232] 5e40: 02000601 00000000 00000000 00000000 00000000 
00000000 00000000 00000000
[    0.325308] 5e60: 00000000 00000000 00000000 00000000 00000000 
00000000 00000000 00000000
[    0.333387] 5e80: 00000000 00000000 00000000 00000000 00000002 
00000000 f0815ebf c078b204
[    0.341464] 5ea0: 00000000 f0815ee0 00000000 00000000 f0815ed0 
c08947e8 f0815ec8 00a9b284
[    0.349541] 5ec0: f0815ef8 c0b8d6b7 00000001 00000000 f0815f68 
c08946c8 00000001 c01012a0
[    0.357618] 5ee0: 00000001 00000001 00000002 00000000 00000001 
00000000 801012a0 00000000
[    0.365693] 5f00: 00000000 00000000 00000000 00000000 00000000 
00000000 00000000 00000000
[    0.373771] 5f20: 00000000 00000000 00000000 00000000 00000000 
00000000 00000000 00000000
[    0.381848] 5f40: 00000002 00000000 c078b204 c14ff100 00000001 
c1568000 00000000 00000000
[    0.389926] 5f60: 00000000 00000000 f0815f80 c100be5c c14ff100 
00000001 c1568000 00000000
[    0.398003] 5f80: f0815f98 c1001538 00000000 c0a96fa8 00000000 
00000000 f0815fa8 c0a96fc8
[    0.406079] 5fa0: 00000000 00000000 00000000 c010014c 00000000 
00000000 00000000 00000000
[    0.414157] 5fc0: 00000000 00000000 00000000 00000000 00000000 
00000000 00000000 00000000
[    0.422233] 5fe0: 00000000 00000000 00000000 00000000 00000013 
00000000 00000000 00000000
[    0.430303] Call trace:
[    0.430327]  qcom_scm_get_tzmem_pool from __scm_smc_call+0x30/0x2d4
[    0.440957]  __scm_smc_call from __get_convention+0xac/0x128
[    0.446885]  __get_convention from qcom_scm_call_atomic+0x24/0x90
[    0.452729]  qcom_scm_call_atomic from qcom_scm_set_boot_addr+0xe4/0x100
[    0.458658]  qcom_scm_set_boot_addr from qcom_smp_prepare_cpus+0x1c/0x94
[    0.465362]  qcom_smp_prepare_cpus from kernel_init_freeable+0xcc/0x140
[    0.471977]  kernel_init_freeable from kernel_init+0x20/0x144
[    0.478250]  kernel_init from ret_from_fork+0x14/0x28
[    0.484086] Exception stack(0xf0815fb0 to 0xf0815ff8)
[    0.489073] 5fa0:                                     00000000 
00000000 00000000 00000000
[    0.494068] 5fc0: 00000000 00000000 00000000 00000000 00000000 
00000000 00000000 00000000
[    0.502143] 5fe0: 00000000 00000000 00000000 00000000 00000013 00000000
[    0.510224] Code: e28dd004 e300003c e34c0127 e5900000 (e5900090)
[    0.516642] ---[ end trace 0000000000000000 ]---
[    0.522765] Kernel panic - not syncing: Attempted to kill init! 
exitcode=0x0000000b
[    0.527406] ---[ end Kernel panic - not syncing: Attempted to kill 
init! exitcode=0x0000000b ]---


> /me considered bringing in Linus, but decided to wait a bit

Big fan of his and everyone's work! :)



Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ