]> git.baikalelectronics.ru Git - kernel.git/commit
powerpc32: don't adjust unmoved stack pointer in csum_partial_copy_generic() epilogue
authorJason A. Donenfeld <Jason@zx2c4.com>
Wed, 14 Oct 2020 23:02:09 +0000 (01:02 +0200)
committerLinus Torvalds <torvalds@linux-foundation.org>
Wed, 14 Oct 2020 23:04:13 +0000 (16:04 -0700)
commit0c172163f6f7b2d6e0e2617c6aaee1593ae4fcee
treeaa52bc0517a81075ee080f636cec402b7111a996
parent794ba557de2bb9c3a92213f8c04b0cc8a9ce771e
powerpc32: don't adjust unmoved stack pointer in csum_partial_copy_generic() epilogue

A recent change to the checksum code removed usage of some extra
arguments, alongside with storage on the stack for those, and the stack
pointer no longer needed to be adjusted in the function prologue.

But a left over subtraction wasn't removed in the function epilogue,
causing the function to return with the stack pointer moved 16 bytes
away from where it should have.  This corrupted local state and lead to
weird crashes.

This simply removes the leftover instruction from the epilogue.

Fixes: d5ff89b67a2f ("ppc: propagate the calling conventions change down to csum_partial_copy_generic()")
Cc: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
arch/powerpc/lib/checksum_32.S