Sophie

Sophie

distrib > Scientific%20Linux > 5x > x86_64 > by-pkgid > 27922b4260f65d317aabda37e42bbbff > files > 2111

kernel-2.6.18-238.el5.src.rpm

From: Anton Arapov <aarapov@redhat.com>
Date: Mon, 18 Aug 2008 09:37:51 +0200
Subject: [misc] sysrq-t: display backtrace for runnable processes
Message-id: 20080818073750.GA5035@redhat.com
O-Subject: [RHEL5.3 PATCH] BZ456588: [RFE] Display backtrace for runnable 'R' processes in sysrq-t
Bugzilla: 456588
RH-Acked-by: Neil Horman <nhorman@redhat.com>
RH-Acked-by: Jiri Pirko <jpirko@redhat.com>
RH-Acked-by: Pete Zaitcev <zaitcev@redhat.com>
RH-Acked-by: Neil Horman <nhorman@redhat.com>

bugzilla: 456588

description:
  from bugzilla: Since no call trace got collected for those tasks,
we lose the data why they are in runqueue causing high load. Actually,
it can just one or none in user space.

  feature is reasonable to adopt to RHEL kernel in order to make
debugging more informative. there is the respective patch attached,
please review!

upstream:
  commit# 5fb5e6de55860a99c2d8fe7e0c8222d5c53d8464

test status:
  compiled, booted, sysrq-t'ed many times...
  output has runnable tasks, as expected.

-Anton.
==

diff --git a/kernel/sched.c b/kernel/sched.c
index 31acebe..b579d0f 100644
--- a/kernel/sched.c
+++ b/kernel/sched.c
@@ -5005,8 +5005,7 @@ static void show_task(struct task_struct *p)
 	else
 		printk(" (NOTLB)\n");
 
-	if (state != TASK_RUNNING)
-		show_stack(p, NULL);
+	show_stack(p, NULL);
 }
 
 void show_state(void)