[PATCH 1/4] kernel.h: Implement DIV_ROUND_CLOSEST_ULL

Jeff Epler jepler at unpythonic.net
Mon Mar 23 05:34:04 PDT 2015


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


More information about the dri-devel mailing list