[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <68677680.a00a0220.c7b3.0016.GAE@google.com>
Date: Thu, 03 Jul 2025 23:36:48 -0700
From: syzbot <syzbot+1261670bbdefc5485a06@...kaller.appspotmail.com>
To: linux-kernel@...r.kernel.org
Subject: Re: [syzbot] [net?] general protection fault in qdisc_tree_reduce_backlog
For archival purposes, forwarding an incoming command email to
linux-kernel@...r.kernel.org.
***
Subject: Re: [syzbot] [net?] general protection fault in qdisc_tree_reduce_backlog
Author: lizhi.xu@...driver.com
#syz test
diff --git a/net/sched/sch_api.c b/net/sched/sch_api.c
index d8a33486c51..7f32347971f 100644
--- a/net/sched/sch_api.c
+++ b/net/sched/sch_api.c
@@ -803,12 +803,13 @@ void qdisc_tree_reduce_backlog(struct Qdisc *sch, int n, int len)
break;
}
cops = sch->ops->cl_ops;
- if (notify && cops->qlen_notify) {
+ if (cops && notify && cops->qlen_notify) {
/* Note that qlen_notify must be idempotent as it may get called
* multiple times.
*/
cl = cops->find(sch, parentid);
- cops->qlen_notify(sch, cl);
+ if (virt_addr_valid(cl))
+ cops->qlen_notify(sch, cl);
}
sch->q.qlen -= n;
sch->qstats.backlog -= len;
Powered by blists - more mailing lists