diff options
author | Mike Ditto <mditto@consentry.com> | 2008-10-17 09:27:51 +0000 |
---|---|---|
committer | Benjamin Herrenschmidt <benh@kernel.crashing.org> | 2008-10-21 15:17:48 +1100 |
commit | 59fd6b8cc0975b88e35f6ca2318b8cee77d3a508 (patch) | |
tree | bca9e11375be03e5cbe71cc9962c37993bb3382c /arch/powerpc/boot/string.S | |
parent | e81703724a966120ace6504c993bda9e084cbf3e (diff) |
powerpc: Fix boot wrapper memcmp() called with zero length argument
I noticed, when trying to use, e.g.,
node = find_node_by_prop_value(prev, "booleanprop", "", 0))
to search for all nodes with a certain boolean property, that memcmp()
returns garbage when comparing zero bytes. It should return zero.
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Diffstat (limited to 'arch/powerpc/boot/string.S')
-rw-r--r-- | arch/powerpc/boot/string.S | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/arch/powerpc/boot/string.S b/arch/powerpc/boot/string.S index 643e4cb2f11..acc9428f278 100644 --- a/arch/powerpc/boot/string.S +++ b/arch/powerpc/boot/string.S @@ -235,7 +235,7 @@ memchr: .globl memcmp memcmp: cmpwi 0,r5,0 - blelr + ble 2f mtctr r5 addi r6,r3,-1 addi r4,r4,-1 @@ -244,6 +244,8 @@ memcmp: subf. r3,r0,r3 bdnzt 2,1b blr +2: li r3,0 + blr /* |