All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 16/28] sched: Add a PF flag for ksoftirqd identification
@ 2011-02-10  9:23 stable-bot for Venkatesh Pallipadi
  0 siblings, 0 replies; only message in thread
From: stable-bot for Venkatesh Pallipadi @ 2011-02-10  9:23 UTC (permalink / raw)
  To: stable; +Cc: linux-kernel, Peter Zijlstra, Ingo Molnar

Commit: 6cdd5199daf0cb7b0fcc8dca941af08492612887 upstream
Author: Venkatesh Pallipadi <venki@google.com>
AuthorDate: Mon Oct 4 17:03:18 2010 -0700

To account softirq time cleanly in scheduler, we need to identify whether
softirq is invoked in ksoftirqd context or softirq at hardirq tail context.
Add PF_KSOFTIRQD for that purpose.

As all PF flag bits are currently taken, create space by moving one of the
infrequently used bits (PF_THREAD_BOUND) down in task_struct to be along
with some other state fields.

Signed-off-by: Venkatesh Pallipadi <venki@google.com>
Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
LKML-Reference: <1286237003-12406-4-git-send-email-venki@google.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Mike Galbraith <efault@gmx.de>
Acked-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
---
 include/linux/sched.h |    1 +
 kernel/softirq.c      |    1 +
 2 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/include/linux/sched.h b/include/linux/sched.h
index 32bf471..63d5aea 100644
--- a/include/linux/sched.h
+++ b/include/linux/sched.h
@@ -1728,6 +1728,7 @@ extern void thread_group_times(struct task_struct *p, cputime_t *ut, cputime_t *
 /*
  * Per process flags
  */
+#define PF_KSOFTIRQD	0x00000001	/* I am ksoftirqd */
 #define PF_STARTING	0x00000002	/* being created */
 #define PF_EXITING	0x00000004	/* getting shut down */
 #define PF_EXITPIDONE	0x00000008	/* pi exit done on shut down */
diff --git a/kernel/softirq.c b/kernel/softirq.c
index 0ed8343..0a617de 100644
--- a/kernel/softirq.c
+++ b/kernel/softirq.c
@@ -718,6 +718,7 @@ static int ksoftirqd(void * __bind_cpu)
 {
 	set_current_state(TASK_INTERRUPTIBLE);
 
+	current->flags |= PF_KSOFTIRQD;
 	while (!kthread_should_stop()) {
 		preempt_disable();
 		if (!local_softirq_pending()) {
-- 
1.7.4



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

only message in thread, other threads:[~2011-02-10 12:28 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-02-10  9:23 [PATCH 16/28] sched: Add a PF flag for ksoftirqd identification stable-bot for Venkatesh Pallipadi

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.