| From 8779e05ba8aaffec1829872ef9774a71f44f6580 Mon Sep 17 00:00:00 2001 |
| From: Helge Deller <deller@gmx.de> |
| Date: Tue, 5 Oct 2021 00:27:49 +0200 |
| Subject: parisc: Fix ptrace check on syscall return |
| |
| From: Helge Deller <deller@gmx.de> |
| |
| commit 8779e05ba8aaffec1829872ef9774a71f44f6580 upstream. |
| |
| The TIF_XXX flags are stored in the flags field in the thread_info |
| struct (TI_FLAGS), not in the flags field of the task_struct structure |
| (TASK_FLAGS). |
| |
| It seems this bug didn't generate any important side-effects, otherwise it |
| wouldn't have went unnoticed for 12 years (since v2.6.32). |
| |
| Signed-off-by: Helge Deller <deller@gmx.de> |
| Fixes: ecd3d4bc06e48 ("parisc: stop using task->ptrace for {single,block}step flags") |
| Cc: Kyle McMartin <kyle@mcmartin.ca> |
| Cc: stable@vger.kernel.org |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| --- |
| arch/parisc/kernel/entry.S | 2 +- |
| 1 file changed, 1 insertion(+), 1 deletion(-) |
| |
| --- a/arch/parisc/kernel/entry.S |
| +++ b/arch/parisc/kernel/entry.S |
| @@ -1841,7 +1841,7 @@ syscall_restore: |
| LDREG TI_TASK-THREAD_SZ_ALGN-FRAME_SIZE(%r30),%r1 |
| |
| /* Are we being ptraced? */ |
| - ldw TASK_FLAGS(%r1),%r19 |
| + LDREG TI_FLAGS-THREAD_SZ_ALGN-FRAME_SIZE(%r30),%r19 |
| ldi _TIF_SYSCALL_TRACE_MASK,%r2 |
| and,COND(=) %r19,%r2,%r0 |
| b,n syscall_restore_rfi |