Subject: Re: kern/31323: vge on !i386 is broken.
To: None <gnats-bugs@netbsd.org>
From: Murata Shuuichirou <mrt@notwork.org>
List: netbsd-bugs
Date: 09/17/2005 03:08:09
In message <87ll1xle1t.fsf@fons-adae.s.notwork.org>,
`mrt@notwork.org' wrote:
> So, I can't say "my patch is correct", yet. I'll test vge without
> VGE_FIXUP_RX against amd64 machine, later today.
It works fine for me without VGE_FIXUP_RX, so I think VGE_FIXUP_RX
is not needed for non strict alignment architectures. Therefore,
following patch is enough to fix the problem and previous one
should be discarded.
--
MURATA Shuuichirou
Index: if_vgevar.h
===================================================================
RCS file: /home/mrt/src/netbsdcvs/src/sys/dev/pci/if_vgevar.h,v
retrieving revision 1.1
diff -u -r1.1 if_vgevar.h
--- if_vgevar.h 20 Feb 2005 18:34:33 -0000 1.1
+++ if_vgevar.h 16 Sep 2005 15:49:50 -0000
@@ -32,7 +32,7 @@
* $FreeBSD: src/sys/dev/vge/if_vgevar.h,v 1.2 2005/01/06 01:43:31 imp Exp $
*/
-#if !defined(__i386__)
+#ifndef __NO_STRICT_ALIGNMENT
#define VGE_FIXUP_RX
#endif
@@ -143,9 +143,8 @@
#define VGE_LOCK_ASSERT(x) /* nothing */
#endif
-/* adjusting size of mbuf is not necessary on NetBSD */
#ifndef ETHER_ALIGN
-# define ETHER_ALIGN 0
+# define ETHER_ALIGN 2
#endif
#define VGE_POWER_MANAGEMENT 0 /* disabled for now */