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: <CA+V-a8tsPGJMru-ui4t_Bd_0+be2eBFU-2O=nGM2rrRL6ja1sA@mail.gmail.com>
Date: Tue, 7 Oct 2025 18:00:11 +0100
From: "Lad, Prabhakar" <prabhakar.csengg@...il.com>
To: netdev <netdev@...r.kernel.org>
Cc: Linux-Renesas <linux-renesas-soc@...r.kernel.org>, 
	Fabrizio Castro <fabrizio.castro.jz@...esas.com>
Subject: Re: CPU stalls with CONFIG_PREEMPT_RT enabled on next-20251006
 (Renesas RZ/G2L & RZ/G3E)

Hi All,

On Tue, Oct 7, 2025 at 5:40 PM Lad, Prabhakar
<prabhakar.csengg@...il.com> wrote:
>
> Hi All,
>
> With CONFIG_PREEMPT_RT enabled, I’m observing CPU stalls from the Rx
> path on two different drivers across Renesas platforms.
>
Just to update I managed to replicate this issue on a different path
on R/ZV2H which uses the STMMAC driver (Logs [3]).

> The first case is on the RZ/G3E SoC using the STMMAC driver:
> -----x-----x------x------x------x------x------x------x------x------x------x------x------x
> [  173.505971] rcu: INFO: rcu_preempt self-detected stall on CPU
> [  173.506014] rcu: 0-....: (2 GPs behind)
> idle=de74/1/0x4000000000000000 softirq=0/0 fqs=2178 rcuc=5257
> jiffies(starved)
> [  173.506077] rcu: (t=5250 jiffies g=2757 q=79 ncpus=4)
> [  173.506118] CPU: 0 UID: 0 PID: 290 Comm: irq/107-eth0 Not tainted
> 6.17.0-next-20251006-00001-gaef898d60052 #19 PREEMPT_RT
> [  173.506163] Hardware name: Renesas SMARC EVK version 2 based on
> r9a09g047e57 (DT)
> [  173.506182] pstate: 40400005 (nZcv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--)
> [  173.506217] pc : rt_spin_lock+0x40/0x190
> [  173.506280] lr : stmmac_tx_clean.constprop.0+0x80/0x7a8
> [  173.506323] sp : ffff800082883a40
> [  173.506338] x29: ffff800082883a60 x28: ffff0000c1eb0a80 x27: ffff800082883c18
> [  173.506397] x26: ffff80007a330000 x25: ffff800082883c00 x24: ffff80008173a000
> [  173.506447] x23: 00000000ffff8479 x22: 0000000000000003 x21: 0000000000000003
> [  173.506497] x20: ffff0000c1eb8580 x19: ffff0000c1eb8580 x18: 0000000000000001
> [  173.506545] x17: ffff0000c004f800 x16: 0000000000000bfe x15: 0000000000000000
> [  173.506593] x14: 0000767bd1d30308 x13: 00000000000003f8 x12: 0000000000000000
> [  173.506641] x11: 0000000000000000 x10: 0000000000000000 x9 : 00000000000013c0
> [  173.506687] x8 : ffff800082883c88 x7 : 0000000000000000 x6 : 0000000000000000
> [  173.506734] x5 : 0000000000000480 x4 : ffff0000c1eb0000 x3 : ffff800082883b67
> [  173.506781] x2 : ffff0000c1eb8598 x1 : ffff0000c1f21140 x0 : 0000000000000000
> [  173.506829] Call trace:
> [  173.506843]  rt_spin_lock+0x40/0x190 (P)
> [  173.506905]  stmmac_tx_clean.constprop.0+0x80/0x7a8
> [  173.506948]  stmmac_napi_poll_tx+0x6c/0x154
> [  173.506989]  __napi_poll.constprop.0+0x38/0x188
> [  173.507041]  net_rx_action+0x118/0x264
> [  173.507088]  handle_softirqs.isra.0+0xe4/0x1ec
> [  173.507149]  __local_bh_enable_ip+0xc4/0x128
> [  173.507186]  irq_forced_thread_fn+0x48/0x60
> [  173.507240]  irq_thread+0x188/0x31c
> [  173.507292]  kthread+0x12c/0x210
> [  173.507337]  ret_from_fork+0x10/0x20
>
> The second case is on the RZ/G2L SoC using the RAVB driver:
> -----x-----x------x------x------x------x------x------x------x------x------x------x------x
> [   70.821322] rcu: INFO: rcu_preempt self-detected stall on CPU
> [   70.821351] rcu: 0-....: (4970 ticks this GP)
> idle=e2c4/1/0x4000000000000000 softirq=0/0 fqs=2622 rcuc=5112
> jiffies(starved)
> [   70.821366] rcu: (t=5250 jiffies g=6729 q=98 ncpus=2)
> [   70.821382] CPU: 0 UID: 0 PID: 101 Comm: irq/45-11c20000 Not
> tainted 6.17.0-next-20251006-00001-gaef898d60052 #19 PREEMPT_RT
> [   70.821392] Hardware name: Renesas SMARC EVK based on r9a07g044l2 (DT)
> [   70.821397] pstate: 80400005 (Nzcv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--)
> [   70.821404] pc : rt_spin_trylock+0x44/0xd8
> [   70.821426] lr : try_charge_memcg+0xd0/0x7a0
> [   70.821442] sp : ffff8000820cb3e0
> [   70.821445] x29: ffff8000820cb430 x28: 0000000000000001 x27: 0000000000000800
> [   70.821459] x26: 0000000000000000 x25: ffff00000bda1140 x24: ffff80008185f3e0
> [   70.821469] x23: 0000000000000040 x22: ffff00000cc7e800 x21: ffff80008167e600
> [   70.821479] x20: 0000000000000820 x19: 0000000000000002 x18: 0000000000000000
> [   70.821489] x17: ffff000009c3e580 x16: 00000000000003f6 x15: 000000000000000c
> [   70.821498] x14: 0000000000000000 x13: 0000000000000014 x12: ffff00000bdba800
> [   70.821508] x11: ffff00000bda8000 x10: 0000000000005114 x9 : 0000000000000000
> [   70.821517] x8 : ffff8000820cb588 x7 : 0000000000000000 x6 : 0000000000000000
> [   70.821526] x5 : 0000000000000000 x4 : ffff00000bda1140 x3 : ffff00007ddda618
> [   70.821536] x2 : ffff00000bda1140 x1 : ffff00000bda1140 x0 : 0000000000000001
> [   70.821546] Call trace:
> [   70.821550]  rt_spin_trylock+0x44/0xd8 (P)
> [   70.821564]  mem_cgroup_sk_charge+0x2c/0x80
> [   70.821572]  __sk_mem_raise_allocated+0x1cc/0x380
> [   70.821584]  __sk_mem_schedule+0x3c/0x60
> [   70.821592]  tcp_try_rmem_schedule+0x88/0x48c
> [   70.821603]  tcp_data_queue+0x2b0/0xe1c
> [   70.821611]  tcp_rcv_established+0x3bc/0xba0
> [   70.821619]  tcp_v4_do_rcv+0x1ec/0x2b8
> [   70.821630]  tcp_v4_rcv+0x954/0xf20
> [   70.821640]  ip_protocol_deliver_rcu+0x38/0x1a0
> [   70.821648]  ip_local_deliver_finish+0x90/0x120
> [   70.821654]  ip_local_deliver+0x7c/0x124
> [   70.821661]  ip_rcv+0x74/0x128
> [   70.821667]  __netif_receive_skb_core.constprop.0+0x928/0x11b0
> [   70.821679]  __netif_receive_skb_list_core+0xe8/0x210
> [   70.821688]  netif_receive_skb_list_internal+0x1dc/0x2d0
> [   70.821697]  napi_complete_done+0x80/0x1bc
> [   70.821705]  ravb_poll+0x170/0x1e4
> [   70.821715]  __napi_poll.constprop.0+0x38/0x188
> [   70.821723]  net_rx_action+0x118/0x264
> [   70.821732]  handle_softirqs.isra.0+0xe4/0x1ec
> [   70.821746]  __local_bh_enable_ip+0xc4/0x128
> [   70.821753]  irq_forced_thread_fn+0x48/0x60
> [   70.821765]  irq_thread+0x188/0x31c
> [   70.821775]  kthread+0x12c/0x210
> [   70.821785]  ret_from_fork+0x10/0x20
>

[3] The third case is on the RZ/V2H SoC using the STMMAC driver:
-----x-----x------x------x------x------x------x------x------x------x------x------x------x
[   62.140291] audit: type=1334 audit(1748544553.272:34): prog-id=26 op=UNLOAD
[   62.140347] audit: type=1334 audit(1748544553.272:35): prog-id=25 op=UNLOAD
[   93.215241] rcu: INFO: rcu_preempt self-detected stall on CPU
[   93.215283] rcu: 0-....: (5337 ticks this GP)
idle=8a44/1/0x4000000000000000 softirq=0/0 fqs=1817 rcuc=5425
jiffies(starved)
[   93.215346] rcu: (t=5250 jiffies g=2757 q=101 ncpus=4)
[   93.215387] CPU: 0 UID: 0 PID: 302 Comm: irq/114-eth0 Not tainted
6.17.0-next-20251006-00001-gaef898d60052 #19 PREEMPT_RT
[   93.215432] Hardware name: Renesas RZ/V2H EVK Board based on
r9a09g057h44 (DT)
[   93.215451] pstate: 60400005 (nZCv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--)
[   93.215487] pc : rt_spin_lock+0x40/0x190
[   93.215550] lr : stmmac_napi_check+0x124/0x1e0
[   93.215604] sp : ffff800083353c70
[   93.215618] x29: ffff800083353c90 x28: ffff80008173e1a0 x27: ffff0000c0f99cab
[   93.215678] x26: ffff0000c206e800 x25: ffff0000c0f99cac x24: ffff0000c262a238
[   93.215730] x23: 0000000000000000 x22: ffff0000c2629e40 x21: 0000000000000008
[   93.215780] x20: ffff0000c2629c40 x19: ffff0000c262a238 x18: 0000000000000001
[   93.215830] x17: ffff0000c004f800 x16: 0000000000000bfa x15: 0000000000000000
[   93.215879] x14: 00002d68a20f4c12 x13: 0000000000000050 x12: 0000000000000000
[   93.215928] x11: 0000000000000000 x10: 0000000000000000 x9 : 00000000000013c0
[   93.215976] x8 : 00000000000011c0 x7 : 00000000000015c0 x6 : 0000000000000000
[   93.216023] x5 : ffff0000c2629e40 x4 : ffff0000c2629e50 x3 : 0000000000000030
[   93.216071] x2 : ffff0000c262a250 x1 : ffff0000c264a280 x0 : 0000000000000000
[   93.216121] Call trace:
[   93.216136]  rt_spin_lock+0x40/0x190 (P)
[   93.216198]  stmmac_napi_check+0x124/0x1e0
[   93.216255]  stmmac_interrupt+0x94/0x160
[   93.216295]  irq_thread_fn+0x2c/0xb0
[   93.216348]  irq_forced_thread_fn+0x34/0x60
[   93.216399]  irq_thread+0x188/0x31c
[   93.216452]  kthread+0x12c/0x210
[   93.216496]  ret_from_fork+0x10/0x20

Cheers,
Prabhakar

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ