Re: linux-next: runtime warning after merge of the cel-fixes tree

From: Chuck Lever III
Date: Thu Apr 07 2022 - 09:49:40 EST




> On Apr 7, 2022, at 12:45 AM, Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> wrote:
>
> Hi all,
>
> After merging the cel-fixes tree, today's linux-next build (powerpc
> pseries_le_defconfig) produced this warning:
>
> ftrace: allocating 33539 entries in 13 pages
> ftrace: allocated 13 pages with 3 groups
> trace event string verifier disabled
> rcu: Hierarchical RCU implementation.
> rcu: RCU event tracing is enabled.
> rcu: RCU restricting CPUs from NR_CPUS=2048 to nr_cpu_ids=1.
> Rude variant of Tasks RCU enabled.
> Tracing variant of Tasks RCU enabled.
> rcu: RCU calculated value of scheduler-enlistment delay is 10 jiffies.
> rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=1
> ------------[ cut here ]------------
> WARNING: CPU: 0 PID: 0 at kernel/trace/trace_events.c:431 trace_event_raw_init+0x1a4/0x7d0
> Modules linked in:
> CPU: 0 PID: 0 Comm: swapper/0 Not tainted 5.18.0-rc1 #2
> NIP: c0000000002c0924 LR: c0000000002c0ce8 CTR: c0000000002c0990
> REGS: c000000002787a00 TRAP: 0700 Not tainted (5.18.0-rc1)
> MSR: 8000000002021033 <SF,VEC,ME,IR,DR,RI,LE> CR: 44000282 XER: 20000000
> CFAR: c0000000002c0b34 IRQMASK: 1
> GPR00: c0000000002c0cd0 c000000002787ca0 c00000000278ae00 0000000000000000
> GPR04: 000000000000002c 0000000000000005 0000000000000057 c0000000002c08ac
> GPR08: 0000000000000000 0000000000000000 0000000000000000 0000000000000000
> GPR12: c0000000002c0780 c000000002950000 0000000000000003 0000000000000000
> GPR16: 0000000002bf00d0 000000007e68ebc8 c000000000fb0758 000508b58019388f
> GPR20: 0000000000000000 0000000000000001 c000000000fb0748 0000000000000003
> GPR24: 0000000000000000 0000000000000000 0000000000000001 0000000000000000
> GPR28: c0000000026fcde0 c0000000026f60e0 000000000000005f c0000000026f613f
> NIP [c0000000002c0924] trace_event_raw_init+0x1a4/0x7d0
> LR [c0000000002c0ce8] trace_event_raw_init+0x568/0x7d0
> Call Trace:
> [c000000002787ca0] [c0000000002c0cd0] trace_event_raw_init+0x550/0x7d0 (unreliable)
> [c000000002787da0] [c0000000002bd908] event_init+0x78/0x100
> [c000000002787e10] [c0000000020346ac] trace_event_init+0xc8/0x334
> [c000000002787eb0] [c000000002033d20] trace_init+0x18/0x2c
> [c000000002787ed0] [c000000002004318] start_kernel+0x598/0x8d8
> [c000000002787f90] [c00000000000d19c] start_here_common+0x1c/0x600
> Instruction dump:
> 41800348 60000000 60420000 3bde0001 7fdf07b4 7ffdfa14 891f0000 710a00ff
> 4082ff5c 2c3a0000 38600000 41820230 <0fe00000> f9c10070 f9e10078 fa010080
> ---[ end trace 0000000000000000 ]---
> event svc_defer_recv has unsafe dereference of argument 1
> print_fmt: "addr=%pISpc dr=%p xid=0x%08x", (struct sockaddr *)__get_dynamic_array(addr), REC->dr, REC->xid
> event svc_defer_queue has unsafe dereference of argument 1
> print_fmt: "addr=%pISpc dr=%p xid=0x%08x", (struct sockaddr *)__get_dynamic_array(addr), REC->dr, REC->xid
> event svc_defer_drop has unsafe dereference of argument 1
> print_fmt: "addr=%pISpc dr=%p xid=0x%08x", (struct sockaddr *)__get_dynamic_array(addr), REC->dr, REC->xid
> NR_IRQS: 512, nr_irqs: 512, preallocated irqs: 16
> rcu: srcu_init: Setting srcu_struct sizes based on contention.
>
> Introduced by commit
>
> e2e917f8677d ("SUNRPC: Fix the svc_deferred_event trace class")
>
> At least reverting that commit makes the warning go away.
>
> I have left that commit reverted for today.

Thank you, Stephen. The NFS community has already discussed a
fix for this issue. I'll push it out as soon as I can.


--
Chuck Lever