Date: Fri, 12 Jan 2007 11:01:50 +0900 From: Pyun YongHyeon <pyunyh@gmail.com> To: Rene Ladan <r.c.ladan@gmail.com> Cc: freebsd-hackers@freebsd.org, Pietro Cerutti <pietro.cerutti@gmail.com> Subject: Re: re(4) incorrect checksum Message-ID: <20070112020149.GA42529@cdnetworks.co.kr> In-Reply-To: <45A659A1.2060401@gmail.com> References: <e572718c0701110229q60a66d32o68f789c889b4a06@mail.gmail.com> <45A61C1A.3090600@gmail.com> <20070111122049.GE33964@cdnetworks.co.kr> <45A659A1.2060401@gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
--VbJkn9YxBvnuCH5J Content-Type: text/plain; charset=us-ascii Content-Disposition: inline On Thu, Jan 11, 2007 at 04:37:05PM +0100, Rene Ladan wrote: > Pyun YongHyeon schreef: > > On Thu, Jan 11, 2007 at 12:14:34PM +0100, Rene Ladan wrote: > > > Pietro Cerutti schreef: > > > > Hi lists, > > > > > > > > FreeBSD gahrtop.localhost 6.2-PRERELEASE FreeBSD 6.2-PRERELEASE #1: > > > > Tue Jan 9 19:34:13 CET 2007 > > > > root@gahrtop:/usr/obj/usr/src/sys/GAHRTOP i386 > > > > > > > > CPU: Intel(R) Core(TM)2 CPU T7200 @ 2.00GHz (2000.15-MHz > > > > 686-class CPU) > > > > Cores per package: 2 > > > > > > > > re0: <RealTek 8168B/8111B PCIe Gigabit Ethernet> port 0xc800-0xc8ff > > > > mem 0xff2ff000-0xff2fffff irq 17 at device 0.0 on pci2 > > > > > > > > ($FreeBSD: src/sys/dev/re/if_re.c,v 1.46.2.20 2006/09/21 11:08:28 > > > > yongari Exp $) > > > > > > > > I get checksum errors on every packet I send, example: > > > > > > > > Checksum: 0x0bc5 [incorrect, should be 0x78fe (maybe caused by > > > > checksum offloading?)] > > > > > > > > I think this could be the cause of some web pages (e.g. Gmail in > > > > standard view [html view works well]) not to be displayed. > > > > > > > > I tracked down the problem to the re(4) driver just because wlan works > > > > good... > > > > > > > > Any ideas? > > > > > > > I'm also seeing these www problems with my re(4) card (chipid > > > 0x816810ec), see > > > http://lists.freebsd.org/pipermail/freebsd-current/2006-December/068333.html > > > > > > > Does your re(4) also work when you disable checksum offload? > > > Yes, 'ifconfig re0 -txcsum' does the trick. > > re0: <RealTek 8168/8111B PCIe Gigabit Ethernet> port 0xc800-0xc8ff mem > 0xfe0ff000-0xfe0fffff irq 16 at device 0.0 on pci2 > > if.re.c revision 1.80 2006/12/20 02:13:59 marius > I've never encountered checksum offload issue after wpaul's fix. How about attached one? It's just vague guess but please give it try and let me know the result. -- Regards, Pyun YongHyeon --VbJkn9YxBvnuCH5J Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename="if_re.checksum.patch" Index: if_re.c =================================================================== RCS file: /home/ncvs/src/sys/dev/re/if_re.c,v retrieving revision 1.80 diff -u -r1.80 if_re.c --- if_re.c 20 Dec 2006 02:13:59 -0000 1.80 +++ if_re.c 12 Jan 2007 01:42:59 -0000 @@ -2027,9 +2027,9 @@ arg.rl_flags = RL_TDESC_CMD_LGSEND | ((uint32_t)(*m_head)->m_pkthdr.tso_segsz << RL_TDESC_CMD_MSSVAL_SHIFT); - else { - if ((*m_head)->m_pkthdr.csum_flags & CSUM_IP) - arg.rl_flags |= RL_TDESC_CMD_IPCSUM; + else if (((*m_head)->m_pkthdr.csum_flags & + (CSUM_IP | CSUM_TCP | CSUM_UDP)) != 0) { + arg.rl_flags |= RL_TDESC_CMD_IPCSUM; if ((*m_head)->m_pkthdr.csum_flags & CSUM_TCP) arg.rl_flags |= RL_TDESC_CMD_TCPCSUM; if ((*m_head)->m_pkthdr.csum_flags & CSUM_UDP) --VbJkn9YxBvnuCH5J--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20070112020149.GA42529>