alpha: take SIGPENDING/NOTIFY_RESUME loop into signal.c
authorAl Viro <viro@zeniv.linux.org.uk>
Wed, 5 Sep 2012 22:30:34 +0000 (18:30 -0400)
committerAl Viro <viro@zeniv.linux.org.uk>
Fri, 12 Oct 2012 01:39:27 +0000 (21:39 -0400)
commit6972d6f25d21e3da58ff1309256c787078405c7f
tree1492fa5424db7272573b2094522fc72f82974f40
parent7721d3c2083c27bfb8e4c1335d343e25ae1a663f
alpha: take SIGPENDING/NOTIFY_RESUME loop into signal.c

Turn the slow side of work_pending into C function, including all
the looping.  What we get out of that:
* we do _not_ call get_signal_to_deliver() with IRQs disabled
anymore
* no need to save/restore volatiles on each pass if there
turns to be more than one (unlikely, but still)
* all double-restart prevention is in C now.
* glue gets simpler.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
arch/alpha/kernel/entry.S
arch/alpha/kernel/signal.c