]> git.karo-electronics.de Git - karo-tx-linux.git/commit
include/log2.h: fix rounddown_pow_of_two(1)
authorAndrei Warkentin <andreiw@vmware.com>
Wed, 30 Nov 2011 04:11:39 +0000 (15:11 +1100)
committerStephen Rothwell <sfr@canb.auug.org.au>
Wed, 30 Nov 2011 04:13:54 +0000 (15:13 +1100)
commit0c43288a7366cda0a15750e8fdb6a81c83a6c9a7
treeb262573c8558242ffa699b82a9b3e7ae0c4bc2c6
parent204cbfb2fed33a42b5e5d25ff54eab2b3864f90c
include/log2.h: fix rounddown_pow_of_two(1)

1 is a power of two, therefore rounddown_pow_of_two(1) should return 1.
It does in case the argument is a variable but in case it's a constant it
behaves wrong and returns 0.  Probably nobody ever did it so this was
never noticed, however net/drivers/vmxnet3 with latest GCC does and breaks
on unicpu systems.

This is similar to Rolf's patch to roundup_pow_of_two(1).

Cc: Rolf Eike Beer <eike-kernel@sf-tec.de>
Reviewed-by: Jesper Juhl <jj@chaosbits.net>
Signed-off-by: Andrei Warkentin <andreiw@vmware.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
include/linux/log2.h