]> git.baikalelectronics.ru Git - kernel.git/commit
signalfd simplification
authorDavide Libenzi <davidel@xmailserver.org>
Thu, 20 Sep 2007 19:40:16 +0000 (12:40 -0700)
committerLinus Torvalds <torvalds@woody.linux-foundation.org>
Thu, 20 Sep 2007 20:19:59 +0000 (13:19 -0700)
commit3ce39ceca886372a645cebeb55c01fce4faa41d2
tree21308319be2579059a4d4d7db680a73334659f82
parent073eca24cb59f39136f0c7f549a485591bd29f1e
signalfd simplification

This simplifies signalfd code, by avoiding it to remain attached to the
sighand during its lifetime.

In this way, the signalfd remain attached to the sighand only during
poll(2) (and select and epoll) and read(2).  This also allows to remove
all the custom "tsk == current" checks in kernel/signal.c, since
dequeue_signal() will only be called by "current".

I think this is also what Ben was suggesting time ago.

The external effect of this, is that a thread can extract only its own
private signals and the group ones.  I think this is an acceptable
behaviour, in that those are the signals the thread would be able to
fetch w/out signalfd.

Signed-off-by: Davide Libenzi <davidel@xmailserver.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
fs/exec.c
fs/signalfd.c
include/linux/init_task.h
include/linux/sched.h
include/linux/signalfd.h
kernel/exit.c
kernel/fork.c
kernel/signal.c