[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20061126210612.GD6807@wohnheim.fh-wedel.de>
Date: Sun, 26 Nov 2006 22:06:12 +0100
From: Jörn Engel <joern@...nheim.fh-wedel.de>
To: Roland Dreier <rdreier@...co.com>
Cc: Linus Torvalds <torvalds@...l.org>, Andrew Morton <akpm@...l.org>,
David Miller <davem@...emloft.net>,
linux-kernel@...r.kernel.org, openib-general@...nib.org,
tom@...ngridcomputing.com, Al Viro <viro@...iv.linux.org.uk>
Subject: Re: [PATCH] Avoid truncating to 'long' in ALIGN() macro
On Sun, 26 November 2006 12:26:08 -0800, Roland Dreier wrote:
>
> > +#define ALIGN(x,a) __ALIGN_MASK(x,(typeof(x))(a)-1)
> > +#define __ALIGN_MASK(x,mask) (((x)+(mask))&~(mask))
>
> Fine by me, but it loses the extra (typeof(x)) cast that Al wanted to
> make sure that the result of ALIGN() is not wider than x.
Not a big deal, is it?
#define ALIGN(x,a) (typeof(x))__ALIGN_MASK(x,(typeof(x))(a)-1)
#define __ALIGN_MASK(x,mask) (((x)+(mask))&~(mask))
Jörn
--
Don't worry about people stealing your ideas. If your ideas are any good,
you'll have to ram them down people's throats.
-- Howard Aiken quoted by Ken Iverson quoted by Jim Horning quoted by
Raph Levien, 1979
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists