Date: Thu, 23 Mar 2000 10:50:25 +0900 From: Yoshinobu Inoue <shin@nd.net.fujitsu.co.jp> To: imp@village.org Cc: ilmar@ints.ru, nms@otdel-1.org, freebsd-current@FreeBSD.ORG Subject: Re: -current sudden panics :( Message-ID: <20000323105025W.shin@nd.net.fujitsu.co.jp> In-Reply-To: <200003222201.PAA33948@harmony.village.org> References: <Pine.BSF.4.21.0003220813250.220-100000@ws-ilmar.ints.ru> <200003222201.PAA33948@harmony.village.org>
next in thread | previous in thread | raw e-mail | index | archive | help
Hi, > : This is driver for ed(ne2000) cards. I have realtek(rl driver). I took a > : look at his source and didn't find such strings. There is comment there > : about cutting off mbuf header before passing it to ether_input - what's > : this? > > I applied a similar patch to the end of the rl packet handling > routine. It didn't solve my arp crashes, however. It is almost as > if sometimes the rl driver passes a packet to ether_input and then > does bad things to it behind the scenes... I've not had a lot of time > to try to track down why this does what it does. > > Warner I would like to narrow down the problem more and could you please try if this patch stop the problem or not? (The m_pullup() is recently added to if_rl.c. It should not be harmful, but I suspect that this might have invoked another hidden bug.) Yoshinobu Inoue Index: if_rl.c =================================================================== RCS file: /home/ncvs/src/sys/pci/if_rl.c,v retrieving revision 1.38 diff -u -r1.38 if_rl.c --- if_rl.c 1999/12/28 06:04:29 1.38 +++ if_rl.c 2000/03/23 01:35:02 @@ -1130,7 +1130,8 @@ m_adj(m, RL_ETHER_ALIGN); m_copyback(m, wrap, total_len - wrap, sc->rl_cdata.rl_rx_buf); - m = m_pullup(m, sizeof(struct ether_header)); + if (m->m_len < sizeof(struct ether_header)) + m = m_pullup(m, sizeof(struct ether_header)); if (m == NULL) { printf("rl%d: m_pullup failed", sc->rl_unit); To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20000323105025W.shin>