💾 Archived View for lofi.haiku-os.org › docs › blog › axeld › 2005-10-24_finally.gmi captured on 2024-03-21 at 15:11:45. Gemini links have been rewritten to link to archived content

View Raw

More Information

⬅️ Previous capture (2024-02-05)

-=-=-=-=-=-=-

Finally

I just booted into Haiku working on an SMP machine. Unfortunately, I am not really sure what change exactly triggered this - I've tried so much and all of a sudden it started to work, after I disabled setting up the APIC (the advanced programmable interrupt controller) to use ExtINT delivery mode - that shouldn't tell you anything, I know, but it's still remarkably that this code was originally disabled as well.<br />It took me quite a number of hours to get it working, so it's a bit frustrating not to know what was actually responsible for the hickup, but it still didn't make me that curious to start an investigation on this topic for now...<br /><br />Anyway, our SMP configuration is pretty weak right now - it only supports virtual-wire mode which is only one of two possible modes every compatible IA-32 MP system should support. We don't yet support to run the system in so called symmetrical MP mode - that would require us to do some more APIC programming for interrupt redirection, which I obviously didn't need to do to get my machine up and running. Bad for Haiku, but good for me :-)<br /><br />Next on the list are some more SMP related changes, as some things like call_all_cpus() are not yet working. I expect to finish the remaining SMP work tomorrow, and that's when all the testing can begin on your end. A serial debugging cable (with a second machine) would be very helpful, though, in order to get me useful information about what went wrong. Your effort is surely appreciated!<br />Older SMP machines could or even should work now, but I would be surprised if the same could be said for current SMP machines - but as I don't have access to such a machine, it's not on me to find out about that now.