ia64/xen-unstable

changeset 3942:99fd3686e9b3

bitkeeper revision 1.1236.1.31 (4220bdaemNGC_0xbUJs0GdE0qRjNEA)

Manual merge.
author kaf24@viper.(none)
date Sat Feb 26 18:19:26 2005 +0000 (2005-02-26)
parents 6a7bbb8b60f4 0dc6a70c0a02
children fd0c24d9b4de
files linux-2.4.29-xen-sparse/arch/xen/mm/init.c linux-2.6.10-xen-sparse/arch/xen/i386/mm/init.c xen/arch/x86/domain.c
line diff
     1.1 --- a/linux-2.4.29-xen-sparse/arch/xen/mm/init.c	Sat Feb 26 10:15:40 2005 +0000
     1.2 +++ b/linux-2.4.29-xen-sparse/arch/xen/mm/init.c	Sat Feb 26 18:19:26 2005 +0000
     1.3 @@ -366,6 +366,12 @@ static int __init free_pages_init(void)
     1.4  
     1.5      /* this will put all low memory onto the freelists */
     1.6      totalram_pages += free_all_bootmem();
     1.7 +    /* XEN: init and count low-mem pages outside initial allocation. */
     1.8 +    for (pfn = boot_pfn; pfn < max_low_pfn; pfn++) {
     1.9 +        ClearPageReserved(&mem_map[pfn]);
    1.10 +        atomic_set(&mem_map[pfn].count, 1);
    1.11 +        totalram_pages++;
    1.12 +    }
    1.13  
    1.14      reservedpages = 0;
    1.15      for (pfn = 0; pfn < boot_pfn ; pfn++) {
     2.1 --- a/linux-2.6.10-xen-sparse/arch/xen/i386/mm/init.c	Sat Feb 26 10:15:40 2005 +0000
     2.2 +++ b/linux-2.6.10-xen-sparse/arch/xen/i386/mm/init.c	Sat Feb 26 18:19:26 2005 +0000
     2.3 @@ -177,8 +177,10 @@ static void __init kernel_physical_mappi
     2.4  				pte = one_page_table_init(pmd);
     2.5  
     2.6  				pte += pte_ofs;
     2.7 -				/* XEN: Only map initial RAM allocation. */
     2.8 -				for (; pte_ofs < PTRS_PER_PTE && pfn < max_ram_pfn; pte++, pfn++, pte_ofs++) {
     2.9 +				for (; pte_ofs < PTRS_PER_PTE && pfn < max_low_pfn; pte++, pfn++, pte_ofs++) {
    2.10 +						/* XEN: Only map initial RAM allocation. */
    2.11 +						if (pfn >= max_ram_pfn)
    2.12 +							break;
    2.13  						if (pte_present(*pte))
    2.14  							continue;
    2.15  						if (is_kernel_text(address))
    2.16 @@ -627,6 +629,7 @@ void __init mem_init(void)
    2.17  	int codesize, reservedpages, datasize, initsize;
    2.18  	int tmp;
    2.19  	int bad_ppro;
    2.20 +	unsigned long pfn;
    2.21  
    2.22  #ifndef CONFIG_DISCONTIGMEM
    2.23  	if (!mem_map)
    2.24 @@ -655,6 +658,12 @@ void __init mem_init(void)
    2.25  
    2.26  	/* this will put all low memory onto the freelists */
    2.27  	totalram_pages += __free_all_bootmem();
    2.28 +	/* XEN: init and count low-mem pages outside initial allocation. */
    2.29 +	for (pfn = xen_start_info.nr_pages; pfn < max_low_pfn; pfn++) {
    2.30 +		ClearPageReserved(&mem_map[pfn]);
    2.31 +		atomic_set(&mem_map[pfn].count, 1);
    2.32 +		totalram_pages++;
    2.33 +	}
    2.34  
    2.35  	reservedpages = 0;
    2.36  	for (tmp = 0; tmp < max_low_pfn; tmp++)