Re: [discuss] Re: 2.6.19-rc5: known regressions (v3)

From: Andi Kleen
Date: Wed Nov 15 2006 - 22:21:59 EST


On Wed, Nov 15, 2006 at 12:21:18PM -0800, Andrew Morton wrote:
> Andi Kleen <ak@xxxxxxx> wrote:
>
> >
> > > The fact is, it used to work, and the kernel changed interfaces, so now it
> > > doesn't.
> >
> > No, it didn't work. oprofile may have done something, but it
> > just silently killed the NMI watchdog in the process.
> > That was never acceptable.
>
> But people could get profiles out. I know, I've seen them!

Just the nmi watchdog was gone then.

>
> > Now we do proper accounting of NMI sources and also proper allocation
> > of performance counters.
> >
> >
> > > Yes, "oprofile" should be fixed to not depend on that, but the kernel
> > > shouldn't change the interfaces, and we should add back the zero entry.
> >
> > That would break the nmi watchdog again.
> >
> > Anyways, there is a sysctl to disable the nmi watchdog if someone
> > is desperate.
> >
> > But I think it is clearly oprofile who did wrong here and needs
> > to be fixed.
> >
>
> Is it correct to say that oprofile-on-2.6.18 works, and that
> oprofile-on-2.6.19-rc5 does not?
>
> Or is there some sort of workaround for this, or does 2.6.19-rc5 only fail

echo 0 > /proc/sys/kernel/nmi_watchdog before the oprofile module is loaded.
With builtin oprofile probably nmi_watchdog=0

> in some particular scenarios?

On x86-64 and on newer i386 machines (based on DMI year)


>
> If it's really true that oprofile is simply busted then that's a serious
> problem and we should find some way of unbusting it. If that means just
> adding a dummy "0" entry which always returns zero or something like that,
> then fine.

That could be probably done.

> But we can't just go and bust it.

It just did something unbelievable broken before. I would say it busted
itself.

-Andi

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/