Tuesday, October 25, 2005

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.
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...

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 :-)

I even provided a screen shot, but Blogger.com seems to convert anything into JPEGs which just isn't nice for screen shorts (compare to this version, which is even 10 kB smaller).

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!
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.

9 Comments:

At 4:40 AM, Unâm said...

Congrats. =)

 
At 5:43 AM, Alex Harvey said...

Keep up the ground breaking work!

 
At 8:13 AM, scottmc said...

I've heard of this serial debugging and even seen it work. Does it default to a specific port? What are the port settings to use on the second pc? 9600 8N1? Looks like I will be digging out my Dual PII soon to test this out. Nice work.
Also if this the right place to post our serial debug code or is their a better place to send it/post it?

 
At 5:31 PM, Andrew said...

Axel,

I thought I would test your work out on my machine, which is a Dual PIII 700MHz.

I have 6Gb IDE hard disk, with a 4.5Gb partition for BeOS, and a 1.5Gb parition for Haiku. Both are formatted with standard BFS from within R5.

I downloaded and mounted Sikosis's image. Then copied the contents across to my Haiku partition, finally running makebootable on /Haiku. I added this partition to Be, Inc's boot loader as Haiku using bootman.

I then rebooted, and got the normal Be, Inc's bootmanager, where I selected "Haiku" which then takes me to the "Welcom to the Haiku Boot Loader" screen, and it fails to detect the volume and I end up having to reboot.

Is there something that I need that I should be doing? Do I need to use OpenBFS instead of the BFS?

Thanks,

Andrew McCall (Dr3w)

 
At 8:20 PM, Axel Dörfler said...

I hadn't uploaded my local changes at the time, so Sikosis' latest image is probably still broken. The changes are in the repository now, so you may try again from those.

Haiku's file system API is not compatible to BeOS - Haiku will not work with any file system add-ons coming from R5.

And to Scott: I would prefer to get serial debug output by mail. The default settings are 115200 bps and 8N1.

 
At 8:27 PM, Andrew said...

Haiku's file system API is not compatible to BeOS - Haiku will not work with any file system add-ons coming from R5.

Does this mean that if you format a partition with a clean installation of R5 it won't work for a Haiku installation? Or is this just for add-ons like an FAT32 driver etc?

 
At 9:38 PM, Axel Dörfler said...

Only the add-ons. Our BFS and Be's should now be completely binary compatible.

 
At 3:07 AM, Fred said...

Good Afternoon Axel Dörfler. Quite by accident I stumbled accross your post on Finally. Refreshing comments like yours seem to somehow add to ones list of lifes experiences.

I find that blogs related to web design that have a topic around web design type items to be informative and sometimes entertaining.

Once again, thank you Axel Dörfler.

 
At 11:02 AM, DLazlo said...

If you want to have some testing done on SMP systems, I have a few dual and quad cpu systems that I'll be glad to run tests on. My email is dlazlo-at-fbx-dot-com. I have dual PII, PIII, P-Pro, and Athlon MP. Quads are P-Pro and PIII-Xeon.

I'm more than happy to help out the Haiku team.

 

Post a Comment

<< Home