svn commit: r353934 - head/sys/net
Conrad Meyer
cem at FreeBSD.org
Wed Oct 23 16:48:23 UTC 2019
Author: cem
Date: Wed Oct 23 16:48:22 2019
New Revision: 353934
URL: https://svnweb.freebsd.org/changeset/base/353934
Log:
Prevent a panic when a driver provides bogus debugnet parameters
This is just a bandaid; we should fix the driver(s) too. Introduced in
r353685.
PR: 241403
X-MFC-With: r353685
Reported by: np and others
Modified:
head/sys/net/debugnet.c
Modified: head/sys/net/debugnet.c
==============================================================================
--- head/sys/net/debugnet.c Wed Oct 23 16:48:17 2019 (r353933)
+++ head/sys/net/debugnet.c Wed Oct 23 16:48:22 2019 (r353934)
@@ -826,6 +826,15 @@ debugnet_any_ifnet_update(struct ifnet *ifp)
nmbuf = ncl * (4 + nrxr);
ncl *= nrxr;
+ /*
+ * Bandaid for drivers that (incorrectly) advertise LinkUp before their
+ * dn_init method is available.
+ */
+ if (nmbuf == 0 || ncl == 0 || clsize == 0) {
+ printf("%s: Bad dn_init result from %s (ifp %p), ignoring.\n",
+ __func__, if_name(ifp), ifp);
+ return;
+ }
dn_maybe_reinit_mbufs(nmbuf, ncl, clsize);
}
More information about the svn-src-all
mailing list