In message: <[EMAIL PROTECTED]> John-Mark Gurney <[EMAIL PROTECTED]> writes: : Luigi Rizzo wrote this message on Tue, Dec 12, 2006 at 06:24 -0800: : > On Tue, Dec 12, 2006 at 03:17:59PM +0100, Bernd Walter wrote: : > > On Tue, Dec 12, 2006 at 05:57:56AM -0800, Luigi Rizzo wrote: : > ... : > > > then i suppose the proper fix is to revert to m_copy() and : > > > work on if_simloop() so that 1. it handles a readonly chain, and : > > > 2. when doing so, it passes up a properly aligned packet... : > > : > > Can't comment on this, as I don't have enough knowledge about network : > > code. : > > According to the xscale report it was likely never properly aligned, : > > the alignment obviously just moved with your change. : > > : > > > however note that there is already some code in net/if_loop.c::if_simloop(), : > > > just that it uses this: : > > > : > > > #if defined(__ia64__) || defined(__sparc64__) : > ... : > > > to detect whether the architecture is alignment-sensitive. : > > > Is there any other identifier that we can use to check ? : > > : > > I wonder how many of these are missing __arm__? : > : > and this is why i wonder if there is a generic identifier : > that we can use to provide alignment. : : How about? : #define __NO_STRICT_ALIGNMENT : : It's already defined for amd64 and i386, so all you have to do it test : that it isn't defined...
__NO_STRICT_ALIGNMENT is relatively new. Its definition in _types.h, while established practice in NetBSD, met with considerable controversy when I tried to expand it in FreeBSD land. However, putting things in param.h met with no resistance whatsoever and was actively suggested. Maybe we should move this straggler from _types.h to param.h and start using it more often. Warner _______________________________________________ cvs-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/cvs-all To unsubscribe, send any mail to "[EMAIL PROTECTED]"