Home
Reading
Searching
Subscribe
Sponsors
Statistics
Posting
Contact
Spam
Lists
Links
About
Hosting
Filtering
Features
Download
Marketing
Archives
Weaver
FAQ
|
|
From: Matt Mackall <mpm <at> selenic.com>
Subject: Re: Interesting interaction between lguest and CFS
Newsgroups: gmane.linux.kernel
Date: 2007-06-04 19:59:51 GMT
(7 years, 22 weeks, 3 days, 7 hours and 44 minutes ago)
On Mon, Jun 04, 2007 at 09:40:38PM +0200, Ingo Molnar wrote:
>
> * Matt Mackall <mpm <at> selenic.com> wrote:
>
> > > ah, so both the shell and the 'competing' CPU hog was running within
> > > the same lguest instance?
> >
> > No.
> >
> > The CPU hog is running in the host. A single instance of lguest using
> > busybox is started in another shell. When it reaches a shell prompt,
> > -that- shell is occassionally unresponsive for long stretches.
>
> so the shell within lguest is affected by the CPU hog outside? Could you
> send me the sched-debug stats of the CPU hog and of the lguest host
> process as well? (or were those amongst the ones you already sent?)
I sent you the stats for:
- both lguest processes
- the bash which started lguest (which I suspect you don't actually
want)
- the gnome-terminal that lguest was running inside of
(keystrokes to the shell in lguest go through that terminal)
The last is probably not very interesting either, as gnome-terminal is
a single process with multiple windows and none of the other windows
were affected.
So I sent you everything but the stats for the CPU hog.
I suggest you try this yourself - lguest is incredibly easy to get up
and running. It's also quite useful: I can test-boot kernels with it
in less than a second, or about 10x faster than basic qemu, and 100x
faster than a real boot. And as it uses a pty as console, you can do
things like pipe it through grep.
You'll need the following tab-damaged patch for rc3-mm1:
--- mm.orig/arch/i386/kernel/sched-clock.c 2007-06-04 12:15:51.000000000 -0500
+++ mm/arch/i386/kernel/sched-clock.c 2007-06-04 12:15:57.000000000
-0500
<at> <at> -133,7 +133,7 <at> <at> static void resync_freq(void *arg)
struct sc_data *sc = &__get_cpu_var(sc_data);
sc->sync_base = jiffies;
- if (!cpu_has_tsc) {
+ if (!cpu_has_tsc || tsc_disable) {
sc->unstable = 1;
return;
}
--
Mathematics is the supreme nostalgia of our time.
|
|