2.6.35-longterm review patch. If anyone has any objections, please let me know.
------------------ Commit: 6cdd5199daf0cb7b0fcc8dca941af08492612887 upstream 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 <[email protected]> Signed-off-by: Peter Zijlstra <[email protected]> Signed-off-by: Andi Kleen <[email protected]> LKML-Reference: <[email protected]> Signed-off-by: Ingo Molnar <[email protected]> Signed-off-by: Mike Galbraith <[email protected]> Acked-by: Peter Zijlstra <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]> --- include/linux/sched.h | 1 + kernel/softirq.c | 1 + 2 files changed, 2 insertions(+) Index: linux-2.6.35.y/include/linux/sched.h =================================================================== --- linux-2.6.35.y.orig/include/linux/sched.h 2011-03-29 23:03:00.229294303 -0700 +++ linux-2.6.35.y/include/linux/sched.h 2011-03-29 23:55:00.771447437 -0700 @@ -1685,6 +1685,7 @@ /* * 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 */ Index: linux-2.6.35.y/kernel/softirq.c =================================================================== --- linux-2.6.35.y.orig/kernel/softirq.c 2011-03-29 23:03:00.152296274 -0700 +++ linux-2.6.35.y/kernel/softirq.c 2011-03-29 23:54:58.951494004 -0700 @@ -713,6 +713,7 @@ { set_current_state(TASK_INTERRUPTIBLE); + current->flags |= PF_KSOFTIRQD; while (!kthread_should_stop()) { preempt_disable(); if (!local_softirq_pending()) { _______________________________________________ stable mailing list [email protected] http://linux.kernel.org/mailman/listinfo/stable
