]> 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)
committerGreg Kroah-Hartman <gregkh@suse.de>
Thu, 9 Dec 2010 21:24:19 +0000 (13:24 -0800)
commitf0097b8e359731d22c017805421dca8ab3bf691c
tree9302f733d04c46440b312c50e6be30ab000b8e7c
parent7f8ad3074fee297abee71d801c93a2ee0d90e451
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>
arch/arm/lib/findbit.S