David and Michael,
can you please build a kernel with attached patch and options KDB,
and report what's the trace is.
Unfortunately my iwn(4) is running on amd64, so I can reproduce
exactly your case.
--
Totus tuus, Glebius.
Index: i386/i386/in_cksum.c
===================================================================
--- i386/i386/in_cksum.c (revision 241328)
+++ i386/i386/in_cksum.c (working copy)
@@ -36,6 +36,7 @@
#include <sys/param.h>
#include <sys/systm.h>
#include <sys/mbuf.h>
+#include <sys/kdb.h>
#include <netinet/in.h>
#include <netinet/in_systm.h>
@@ -204,6 +205,7 @@
caddr_t addr;
union q_util q_util;
union l_util l_util;
+ static int once = 0;
len -= skip;
for (; skip && m; m = m->m_next) {
@@ -477,8 +479,12 @@
su.c[0] = *(char *)w;
}
- if (len)
+ if (len) {
printf("%s: out of data by %d\n", __func__, len);
+ if (once == 0)
+ kdb_backtrace();
+ once = 1;
+ }
if (mlen == -1) {
/* The last mbuf has odd # of bytes. Follow the
standard (the odd byte is shifted left by 8 bits) */
_______________________________________________
[email protected] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "[email protected]"