[haiku-development] Re: Haiku on PowerPC - try 2. SUCCESS - PATCH attached REVISION3

  • From: Alexander von Gluck <kallisti5@xxxxxxxxxxx>
  • To: <haiku-development@xxxxxxxxxxxxx>
  • Date: Wed, 22 Jul 2009 21:36:35 -0500

On Wed, 22 Jul 2009 21:16:09 -0500, Alexander von Gluck
<kallisti5@xxxxxxxxxxx> wrote:
> On Wed, 22 Jul 2009 20:47:48 -0500, Alexander von Gluck
> <kallisti5@xxxxxxxxxxx> wrote:
>> I got the info on running asm sync and asm isync by looking at a similar
>> bit of code in the
>> XNU kernel (124.1).  We need to make sure that the PPC cpu does not
>> prefetch any operations
>> while we populate the contexts.
> 
> Seems there are some conflicts with that previous patch that I missed. 
> I've re-created the patch and made it a little simpler.

man.. worst patch release ever..

here is final.. final.. final.

i forgot to take out the old isync();



Index: src/system/boot/platform/openfirmware/arch/ppc/mmu.cpp
===================================================================
--- src/system/boot/platform/openfirmware/arch/ppc/mmu.cpp      (revision 31707)
+++ src/system/boot/platform/openfirmware/arch/ppc/mmu.cpp      (working copy)
@@ -970,7 +970,10 @@
        // set up new page table and turn on translation again

        for (int32 i = 0; i < 16; i++) {
+               asm volatile ("isync");
                ppc_set_segment_register((void *)(i * 0x10000000), 
sSegments[i]);
+               asm volatile ("sync");
                        // one segment describes 256 MB of memory
        }




-- 
Thanks!
Alexander von Gluck
http://unixzen.com
PGP: F079C049
Google Voice: 832-592-7635

Other related posts: