Subject: Re: kern/31323: vge on !i386 is broken.
To: None <kern-bug-people@netbsd.org, gnats-admin@netbsd.org,>
From: Martin Husemann <martin@duskware.de>
List: netbsd-bugs
Date: 09/16/2005 06:58:02
The following reply was made to PR kern/31323; it has been noted by GNATS.

From: Martin Husemann <martin@duskware.de>
To: Murata Shuuichirou <mrt@notwork.org>
Cc: gnats-bugs@netbsd.org, kern-bug-people@netbsd.org,
	gnats-admin@netbsd.org, netbsd-bugs@netbsd.org
Subject: Re: kern/31323: vge on !i386 is broken.
Date: Fri, 16 Sep 2005 08:57:15 +0200

 On Fri, Sep 16, 2005 at 03:30:54PM +0900, Murata Shuuichirou wrote:
 >   1. What is ETHER_ALIGN, and why ETHER_ALIGN is used here.
 >   2. Whether amd64 needs whole VGE_FIXUP_RX or not.
 
 2 is harder to answer - I don't understand the comment in if_vge.c:1042 at
 all. How would 32bit alignment of the rx buffer make the received data
 unaligned? What does the chip prepend to the data and what size is it?
 
 1 is easier: ETHER_ALIGN is a define in if_vgevar.h and it's wrong. It probably
 was 2 on FreeBSD (for the two bytes the VGE_FIXUP_RX moves the buffer content
 around) and someone eroneosly changed it to 0 for NetBSD.
 
 Martin