ron minnich rminnich@lanl.gov writes:
This all started while trying to build EPIA and finding it was now failing.
The problem began with the cpufixup.h code. This code did things like this:
#if defined(k8) #define cpufixup() k8_cpufixup() #elif defined(k7)
etc.
Ok I suspect that code came early on and never got cleaned up.
What this sounded like was a bug in existing code that caused things to work incorrectly. So at least on the Opteron things worked correctly.
We need to go in and add better cpu selection support in the code. What I am thinking it to extract the vendor and model number for the cpu and with that select the code to run similarly to how we handle other devices.
Given the number of small details that need to be verified when a new cpu comes out. Microcode on the Xeons, memory controller enhancements on the Opterons, etc I would rather have the build break on a new cpu than have everything just almost work silently.
So we changed the cpufixup.h to this: #if (k8 == 1) etc.
which is much more in the way linuxbios has used defines for the last 3 years or so (Eric, you being the person who pushed us in that direction) :-)
Yes.
Eric