Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 30 Nov 2006 14:02:17 +0200
From:      John Hay <jhay@meraka.org.za>
To:        Sam Leffler <sam@errno.com>
Cc:        freebsd-arm@freebsd.org
Subject:   Re: Gateworks 2348 and ath problem
Message-ID:  <20061130120217.GA41346@zibbi.meraka.csir.co.za>
In-Reply-To: <20061129193842.GA98569@zibbi.meraka.csir.co.za>
References:  <4560F437.5060402@errno.com> <20061128132902.GA19150@zibbi.meraka.csir.co.za> <456DD60C.2000208@errno.com> <20061129193842.GA98569@zibbi.meraka.csir.co.za>

next in thread | previous in thread | raw e-mail | index | archive | help
> > Well you're doing better than me.  I tried patching the hal.o in CVS to
> > deal with the ELF magic number and hit problems with DMA aborts on rx so
> > went off to do other work.  I'm trying to get a new version together for
> > folks to use but am busy with real work.  All my successful testing was
> > done w/ a version of the hal that I am not (yet) comfortable distributing.
> > 
> > The above looks like something outside the driver.  I forced the
> > ethernet header structure to be __packed to deal with a compiler issue;
> > do you have that change (you don't indicate what code you are running or
> > how you built it)?
> 
> Hmmm, I'm doing what my kids do, just assume everyone knows what I do. :-)
> 
> I have basically followed the instructions you posted when you merged
> the Gateworks/Avila code into -current. So it was -current build on the
> day I posted. I tried both with the hal in -current (using wackelf) and
> the 0909 hal you mentioned in your email. The kernel used the AVILA conf
> in -current changed to use the CF as root, with nfs and bootp removed
> and these added:
> 
> options         MROUTING
> options         IPFIREWALL
> options         IPFIREWALL_FORWARD
> options         IPFIREWALL_DEFAULT_TO_ACCEPT
> options         IPFIREWALL_VERBOSE
> options         IPDIVERT
> options         DUMMYNET
> 
> options         IPSEC
> options         IPSEC_ESP
> 
> Thinking about it, I can remove all of them and try again to make sure
> it isn't one of them doing it.
> 
> The version of net/ethernet.h that I use is 1.27 and struct ether_header
> is marked as __packed.
> 
> What is strange to me is that according to tcpdump on the arm box itself,
> the outgoing packets looks ok.

Ok, I built a kernel without all those options, but it didn't make a
difference. I also tried sta mode and it still looks the same. Some
new info that I have is that when I do a tcpdump on the arm box itself,
adding -y IEEE802_11_RADIO makes a difference. Without it the outgoing
packets looks ok, but with it 2 bytes are added between the ether (802.11)
header and the ip(v6) header.

Here is a packet without IEEE802_11_RADIO:

tcpdump -p -i ath0 -n -s 0 -X -c 5 -e
11:59:06.009123 00:02:6f:34:21:a2 > 33:33:00:00:00:01, ethertype IPv6 (0x86dd), length 94: fd9c:6829:597c:10:202:6fff:fe34:21a2.698 > ff0e::1.698: UDP, length 32
        0x0000:  6000 0000 0028 1101 fd9c 6829 597c 0010  `....(....h)Y|..
	0x0010:  0202 6fff fe34 21a2 ff0e 0000 0000 0000  ..o..4!.........
	0x0020:  0000 0000 0000 0001 02ba 02ba 0028 2b63  .............(+c
	0x0030:  0020 e1db c948 001c fd9c 6829 597c 0010  .....H....h)Y|..
	0x0040:  0202 6fff fe34 21a2 0100 7bfd 0000 0503  ..o..4!...{.....

Here is a similar packet with IEEE802_11_RADIO:
tcpdump -p -i ath0 -n -s 0 -X -c 5 -e -y IEEE802_11_RADIO
11:59:30.249119 2431813630us tsft short preamble 18.0 Mb/s 2412 MHz (0x0480) 40dBm tx power antenna 0 BSSID:00:02:6f:22:95:47 SA:00:02:6f:34:21:a2 DA:33:33:00:00:00:01 LLC, dsap SNAP (0xaa), ssap SNAP (0xaa), cmd 0x03: oui Ethernet (0x000000), ethertype IPv6 (0x86dd): 1101:fd9c:6829:597c:10:202:6fff:fe34 > 21a2:ff0e::: [|HBH]
        0x0000:  aaaa 0300 0000 86dd 0000 6000 0000 0028  ..........`....(
        0x0010:  1101 fd9c 6829 597c 0010 0202 6fff fe34  ....h)Y|....o..4
        0x0020:  21a2 ff0e 0000 0000 0000 0000 0000 0000  !...............
        0x0030:  0001 02ba 02ba 0028 2b49 0020 e1e6 c948  .......(+I.....H
        0x0040:  001c fd9c 6829 597c 0010 0202 6fff fe34  ....h)Y|....o..4
        0x0050:  21a2 0100 7c0c 0000 0503                 !...|.....

Note the 0000 between 86dd and 6000. On a non-arm box a similar packet
looks like this:

12:39:21.640024 17221765257721674776us tsft short preamble 6.0 Mb/s 5785 MHz (0x0140) -69dB signal -96dB noise antenna 1 DA:33:33:00:00:00:01 SA:00:80:48:41:99:86 BSSID:02:02:6f:41:19:1f LLC, dsap SNAP (0xaa), ssap SNAP (0xaa), cmd 0x03: oui Ethernet (0x000000), ethertype IPv6 (0x86dd): fd9c:6829:597c:10:280:48ff:fe41:9986.698 > ff0e::1.698: UDP, length 200
        0x0000:  aaaa 0300 0000 86dd 6000 0000 00d0 1101  ........`.......
        0x0010:  fd9c 6829 597c 0010 0280 48ff fe41 9986  ..h)Y|....H..A..
        0x0020:  ff0e 0000 0000 0000 0000 0000 0000 0001  ................
        0x0030:  02ba 02ba 00d0 d30c 00c8 d754 cae8 0030  ...........T...0
        0x0040:  fd9c 6829 597c 0020 0280 48ff fe7e 6005  ..h)Y|....H..~`.
...
 
I have checked that net/ethernet.h is the latest with ether_header
marked as __packed.

John
-- 
John Hay -- John.Hay@meraka.csir.co.za / jhay@FreeBSD.org



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20061130120217.GA41346>