[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] RE: [Xen-devel] xen_phys_start for 32b
-----Original Message----- > From: Keir Fraser [mailto:keir.fraser@xxxxxxxxxxxxx] > Sent: Tuesday, January 06, 2009 12:43 AM > > On 06/01/2009 06:36, "Cihula, Joseph" <joseph.cihula@xxxxxxxxx> wrote: > > > On 64b builds of Xen, xen_phys_start holds the starting (physical) address > > of > > the hypervisor. However, on 32b systems it is 0. While I realize that 32b > > Xen does not relocate the hypervisor, why not set this variable to the start > > of the code (__pa(&_start)) so that it will represent the same thing on all > > builds? > > For both i386 and x86/64: > __pa(&_start) == xen_phys_start + 1ul<<20 > > xen_phys_start marks the start of the Xen heap, which Xen text and data is > embedded within. > > -- Keir I'm confused by how the code in setup.c sets xenheap_phys_start. It is initially set by: xenheap_phys_start = init_boot_allocator(__pa(&_end)); This value gets used by: /* Initialise the Xen heap, skipping RAM holes. */ init_xenheap_pages(xenheap_phys_start, xenheap_phys_end); nr_pages = (xenheap_phys_end - xenheap_phys_start) >> PAGE_SHIFT; But then a few lines later, it is re-set: xenheap_phys_start = xen_phys_start; I don't understand the reason for this last assignment on 32b systems, since xen isn't really using this low memory for its heap. Joe _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |