public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH RT 5.2] signal: remove noop call to __sigqueue_free
@ 2019-12-04 17:22 trix
  0 siblings, 0 replies; only message in thread
From: trix @ 2019-12-04 17:22 UTC (permalink / raw)
  To: bigeasy, tglx, rostedt, linux-kernel; +Cc: Tom Rix

From: Tom Rix <trix@redhat.com>

By inspection, this call does not do anything.

static void __sigqueue_free(struct sigqueue *q)
{
	if (q->flags & SIGQUEUE_PREALLOC)  <-- redundant flag check --+
		return;                                               |
	atomic_dec(&q->user->sigpending);                             |
	free_uid(q->user);                                            |
	kmem_cache_free(sigqueue_cachep, q);                          |
}                                                                     |
                                                                      |
static void sigqueue_free_current(struct sigqueue *q)                 |
{                                                                     |
	struct user_struct *up;                                       |
                                                                      |
	if (q->flags & SIGQUEUE_PREALLOC)  <-- first flag check ------+
		return;                                               |
                                                                      |
	up = q->user;                                                 |
	if (rt_prio(current->normal_prio) && !put_task_cache(current, |
		atomic_dec(&up->sigpending);                          |
		free_uid(up);                                         |
	} else                                                        |
		__sigqueue_free(q);  <--- this call will noop --------+
}

Signed-off-by: Tom Rix <trix@redhat.com>
---
 kernel/signal.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/kernel/signal.c b/kernel/signal.c
index 7bf4b399d307..4389cfde3f86 100644
--- a/kernel/signal.c
+++ b/kernel/signal.c
@@ -486,8 +486,7 @@ static void sigqueue_free_current(struct sigqueue *q)
 	if (rt_prio(current->normal_prio) && !put_task_cache(current, q)) {
 		atomic_dec(&up->sigpending);
 		free_uid(up);
-	} else
-		  __sigqueue_free(q);
+	}
 }
 
 void flush_sigqueue(struct sigpending *queue)
-- 
2.18.1


^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2019-12-04 17:23 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-12-04 17:22 [PATCH RT 5.2] signal: remove noop call to __sigqueue_free trix

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox