]> git.baikalelectronics.ru Git - kernel.git/commit
sh: Fix up TIF_NOTIFY_RESUME sans TIF_SIGPENDING handling.
authorAl Viro <viro@zeniv.linux.org.uk>
Tue, 18 Sep 2012 08:04:37 +0000 (17:04 +0900)
committerPaul Mundt <lethal@linux-sh.org>
Tue, 18 Sep 2012 08:04:37 +0000 (17:04 +0900)
commit1af915460efb8668332a93b58e94746dee81610d
treea8113effc2ea9a29b876f2c08c87018dc5c9da5f
parent51914756d1c7879ac73851a9f32e5bc97d0ad653
sh: Fix up TIF_NOTIFY_RESUME sans TIF_SIGPENDING handling.

As Al notes, we missed a TIF_NOTIFY_RESUME check which caused any
handlers without TIF_SIGPENDING also set to skip the notification:

Looks like while it is in the relevant masks *and* checked in
do_notify_resume() both on 32bit and 64bit variants since commit
814098d4ce4f8c2a4c027d624eef8ae6997c39bb ("sh: Make syscall tracer
use tracehook notifiers, add TIF_NOTIFY_RESUME.") they are
actually *not* reached without simulataneous SIGPENDING, since
the actual glue in the callers had not been updated back then and
still checks for _TIF_SIGPENDING alone when deciding whether to
hit do_notify_resume() or not.

Reported-by: Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Tested-by: Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
arch/sh/kernel/cpu/sh5/entry.S
arch/sh/kernel/entry-common.S