From: Mike Ditto <mditto@consentry.com> Date: Fri, 17 Oct 2008 09:27:51 +0000 (+0000) Subject: powerpc: Fix boot wrapper memcmp() called with zero length argument X-Git-Tag: firefly_0821_release~17166^2~22 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=59fd6b8cc0975b88e35f6ca2318b8cee77d3a508;p=firefly-linux-kernel-4.4.55.git 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> --- diff --git a/arch/powerpc/boot/string.S b/arch/powerpc/boot/string.S index 643e4cb2f11d..acc9428f2789 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 /*