Re: [PATCH v3 00/10] powerpc/pseries: New character devices for system parameters and VPD
Michal Suchánek writes: > What's the status here? > > Can this move on with the 4th patch skipped, or is new revision > expected? I would like to get some feedback on the idea for coarse per-function locking in patch #2 "Facilitate high-level call sequences" since that is a core change to the RTAS subsystem and new in this revision. But I intend to send a new version (without a boot bug) this week regardless.
Re: [PATCH v3 00/10] powerpc/pseries: New character devices for system parameters and VPD
Hello, On Thu, Oct 26, 2023 at 06:56:36PM -0500, Nathan Lynch wrote: > Nathan Lynch via B4 Relay > writes: > > I have made changes to librtas to prefer the new interfaces and > > verified that existing clients work correctly with the new code. > > Unfortunately I made a mistake in testing this time and introduced a > boot-time oops: > > BUG: Kernel NULL pointer dereference on read at 0x0018 > Faulting instruction address: 0xc004223c > Oops: Kernel access of bad area, sig: 7 [#1] > LE PAGE_SIZE=64K MMU=Radix SMP NR_CPUS=2048 NUMA pSeries > Modules linked in: > CPU: 0 PID: 0 Comm: swapper Tainted: GW 6.6.0-rc2+ #129 > NIP: c004223c LR: c0042238 CTR: > REGS: c2c579d0 TRAP: 0300 Tainted: GW (6.6.0-rc2+) > MSR: 80001033 CR: 28000284 XER: > CFAR: c0042008 DAR: 0018 DSISR: 0008 IRQMASK: 3 > GPR00: c0042238 c2c57c70 c1f5eb00 > GPR04: c294cd08 0002 c2c579b4 > GPR08: 0002 c2c0da80 > GPR12: c5e4 02097728 > GPR16: 0001 02097b80 020975b8 > GPR20: 020976f0 020974e8 030feb00 030feb00 > GPR24: 2008 0001 c28f3d70 > GPR28: 02d31020 c2cac268 c2d31020 > NIP [c004223c] do_enter_rtas+0xcc/0x460 > LR [c0042238] do_enter_rtas+0xc8/0x460 > Call Trace: > [c2c57c70] [c0042238] do_enter_rtas+0xc8/0x460 (unreliable) > [c2c57cc0] [c0042e34] rtas_call+0x434/0x490 > [c2c57d20] [c00fd584] papr_sysparm_get+0xe4/0x230 > [c2c57db0] [c20267d0] pSeries_probe+0x2f0/0x5fc > [c2c57e80] [c200a318] setup_arch+0x11c/0x524 > [c2c57f10] [c200418c] start_kernel+0xcc/0xc1c > [c2c57fe0] [c000e788] start_here_common+0x1c/0x20 > > This was introduced by patch #4 "powerpc/rtas: Warn if per-function lock > isn't held": __do_enter_rtas() is now attempting token -> descriptor > lookups unconditionally, before the xarray for that has been initialized. > > With that change reverted, the series tests OK. What's the status here? Can this move on with the 4th patch skipped, or is new revision expected? Thanks Michal
Re: [PATCH v3 00/10] powerpc/pseries: New character devices for system parameters and VPD
Nathan Lynch via B4 Relay writes: > I have made changes to librtas to prefer the new interfaces and > verified that existing clients work correctly with the new code. Unfortunately I made a mistake in testing this time and introduced a boot-time oops: BUG: Kernel NULL pointer dereference on read at 0x0018 Faulting instruction address: 0xc004223c Oops: Kernel access of bad area, sig: 7 [#1] LE PAGE_SIZE=64K MMU=Radix SMP NR_CPUS=2048 NUMA pSeries Modules linked in: CPU: 0 PID: 0 Comm: swapper Tainted: GW 6.6.0-rc2+ #129 NIP: c004223c LR: c0042238 CTR: REGS: c2c579d0 TRAP: 0300 Tainted: GW (6.6.0-rc2+) MSR: 80001033 CR: 28000284 XER: CFAR: c0042008 DAR: 0018 DSISR: 0008 IRQMASK: 3 GPR00: c0042238 c2c57c70 c1f5eb00 GPR04: c294cd08 0002 c2c579b4 GPR08: 0002 c2c0da80 GPR12: c5e4 02097728 GPR16: 0001 02097b80 020975b8 GPR20: 020976f0 020974e8 030feb00 030feb00 GPR24: 2008 0001 c28f3d70 GPR28: 02d31020 c2cac268 c2d31020 NIP [c004223c] do_enter_rtas+0xcc/0x460 LR [c0042238] do_enter_rtas+0xc8/0x460 Call Trace: [c2c57c70] [c0042238] do_enter_rtas+0xc8/0x460 (unreliable) [c2c57cc0] [c0042e34] rtas_call+0x434/0x490 [c2c57d20] [c00fd584] papr_sysparm_get+0xe4/0x230 [c2c57db0] [c20267d0] pSeries_probe+0x2f0/0x5fc [c2c57e80] [c200a318] setup_arch+0x11c/0x524 [c2c57f10] [c200418c] start_kernel+0xcc/0xc1c [c2c57fe0] [c000e788] start_here_common+0x1c/0x20 This was introduced by patch #4 "powerpc/rtas: Warn if per-function lock isn't held": __do_enter_rtas() is now attempting token -> descriptor lookups unconditionally, before the xarray for that has been initialized. With that change reverted, the series tests OK.