* + sched-f83f9ac-causes-tasks-running-at-max_prio.patch added to -mm tree
@ 2009-12-02 0:32 akpm
0 siblings, 0 replies; only message in thread
From: akpm @ 2009-12-02 0:32 UTC (permalink / raw)
To: mm-commits; +Cc: efault, a.p.zijlstra, mingo, pwil3058, rjw
The patch titled
sched: f83f9ac causes tasks running at MAX_PRIO
has been added to the -mm tree. Its filename is
sched-f83f9ac-causes-tasks-running-at-max_prio.patch
Before you just go and hit "reply", please:
a) Consider who else should be cc'ed
b) Prefer to cc a suitable mailing list as well
c) Ideally: find the original patch on the mailing list and do a
reply-to-all to that, adding suitable additional cc's
*** Remember to use Documentation/SubmitChecklist when testing your code ***
See http://userweb.kernel.org/~akpm/stuff/added-to-mm.txt to find
out what to do about this
The current -mm tree may be found at http://userweb.kernel.org/~akpm/mmotm/
------------------------------------------------------
Subject: sched: f83f9ac causes tasks running at MAX_PRIO
From: Mike Galbraith <efault@gmx.de>
top - 11:33:19 up 1 min, 21 users, load average: 4.47, 1.44, 0.51
Tasks: 288 total, 1 running, 287 sleeping, 0 stopped, 0 zombie
Cpu(s): 0.2%us, 0.5%sy, 0.0%ni, 99.3%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ P COMMAND
568 root 20 0 0 0 0 S 1 0.0 0:00.02 3 scsi_eh_1
4724 root 40 0 358m 22m 4008 S 1 0.7 0:01.69 0 Xorg
6064 root 40 0 8872 1316 852 R 1 0.0 0:00.07 3 top
1 root 40 0 1064 388 324 S 0 0.0 0:01.30 2 init
2 root 40 0 0 0 0 S 0 0.0 0:00.00 1 kthreadd
3 root RT 0 0 0 0 S 0 0.0 0:00.00 0 migration/0
WARN_ON(current->normal_prio == MAX_PRIO);
[ 0.092016] ------------[ cut here ]------------
[ 0.096008] WARNING: at kernel/sched.c:2591 sched_fork+0xe4/0x1ae()
[ 0.100002] Hardware name: MS-7502
[ 0.104002] Modules linked in:
[ 0.108191] Pid: 0, comm: swapper Not tainted 2.6.32-tip-smpx #956
[ 0.112002] Call Trace:
[ 0.116004] [<ffffffff810365ab>] ? sched_fork+0xe4/0x1ae
[ 0.120004] [<ffffffff81038eb8>] warn_slowpath_common+0x77/0xa4
[ 0.124004] [<ffffffff81038ef4>] warn_slowpath_null+0xf/0x11
[ 0.128003] [<ffffffff810365ab>] sched_fork+0xe4/0x1ae
[ 0.132005] [<ffffffff81059a9f>] ? monotonic_to_bootbased+0x26/0x34
[ 0.136004] [<ffffffff8103783b>] copy_process+0x4b9/0x10e4
[ 0.140006] [<ffffffff810bd38b>] ? __get_vm_area_node+0x175/0x1bf
[ 0.144004] [<ffffffff810385b2>] do_fork+0x14c/0x304
[ 0.148005] [<ffffffff810200dd>] ? __ioremap_caller+0x292/0x2fb
[ 0.152005] [<ffffffff812838b0>] ? acpi_os_map_memory+0x12/0x1b
[ 0.156006] [<ffffffff810038d2>] kernel_thread+0x82/0xe0
[ 0.160006] [<ffffffff8146c510>] ? kernel_init+0x0/0x1af
[ 0.164004] [<ffffffff81003930>] ? child_rip+0x0/0x20
[ 0.168004] [<ffffffff81281a48>] ? rest_init+0x1c/0x76
[ 0.172003] [<ffffffff8146cc54>] start_kernel+0x351/0x35c
[ 0.176004] [<ffffffff8146c29a>] x86_64_start_reservations+0xaa/0xae
[ 0.180004] [<ffffffff8146c37f>] x86_64_start_kernel+0xe1/0xe8
[ 0.184007] ---[ end trace 4eaa2a86a8e2da22 ]---
sched: fix task priority bug.
f83f9ac removed a call to effective_prio() in wake_up_new_task(), which
leads to tasks running at MAX_PRIO. That call set both the child's prio
and normal_prio fields to normal_prio(child). Do the same fork time by
setting both to normal_prio(parent).
Signed-off-by: Mike Galbraith <efault@gmx.de>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Peter Williams <pwil3058@bigpond.net.au>
Cc: "Rafael J. Wysocki" <rjw@sisk.pl>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
---
kernel/sched.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff -puN kernel/sched.c~sched-f83f9ac-causes-tasks-running-at-max_prio kernel/sched.c
--- a/kernel/sched.c~sched-f83f9ac-causes-tasks-running-at-max_prio
+++ a/kernel/sched.c
@@ -2663,7 +2663,7 @@ void sched_fork(struct task_struct *p, i
/*
* Make sure we do not leak PI boosting priority to the child.
*/
- p->prio = current->normal_prio;
+ p->prio = p->normal_prio = normal_prio(current);
if (!rt_prio(p->prio))
p->sched_class = &fair_sched_class;
_
Patches currently in -mm which might be from efault@gmx.de are
linux-next.patch
sched-f83f9ac-causes-tasks-running-at-max_prio.patch
arch-x86-kernel-cpu-cpufreq-acpi-cpufreqc-avoid-cross-cpu-interrupts-by-using-smp_call_function_any.patch
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2009-12-02 0:33 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-12-02 0:32 + sched-f83f9ac-causes-tasks-running-at-max_prio.patch added to -mm tree akpm
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).