[PATCH] powerpc: Sanitize stack pointer in signal handling code

Josh Boyer jwboyer at linux.vnet.ibm.com
Thu Mar 26 03:27:01 EST 2009


On Wed, Mar 25, 2009 at 12:23:59PM -0400, Josh Boyer wrote:
>On powerpc64 machines running 32-bit userspace, we can get garbage bits in the
>stack pointer passed into the kernel.  Most places handle this correctly, but
>the signal handling code uses the passed value directly for allocating signal
>stack frames.
>
>This fixes the issue by introducing a get_clean_sp function that returns a
>sanitized stack pointer.  For 32-bit tasks on a 64-bit kernel, the stack
>pointer is masked correctly.  In all other cases, the stack pointer is simply
>returned.
>
>Additionally, we pass an 'is_32' parameter to get_sigframe now in order to
>get the properly sanitized stack.  The callers are know to be 32 or 64-bit
>statically.
>
>Signed-off-by: Josh Boyer <jwboyer at linux.vnet.ibm.com>

Ben, this should look familiar.  It's based on your current -next branch.

If you agree, I can send it to the -stable team for .27, .28 and .29.

josh



More information about the Linuxppc-dev mailing list