[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20190524112656.5ef67c6c@gandalf.local.home>
Date: Fri, 24 May 2019 11:26:56 -0400
From: Steven Rostedt <rostedt@...dmis.org>
To: Roger Willcocks <roger@...mlight.ltd.uk>
Cc: Linus Torvalds <torvalds@...ux-foundation.org>,
LKML <linux-kernel@...r.kernel.org>,
Ben Skeggs <bskeggs@...hat.com>,
David Airlie <airlied@...ux.ie>,
Daniel Vetter <daniel@...ll.ch>,
Leon Romanovsky <leon@...nel.org>,
Doug Ledford <dledford@...hat.com>,
Jason Gunthorpe <jgg@...pe.ca>,
"Darrick J. Wong" <darrick.wong@...cle.com>,
linux-xfs@...r.kernel.org,
dri-devel <dri-devel@...ts.freedesktop.org>,
nouveau@...ts.freedesktop.org,
linux-rdma <linux-rdma@...r.kernel.org>,
Andrew Morton <akpm@...ux-foundation.org>
Subject: Re: [RFC][PATCH] kernel.h: Add generic roundup_64() macro
On Fri, 24 May 2019 16:11:14 +0100
Roger Willcocks <roger@...mlight.ltd.uk> wrote:
> On 23/05/2019 16:27, Steven Rostedt wrote:
> >
> > I haven't yet tested this, but what about something like the following:
> >
> > ...perhaps forget about the constant check, and just force
> > the power of two check:
> >
> > \
> > if (!(__y & (__y >> 1))) { \
> > __x = round_up(x, y); \
> > } else { \
>
> You probably want
>
> if (!(__y & (__y - 1))
>
> --
Yes I do. I corrected it in my next email.
http://lkml.kernel.org/r/20190523133648.591f9e78@gandalf.local.home
> #define roundup(x, y) ( \
> { \
> typeof(y) __y = y; \
> typeof(x) __x; \
> \
> if (__y & (__y - 1)) \
> __x = round_up(x, __y); \
> else \
> __x = (((x) + (__y - 1)) / __y) * __y; \
> __x; \
> })
-- Steve
Powered by blists - more mailing lists