Re: [patch] oprofile for ppc

Segher Boessenkool (segher@koffie.nl)
Tue, 11 Mar 2003 03:14:52 +0100


Albert Cahalan wrote:
> On Sun, 2003-03-09 at 22:50, Segher Boessenkool wrote:
>
>>Benjamin Herrenschmidt wrote:
>
>
>>>Beware though that some G4s have a nasty bug that
>>>prevents using the performance counter interrupt
>>>(and the thermal interrupt as well).
>>
>>MPC7400 version 1.2 and lower have this problem.
>
>
> MPC7410 you mean, right? Are those early revisions
> even popular?

7400 and 7410 core versions are identical, afaik. I don't
think any 7410 core lower than version 2.0 was ever used
in any consumer machines. ymmv.

> I'm wondering if the MPC7400 is also affected.
> The MPC7400 has some significant differences.
> The pipeline length changed.

Between 7400 and 7410? That's news to me...

>>>The problem is that if any of those fall at the same
>>>time as the DEC interrupt, the CPU messes up it's
>>>internal state and you lose SRR0/SRR1, which means
>>>you can't recover from the exception.
>>
>>But the worst that happens is that you lose that
>>process, isn't it? Not all that big a problem,
>>esp. since the window in which this can happen is
>>very small.
>
> I think you'd get an infinite loop of either
> the decrementer or performance monitor. That's
> mostly fixable by checking for the condition and
> killing the affected process, but that process
> could be one of the ones built into the kernel.

That would be a problem, yes :-(

> So the use of oprofile comes down to a choice:
>
> a. Ignore the problem.
> rare crashes

As long as its rare, that's not _too_ big of a problem,
really. Just document it ;)

> b. The decrementer goes much faster for profiling.
> high overhead, awkwardness in non-time measurement

Bad idea, I think.

> c. The performance monitor is used for clock ticks.
> hard choices about sharing or frequency

I'd go for this option.

Segher

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