Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 11 Sep 2012 22:13:53 -0400
From:      George Neville-Neil <gnn@neville-neil.com>
To:        John-Mark Gurney <jmg@funkthat.com>
Cc:        freebsd-arm@FreeBSD.org, Tim Kientzle <kientzle@FreeBSD.org>
Subject:   Re: -current on BeableBone successful
Message-ID:  <D3516FBB-4617-4C6B-A805-B50E7CC88154@neville-neil.com>
In-Reply-To: <20120910064532.GP58312@funkthat.com>
References:  <20120910014813.GL58312@funkthat.com> <4448530B-7916-4642-BD32-6A96AD5DB22B@FreeBSD.org> <20120910064532.GP58312@funkthat.com>

index | next in thread | previous in thread | raw e-mail


On Sep 10, 2012, at 02:45 , John-Mark Gurney <jmg@funkthat.com> wrote:

> Tim Kientzle wrote this message on Sun, Sep 09, 2012 at 20:16 -0700:
>>> Third is that I get this error:
>>> ip length 328 disagrees with bytes received 330.
>>> accepting packet with data after udp payload.
>>> 
>>> This appeard to be from sbin/dhclient/packet.c...  Not sure exactly why
>>> we are returning a large packet to userland?
>> 
>> I haven't seen this one.
> 
> Looks like this is a BeagleBone issue.  I haven't tracked it down, but
> I did a tcpdump on the server (my other arm board), and the packet has
> the correct length of 342 bytes to match the 328 ip length (plus 14
> bytes of ethernet header)...  tcpdump on the BeagleBone receives a
> 344 byte frame with a couple of stray bytes at the end of the frame...
> 
> Could this be an miscalculation when we are copying around the frame
> to deal the fact our IP stack can't deal w/ misaligned headers?  Just
> a thought..
> 
> Hmm...  Just ran some experiments... 
> 
> ping -s		sent	received
> 1		0x2b	0x3e
> 10		0x34	0x3e
> 18		0x3c	0x3e
> 19		0x3d	0x3f
> 20		0x3e	0x40
> 21		0x3f	0x41
> 99		0x8d	0x8f
> 100		0x8e	0x90
> 101		0x8f	0x91
> 999		0x411	0x413
> 1000		0x412	0x414
> 1001		0x413	0x415
> 
> and 0x3e is 62, which is two short of the min frame length of 64...
> 
> Hope this helps.

My take is the following.  The minimum packet is 60, not including
the preamble or the CRC, so with a CRC it's 64.  It might be that
there is some alignment issue as well.

The difference between all the sent/received is 2 bytes and that's consistent
so either something isn't being stripped or there is an alignment issue
all the way round.

Best,
George



home | help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?D3516FBB-4617-4C6B-A805-B50E7CC88154>