浏览代码

sh: fix debug trap failure to process signals before return to user

When responding to a debug trap (breakpoint) in userspace, the
kernel's trap handler raised SIGTRAP but returned from the trap via a
code path that ignored pending signals, resulting in an infinite loop
re-executing the trapping instruction.

Signed-off-by: Rich Felker <dalias@libc.org>
Rich Felker 7 年之前
父节点
当前提交
96a598996f
共有 1 个文件被更改,包括 1 次插入1 次删除
  1. 1 1
      arch/sh/kernel/entry-common.S

+ 1 - 1
arch/sh/kernel/entry-common.S

@@ -255,7 +255,7 @@ debug_trap:
 	mov.l	@r8, r8
 	jsr	@r8
 	 nop
-	bra	__restore_all
+	bra	ret_from_exception
 	 nop
 	CFI_ENDPROC