Messages in this thread | | | Date | Tue, 11 Mar 2003 03:14:52 +0100 | From | Segher Boessenkool <> | Subject | Re: [patch] oprofile for ppc |
| |
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/
| |