From: "Alan J. Wylie" <alan@wylie.me.uk>
To: Cong Wang <xiyou.wangcong@gmail.com>
Cc: "Holger Hoffstätte" <holger@applied-asynchrony.com>,
"Jamal Hadi Salim" <jhs@mojatatu.com>,
regressions@lists.linux.dev, "Jiri Pirko" <jiri@resnulli.us>,
netdev@vger.kernel.org, linux-kernel@vger.kernel.org,
"Octavian Purdila" <tavip@google.com>,
"Toke Høiland-Jørgensen" <toke@redhat.com>,
stable@vger.kernel.org, "Greg KH" <gregkh@linuxfoundation.org>
Subject: Re: [REGRESSION] 6.14.3 panic - kernel NULL pointer dereference in htb_dequeue
Date: Thu, 24 Apr 2025 13:53:31 +0100 [thread overview]
Message-ID: <20250424135331.02511131@frodo.int.wylie.me.uk> (raw)
In-Reply-To: <aAlAakEUu4XSEdXF@pop-os.localdomain>
> On Tue, Apr 22, 2025 at 07:20:24PM +0200, Holger Hoffstätte wrote:
> Meanwhile, if you could provide a reliable (and ideally minimum)
> reproducer, it would help me a lot to debug.
I've found a reproducer. Below is a stripped down version of the shell script
that I posted in my initial report.
Running this in a 1 second loop is enough to cause the panic very quickly.
It seems a bit of network traffic is needed, too.
# while true; do ./tc.sh; sleep 1; done
13:33:43 7196kbit 29296kbit
13:33:44 7196kbit 29296kbit
...
13:35:38 7196kbit 29296kbit
13:35:39 7196kbit 29296kbit
[panic]
# while true; do ./tc.sh; sleep 1; done
13:44:31 7196kbit 29296kbit
13:44:32 7196kbit 29296kbit
...
13:44:52 7196kbit 29296kbit
13:44:53 7196kbit 29296kbit
[panic]
The same place as usual
htb_dequeue+0x42f/0x610 [sch_htb]
--------8<--------8<--------8<--------8<--------8<--------8<--------8<--------8<--------8<
#!/usr/bin/bash
set -o nounset
set -o errexit
export PATH=/usr/bin
ext=ppp0
ext_ingress=ppp0ifb0
ext_up=7196kbit
ext_down=29296kbit
printf "%(%T)T $ext_up $ext_down\n"
q=1486
quantum=300
modprobe act_mirred
modprobe ifb
modprobe sch_cake
modprobe sch_fq_codel
ethtool -K "$ext" tso off gso off gro off
tc qdisc del dev "$ext" root >& /dev/null || true
tc qdisc del dev "$ext" ingress >& /dev/null || true
tc qdisc del dev "$ext_ingress" root >& /dev/null || true
tc qdisc del dev "$ext_ingress" ingress >& /dev/null || true
ip link del "$ext_ingress" >& /dev/null || true
tc qdisc add dev "$ext" handle ffff: ingress
ip link add name "$ext_ingress" type ifb
ip link set dev "$ext_ingress" up || true
tc filter add dev "$ext" parent ffff: protocol all u32 match u32 0 0 action mirred egress redirect dev "$ext_ingress"
tc qdisc add dev "$ext_ingress" root handle 1: htb default 11 r2q 20
tc class add dev "$ext_ingress" parent 1: classid 1:1 htb rate $ext_down
tc class add dev "$ext_ingress" parent 1:1 classid 1:11 htb rate $ext_down prio 0 quantum $q
tc qdisc add dev "$ext_ingress" parent 1:11 fq_codel quantum $quantum ecn
tc qdisc add dev "$ext" root handle 1: htb default 11
tc class add dev "$ext" parent 1: classid 1:1 htb rate $ext_up
tc class add dev "$ext" parent 1:1 classid 1:11 htb rate $ext_up prio 0 quantum $q
tc qdisc add dev "$ext" parent 1:11 fq_codel quantum $quantum noecn
--------8<--------8<--------8<--------8<--------8<--------8<--------8<--------8<--------8<
--
Alan J. Wylie https://www.wylie.me.uk/ mailto:<alan@wylie.me.uk>
Dance like no-one's watching. / Encrypt like everyone is.
Security is inversely proportional to convenience
next prev parent reply other threads:[~2025-04-24 12:53 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-04-21 9:40 [REGRESSION] 6.14.3 panic - kernel NULL pointer dereference in htb_dequeue Alan J. Wylie
2025-04-21 11:50 ` Holger Hoffstätte
2025-04-21 12:10 ` Alan J. Wylie
2025-04-21 19:06 ` Alan J. Wylie
2025-04-21 19:47 ` Holger Hoffstätte
2025-04-21 20:09 ` Alan J. Wylie
2025-04-22 16:51 ` Alan J. Wylie
2025-04-22 17:20 ` Holger Hoffstätte
2025-04-22 20:42 ` Cong Wang
2025-04-22 20:47 ` Alan J. Wylie
2025-04-22 21:49 ` Cong Wang
2025-04-23 9:51 ` Alan J. Wylie
2025-04-23 19:32 ` Cong Wang
2025-04-24 6:53 ` Alan J. Wylie
2025-04-24 12:53 ` Alan J. Wylie [this message]
2025-04-25 16:08 ` Cong Wang
2025-04-27 19:11 ` Cong Wang
2025-04-27 19:42 ` Alan J. Wylie
2025-04-27 20:35 ` Alan J. Wylie
2025-04-28 21:02 ` Cong Wang
2025-04-28 21:34 ` Alan J. Wylie
2025-04-28 23:59 ` Cong Wang
2025-04-28 11:45 ` Greg KH
2025-04-28 12:28 ` Holger Hoffstätte
2025-04-28 23:38 ` Cong Wang
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20250424135331.02511131@frodo.int.wylie.me.uk \
--to=alan@wylie.me.uk \
--cc=gregkh@linuxfoundation.org \
--cc=holger@applied-asynchrony.com \
--cc=jhs@mojatatu.com \
--cc=jiri@resnulli.us \
--cc=linux-kernel@vger.kernel.org \
--cc=netdev@vger.kernel.org \
--cc=regressions@lists.linux.dev \
--cc=stable@vger.kernel.org \
--cc=tavip@google.com \
--cc=toke@redhat.com \
--cc=xiyou.wangcong@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.