[Linux-Xtensa] [PATCH] xtensa: fix threadptr reload on return to userspace
Chris Zankel
chris at zankel.net
Tue Jul 7 04:50:51 UTC 2015
Thanks for the fix, Max, added to my for_next tree to upstream later
this week...
On Sat, Jul 4, 2015 at 5:53 AM, Max Filippov <jcmvbkbc at gmail.com> wrote:
> Userspace return code may skip restoring THREADPTR register if there are
> no registers that need to be zeroed. This leads to spurious failures in
> libc NPTL tests.
>
> Always restore THREADPTR on return to userspace.
>
> Cc: stable at vger.kernel.org
> Signed-off-by: Max Filippov <jcmvbkbc at gmail.com>
> ---
> arch/xtensa/kernel/entry.S | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/arch/xtensa/kernel/entry.S b/arch/xtensa/kernel/entry.S
> index ab6a857..8985339 100644
> --- a/arch/xtensa/kernel/entry.S
> +++ b/arch/xtensa/kernel/entry.S
> @@ -578,12 +578,13 @@ user_exception_exit:
> * (if we have restored WSBITS-1 frames).
> */
>
> +2:
> #if XCHAL_HAVE_THREADPTR
> l32i a3, a1, PT_THREADPTR
> wur a3, threadptr
> #endif
>
> -2: j common_exception_exit
> + j common_exception_exit
>
> /* This is the kernel exception exit.
> * We avoided to do a MOVSP when we entered the exception, but we
> --
> 1.8.1.4
>
More information about the linux-xtensa
mailing list