On Mon, Mar 23, 2015 at 05:04:16PM +0000, Javi Merino wrote: > On Mon, Mar 23, 2015 at 12:34:04PM +0000, Jeff Epler wrote: > > On Fri, Mar 20, 2015 at 11:14:40AM +0000, Javi Merino wrote: > > > +/* > > > + * Same as above but for u64 dividends. divisor must be a 32-bit > > > + * number. > > > + */ > > > +#define DIV_ROUND_CLOSEST_ULL(x, divisor)( \ > > > +{ \ > > > + unsigned long long _tmp = (x) + (divisor) / 2; \ > > > + do_div(_tmp, divisor); \ > > > + _tmp; \ > > > +} \ > > > +) > > > > The macro evaluates 'divisor' twice. > > Good catch. That needs to be fixed. I could do the typeof trick that > DIV_ROUND_CLOSEST() does but it's probably better to just create a > static function as Alex Elder suggests. I'll send a v2 tomorrow with > a static function instead. Nah, thinking about it and seeing the other macros in this file (esp. DIV_ROUND_UP() and DIV_ROUND_UP_ULL()) I don't think a static function gives you anything. I'll just modify the macro to look similar to DIV_ROUND_CLOSEST() Cheers, Javi _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/intel-gfx