Re: eros-0.8.2 - some successes and pointers Peter Hunter (peter@fido.bfriars.ox.ac.uk)
Thu, 25 Feb 1999 18:03:13 +0000

On Thu, Feb 25, 1999 at 11:06:50AM +0000, Peter Hunter wrote:
> > > Is it possible this is an AMD K6 issue? Or a motherboard issue?
> >
> > I am not knowledgable enough to answer hardware questions.
> > (actually I know too little about anything to answer any questions :-)
>
> OK - it seems it is in fact a hardware issue. After some judiciously
> placed kprintf I've tracked the trouble down to a short assembly
> function: Pentium_SetCounterMode. I'm currently looking at the AMD docs
> to see if I can figure out how to do the Right Thing[tm] on AMD.

I discovered that the AMD doesn't have these counters (pity), so we have to treat it like a 486 for these purposes, which means I don't get terribly interesting results from the tests. The TSC works, so I get cycle counts, but not much else. In other words, though, I am now able to run the tests without segfaults.

Jonathan, would you accept patches to:

  1. Set a flag (has_perfcounters or something) in the CPU detection code.
  2. Test this flag in relevant places.

It seems to me the code in SysTrace.S could do with becoming C with inlined assembly, rather than all assembly. It would certainly be easier to read, I think.

I am enjoying this EROS hacking :-) Next step: look at the PCI code to get it to recognise my devices, rather than saying it doesn't know what they are at bootup.

Regards,

Peter