From 473a8895f60a7d1f666b9b4165c198cb4cf4debe Mon Sep 17 00:00:00 2001 From: Davide Libenzi Date: Wed, 27 Jun 2007 14:09:59 -0700 Subject: [PATCH] --- yaml --- r: 58089 b: refs/heads/master c: f8738c5c5298d55ccfc26383f9f45af082a9be57 h: refs/heads/master i: 58087: 25b67852eea9a68872b39a0ac7ece772506dea2c v: v3 --- [refs] | 2 +- trunk/fs/signalfd.c | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index c6b5ddf017af..9dee3b32218e 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 58e78475ec706f93e0cc049449ffd11fbfdadb3e +refs/heads/master: f8738c5c5298d55ccfc26383f9f45af082a9be57 diff --git a/trunk/fs/signalfd.c b/trunk/fs/signalfd.c index f1da89203a9a..3b07f26d984d 100644 --- a/trunk/fs/signalfd.c +++ b/trunk/fs/signalfd.c @@ -133,7 +133,8 @@ static unsigned int signalfd_poll(struct file *file, poll_table *wait) * the peer disconnects. */ if (signalfd_lock(ctx, &lk)) { - if (next_signal(&lk.tsk->pending, &ctx->sigmask) > 0 || + if ((lk.tsk == current && + next_signal(&lk.tsk->pending, &ctx->sigmask) > 0) || next_signal(&lk.tsk->signal->shared_pending, &ctx->sigmask) > 0) events |= POLLIN;