]> git.karo-electronics.de Git - karo-tx-linux.git/commit
ARM: 6482/2: Fix find_next_zero_bit and related assembly
authorJames Jones <jajones@nvidia.com>
Tue, 23 Nov 2010 23:21:37 +0000 (00:21 +0100)
committerAndi Kleen <ak@linux.intel.com>
Tue, 14 Dec 2010 22:40:15 +0000 (23:40 +0100)
commita678efd76c8bb4041d95973c32f7def1fc7c43bf
tree8f03c6b7377804bf1d800d4f395ab645b06f0530
parenta683346b0f0625d3b29194fa86082235d1e858ce
ARM: 6482/2: Fix find_next_zero_bit and related assembly

commit 0e91ec0c06d2cd15071a6021c94840a50e6671aa upstream.

The find_next_bit, find_first_bit, find_next_zero_bit
and find_first_zero_bit functions were not properly
clamping to the maxbit argument at the bit level. They
were instead only checking maxbit at the byte level.
To fix this, add a compare and a conditional move
instruction to the end of the common bit-within-the-
byte code used by all the functions and be sure not to
clobber the maxbit argument before it is used.

Reviewed-by: Nicolas Pitre <nicolas.pitre@linaro.org>
Tested-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: James Jones <jajones@nvidia.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Signed-off-by: Andi Kleen <ak@linux.intel.com>
arch/arm/lib/findbit.S