[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <Pine.LNX.4.64.0810031104080.28598@blonde.site>
Date: Fri, 3 Oct 2008 11:21:25 +0100 (BST)
From: Hugh Dickins <hugh@...itas.com>
To: Thomas Gleixner <tglx@...utronix.de>
cc: linux-kernel@...r.kernel.org
Subject: 2.6.27-rc8 doubled times
Hi Thomas,
Please would you take another look at your -rc8 commit
302745699c1b675b5d2a1af87271de10e4d96b6a clockevents:
check broadcast device not tick device.
While other machines are happy with it, I've a Core2 Duo laptop
on which "time" now gives me twice the usual user and system
times (but elapsed or real remains correct). Thus if I run
"/usr/bin/time make -j6" twice in a kernel build tree (first
run to prime the caches), the second run reports 354%CPU,
which is more than I'm used to on a 2 cpu box!
.config and dmesg attached.
I've noticed that bc->mode is actually a different enum from the
earlier td->mode, so I tried the patch below: it makes a difference,
261%CPU - but that's still not right so I guess there's more to it.
Thanks,
Hugh
--- a/kernel/time/tick-broadcast.c
+++ b/kernel/time/tick-broadcast.c
@@ -235,7 +235,7 @@ static void tick_do_broadcast_on_off(voi
case CLOCK_EVT_NOTIFY_BROADCAST_FORCE:
if (!cpu_isset(cpu, tick_broadcast_mask)) {
cpu_set(cpu, tick_broadcast_mask);
- if (bc->mode == TICKDEV_MODE_PERIODIC)
+ if (bc->mode == CLOCK_EVT_MODE_PERIODIC)
clockevents_shutdown(dev);
}
if (*reason == CLOCK_EVT_NOTIFY_BROADCAST_FORCE)
@@ -245,7 +245,7 @@ static void tick_do_broadcast_on_off(voi
if (!tick_broadcast_force &&
cpu_isset(cpu, tick_broadcast_mask)) {
cpu_clear(cpu, tick_broadcast_mask);
- if (bc->mode == TICKDEV_MODE_PERIODIC)
+ if (bc->mode == CLOCK_EVT_MODE_PERIODIC)
tick_setup_periodic(dev, 0);
}
break;
Download attachment "tglx.config" of type "APPLICATION/x-config" (41439 bytes)
View attachment "tglx.dmesg" of type "TEXT/PLAIN" (28964 bytes)
Powered by blists - more mailing lists