Hey Jason,
Would you mind just chucking up an exec summary of all the changes?.. I'm trying to adapt our port to the new code and am trying to figure out whats going on ;)
Mainly: set_apicid_cpuid_low() = gone start_other_cores() = gone __cpu_reset = gone get_apicid_base() = gone
Actually, the __cpu_reset: thing looks broken on CAR systems... looking at the tyan s4882 board, the Config.lb http://Config.lb only brings in arch/i386/lib/cpu_reset.inc if we're NOT CAR....
We're basicaly doing everything as CAR.
Are there more changes comming? or should we just start hacking to pick up the pieces?
thanks man...
;) -san
San Mehat san@google.com writes:
Hey Jason,
Would you mind just chucking up an exec summary of all the changes?.. I'm trying to adapt our port to the new code and am trying to figure out whats going on ;)
Mainly: set_apicid_cpuid_low() = gone start_other_cores() = gone __cpu_reset = gone get_apicid_base() = gone
killing get_apicid_base looks like a bug. But as far as I can tell everything that is gone is now unnecessary.
Actually, the __cpu_reset: thing looks broken on CAR systems... looking at the tyan s4882 board, the Config.lb only brings in arch/i386/lib/cpu_reset.inc if we're NOT CAR....
We're basicaly doing everything as CAR.
Are there more changes comming? or should we just start hacking to pick up the pieces?
No more big ones but a couple of small ones to ensure everything settles down. This is just committing the code we reviewed at the end of the LinuxBIOS Summit. Stefan asked us to hold off for a few days before we committed it.
There is auto_coherent_ht.c the hypertransport auto router comming but unless you have more than 2 cpus it doesn't matter.
The CAR needs a little work before everyone is happy with it but we are getting close.
Eric
On 10/25/05, Eric W. Biederman ebiederman@lnxi.com wrote:
killing get_apicid_base looks like a bug. But as far as I can tell everything that is gone is now unnecessary.
Okay... so what replace start_other_cores()?.. In CAR mode, do I make a call to 'do_k8_init_and_stop_secondaries()'? That code itself wont build due to the following in 'k8_init_and_stop_secondaries()': if (init_detected) { asm volatile ("jmp __cpu_reset"); }
because in CAR configs, arch/i386/lib/cpu_reset.inc is not included. On this particular issue, I'm happy to wait for YH's fixes.
I just think if we're going to deprecate a core call like that, there should be some documentation on *why* it was removed, as well as some indication as to where the behavior got 'moved' to.
It just makes things a lot easier for thoes of us that are either ramping up, or trying to maintain things..
Thanks Eric ;)
-san
PS: I'm still going to get you drunk and shave your beard.
San Mehat san@google.com writes:
On 10/25/05, Eric W. Biederman ebiederman@lnxi.com wrote:
killing get_apicid_base looks like a bug. But as far as I can tell everything that is gone is now unnecessary.
Okay... so what replace start_other_cores()?
setup_coherent_ht_domain() now starts the secondaries cores like it has always started the primary cores.
.. In CAR mode, do I make a call to 'do_k8_init_and_stop_secondaries()'?
That was the hope. We are still working on getting CAR mode fixed.
That code itself wont build due to the following in 'k8_init_and_stop_secondaries()': if (init_detected) { asm volatile ("jmp __cpu_reset"); }
because in CAR configs, arch/i386/lib/cpu_reset.inc is not included. On this particular issue, I'm happy to wait for YH's fixes.
I just think if we're going to deprecate a core call like that, there should be some documentation on *why* it was removed, as well as some indication as to where the behavior got 'moved' to.
Agreed. I think a lot of that description got onto the issue tracker.
As far as it being a core call it was just introduced a little while ago with a bunch of other dual core code, that had enough ifdefs that the code was becoming fragile.
It just makes things a lot easier for thoes of us that are either ramping up, or trying to maintain things..
Thanks Eric ;)
-san
PS: I'm still going to get you drunk and shave your beard.
promises promises :)