Date: Fri, 7 Mar 2008 14:00:04 +0900 From: Pyun YongHyeon <pyunyh@gmail.com> To: freebsd-net@freebsd.org Subject: Re: msk driver issues [was: Re: vlan issues with 7.0-RC3] Message-ID: <20080307050004.GB92656@cdnetworks.co.kr> In-Reply-To: <20080303035728.GD58253@hal.rescomp.berkeley.edu> References: <20080225091712.GM88015@hal.rescomp.berkeley.edu> <20080226074355.GD47750@cdnetworks.co.kr> <20080228023840.GR58253@hal.rescomp.berkeley.edu> <20080229060353.GC60623@cdnetworks.co.kr> <20080303035728.GD58253@hal.rescomp.berkeley.edu>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sun, Mar 02, 2008 at 07:57:28PM -0800, Christopher Cowart wrote: > On Fri, Feb 29, 2008 at 03:03:53PM +0900, Pyun YongHyeon wrote: > > On Wed, Feb 27, 2008 at 06:38:40PM -0800, Christopher Cowart wrote: > >>On Tue, Feb 26, 2008 at 04:43:55PM +0900, Pyun YongHyeon wrote: > >>>On Mon, Feb 25, 2008 at 01:17:12AM -0800, Christopher Cowart wrote: > >>>> I have a mac mini running 7.0-RC3, which I'm trying to turn it into a > >>>> router. I have a Linksys SRW2008 "fully managed" (via an IE only web > >>>> interface, ick) switch. > >>>> > >>>> Switch: > >>>> Port 1 - Trunk vlans 10,60,98 - FreeBSD Box > >>>> Port 7 - Access vlan 98 - Existing LAN (192.168.1.0/24) > >>>> > >>>> OpenWRT (192.168.1.1): > >>>> WRT54G box on the Existing LAN > >>>> > >>>> FreeBSD Box: > >>>> ifconfig msk0 up > >>>> ifconfig vlan98 create vlan 98 vlandev msk0 inet 192.168.1.67/24 > >>>> > >>>> With this configuration, I can ping hosts on the other lan segment (Port > >>>> 7). Arp and icmp seem to be quite happy. Unfortunately, I'm not having > >>>> any luck with tcp and udp. Any attempt to ssh to OpenWRT or dig > >>>> @OpenWRT hangs indefinitely. If I do a tcpdump, I see the SYN or A? > >>>> leaving and absolutely no response returning. If I run a tcpdump on > >>>> OpenWRT, I see no incoming traffic. > >>>> > >>>> When I try to connect *to* the FreeBSD box from the other lan segment, I > >>>> continue to have problems. tcpdump shows the SYNs arriving via vlan98 > >>>> and the FreeBSD box responding with SYN-ACK. OpenWRT receives the SYNACK. > >>>> > >>>> I disabled ipfw just to be sure (sysctl -w net.inet.ip.fw.enable=0), but > >>>> it had no effect on the problem. If I connect the FreeBSD box to a vlan > >>>> 98 access port and assign the address to msk0, my connectivity problems > >>>> go away. This leads me to believe that the firewall on OpenWRT is not > >>>> the problem and the problem is related to vlans. > >>>> > >>>> Thinking it was a problem with the not-so-cheap Linksys POS (bitterness > >>>> about the IE web interface again), I plugged my MacBook (running > >>>> Leopard, not FreeBSD) into the trunk port. Running the ifconfig commands > >>>> above (s/msk0/en0/), I got up and running without any problems. This > >>>> causes me to suspect the FreeBSD box. > >>>> > >>>> Does anyone have any idea what's going on here? Any suggestions for > >>>> further troubleshooting? > >>> > >>> Try disabling hardware features one by one in msk(4) and see how > >>> it goes. > >>> o Disable TSO. > >>> o Disable Tx checksum offload. > >>> o Disable VLAN hardware tagging. > >> > >>Works great after `sudo ifconfig msk0 -txcsum'. > >> > >>Is this a known bug, or should I file a PR? Let me know if there are any > >>other details I can provide to help somebody squash it. > > > > Would you capture broken TCP/UDP frames with tcpdump on receiving side > > and show it to me? > > Thanks for your help. I will e-mail you the corresponding tracefile > off-list. I wanted to discuss my initial findings here. > > When the FreeBSD box sends tcp or udp traffic to elsewhere on the > network, it is not seen at the receiving side, not even with bad > checksums. I tried setting up the Linksys device with a port mirror, but > apparently that's only supported on native vlan access ports. Great. > > So, I decided to cross-connect the FreeBSD box with my MacBook. I set up > a vlan interface and was able to reproduce the behavior. I did a traffic > dump on the parent interface (not the vlan interface) on the MacBook, > and noticed that the ethernet frames originating from the FreeBSD box > lacked 802.1q tags. Is it possible that the interface is not performing > the hardware tagging when txcsum is enabled? > Fix committed to HEAD, if_msk.c rev 1.30. > While I have your attention, I am also suffering from a problem that was > reported to -questions here[1]. About 3 times a day, I'll see the > watchdog timeout (missed Tx interrupts) message get logged, after which > point the NIC is useless until I reboot. Any ideas? > > [1] http://lists.freebsd.org/pipermail/freebsd-questions/2008-February/169633.html > I'll have a look. -- Regards, Pyun YongHyeon
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20080307050004.GB92656>