Port-xen archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: pae MP on cherry-xenmp
>>>>> "mhitch" == Michael L Hitch <mhitch%lightning.msu.montana.edu@localhost>
>>>>> writes:
mhitch> On Tue, 30 Aug 2011, Cherry G. Mathew wrote:
mhitch> following change, I am able to boot with 2 cpus. [I didn't
mhitch> look to see if the xen code had a macro to do this like the
mhitch> xen kernel does.]
>>
>> I don't think so, and I'm not sure it's worth it, as nothing else
>> uses this.
mhitch> I did find the same macros that convert from a physical
mhitch> page frame and the cr3 value in
mhitch> sys/arch/xen/include/xen3-public/arch-x86/xen-x86_32.h.
Could work - they use pfns though, which makes me think it might be more
appropriate to use them in cpu.c:pmap_cpu_init_late() instead.
If that works for you, I can check it in ( don't have a >4GB RAM box).
Like so:
Index: sys/arch/xen/x86/cpu.c
===================================================================
RCS file: /cvsroot/src/sys/arch/xen/x86/cpu.c,v
retrieving revision 1.56.2.9
diff -u -r1.56.2.9 cpu.c
--- sys/arch/xen/x86/cpu.c 30 Aug 2011 12:53:46 -0000 1.56.2.9
+++ sys/arch/xen/x86/cpu.c 30 Aug 2011 19:44:49 -0000
@@ -1334,7 +1334,7 @@
panic("%s: failed to allocate L3 pglist for CPU %d (ret
%d)\n",
__func__, cpu_index(ci), ret);
- ci->ci_pae_l3_pdirpa = vmap->phys_addr;
+ ci->ci_pae_l3_pdirpa =
xen_pfn_to_cr3(x86_btop(VM_PAGE_TO_PHYS(vmap)));
ci->ci_pae_l3_pdir = (paddr_t *)uvm_km_alloc(kernel_map,
PAGE_SIZE, 0,
UVM_KMF_VAONLY | UVM_KMF_NOWAIT);
Cheers,
--
Cherry
Home |
Main Index |
Thread Index |
Old Index