From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jeff Epler Subject: Re: [PATCH 1/4] kernel.h: Implement DIV_ROUND_CLOSEST_ULL Date: Mon, 23 Mar 2015 07:34:04 -0500 Message-ID: <20150323123404.GC17049@unpythonic.net> References: <1426850083-11049-1-git-send-email-javi.merino@arm.com> <1426850083-11049-2-git-send-email-javi.merino@arm.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Return-path: Content-Disposition: inline In-Reply-To: <1426850083-11049-2-git-send-email-javi.merino@arm.com> Sender: linux-kernel-owner@vger.kernel.org To: Javi Merino Cc: akpm@linux-foundation.org, intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, Daniel Vetter , Jani Nikula , David Airlie , "Darrick J. Wong" , Guenter Roeck List-Id: intel-gfx@lists.freedesktop.org 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. Jeff