Date: Thu, 11 Oct 2001 11:15:36 -0700 (PDT) From: Luigi Rizzo <rizzo@aciri.org> To: mjacob@feral.com Cc: freebsd-net@FreeBSD.ORG Subject: Re: review of change to bridge.h Message-ID: <200110111815.f9BIFaT12658@iguana.aciri.org> In-Reply-To: <20011011111056.R84793-100000@wonky.feral.com> from Matthew Jacob at "Oct 11, 2001 11:11:35 am"
next in thread | previous in thread | raw e-mail | index | archive | help
I guess it might be marginally more efficient to call bcmp() (and rely on it being optimized), or do 3 comparisons with unsigned short * > +#define IS_ETHER_BROADCAST(a) ( \ > + ((unsigned short *)(a))[0] == 0xffff && \ > + ((unsigned short *)(a))[1] == 0xffff && \ > + ((unsigned short *)(a))[2] == 0xffff) Apart from this, have you actually tested bridging on the alpha ? The purpose of the warning was also to say "look, this code might not work on architectures not supporting unaligned accesses, so you might need to hack on the code yourself" cheers luigi > Fix the silly warning: > > Index: bridge.h > =================================================================== > RCS file: /home/ncvs/src/sys/net/bridge.h,v > retrieving revision 1.8 > diff -u -r1.8 bridge.h > --- bridge.h 2001/10/05 05:45:26 1.8 > +++ bridge.h 2001/10/11 18:11:51 > @@ -92,8 +92,17 @@ > *((unsigned int *)(a)) == 0xffffffff && \ > ((unsigned short *)(a))[2] == 0xffff ) > #else > -#warning... must complete these for the alpha etc. > +/* > + * unaligned version > + */ > #define BDG_MATCH(a,b) (!bcmp(a, b, ETHER_ADDR_LEN) ) > +#define IS_ETHER_BROADCAST(a) ( \ > + ((unsigned char *)(a))[0] == 0xff && \ > + ((unsigned char *)(a))[1] == 0xff && \ > + ((unsigned char *)(a))[2] == 0xff && \ > + ((unsigned char *)(a))[3] == 0xff && \ > + ((unsigned char *)(a))[4] == 0xff && \ > + ((unsigned char *)(a))[5] == 0xff) > #endif > /* > * The following constants are not legal ifnet pointers, and are used > > > > To Unsubscribe: send mail to majordomo@FreeBSD.org > with "unsubscribe freebsd-net" in the body of the message > To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-net" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200110111815.f9BIFaT12658>