[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH v7 2/5] xen/arm: move setup_mm right after setup_pagetables



On Thu, 14 Feb 2013, Stefano Stabellini wrote:
> At the moment we destroy the DTB mappings we have in setup_pagetables
> and we restore them only in setup_mm.
> 
> Move setup_mm right after setup_pagetables.
> This ensures we have a valid DTB mapping while running the subsequent
> initialization code.
> 
> Changes in v7:
> - turn more printk's into early_printk.

I forgot to mention in the changelog that I removed two printks
from init_boot_pages.


> Changes in v5:
> - reword commit message;
> - turn printk in setup_mm into an early_printk.
> 
> Signed-off-by: Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx>
> ---
>  xen/arch/arm/setup.c    |    7 +++----
>  xen/common/page_alloc.c |    6 ------
>  2 files changed, 3 insertions(+), 10 deletions(-)
> 
> diff --git a/xen/arch/arm/setup.c b/xen/arch/arm/setup.c
> index e1ab7f6..c568be5 100644
> --- a/xen/arch/arm/setup.c
> +++ b/xen/arch/arm/setup.c
> @@ -246,11 +246,11 @@ static void __init setup_mm(unsigned long dtb_paddr, 
> size_t dtb_size)
>      } while ( xenheap_pages > 128<<(20-PAGE_SHIFT) );
>  
>      if ( ! e )
> -        panic("Not not enough space for xenheap\n");
> +        early_panic("Not not enough space for xenheap\n");
>  
>      domheap_pages = heap_pages - xenheap_pages;
>  
> -    printk("Xen heap: %lu pages  Dom heap: %lu pages\n", xenheap_pages, 
> domheap_pages);
> +    early_printk("Xen heap: %lu pages  Dom heap: %lu pages\n", 
> xenheap_pages, domheap_pages);
>  
>      setup_xenheap_mappings((e >> PAGE_SHIFT) - xenheap_pages, xenheap_pages);
>  
> @@ -349,6 +349,7 @@ void __init start_xen(unsigned long boot_phys_offset,
>      cmdline_parse(device_tree_bootargs(fdt));
>  
>      setup_pagetables(boot_phys_offset, get_xen_paddr());
> +    setup_mm(atag_paddr, fdt_size);
>  
>  #ifdef EARLY_UART_ADDRESS
>      /* TODO Need to get device tree or command line for UART address */
> @@ -366,8 +367,6 @@ void __init start_xen(unsigned long boot_phys_offset,
>      set_current((struct vcpu *)0xfffff000); /* debug sanity */
>      idle_vcpu[0] = current;
>  
> -    setup_mm(atag_paddr, fdt_size);
> -
>      /* Setup Hyp vector base */
>      WRITE_CP32((uint32_t) hyp_traps_vector, HVBAR);
>      printk("Set hyp vector base to %"PRIx32" (expected %p)\n",
> diff --git a/xen/common/page_alloc.c b/xen/common/page_alloc.c
> index 6b8bc39..6c2215b 100644
> --- a/xen/common/page_alloc.c
> +++ b/xen/common/page_alloc.c
> @@ -182,12 +182,6 @@ void __init init_boot_pages(paddr_t ps, paddr_t pe)
>          else if ( *p != '\0' )
>              break;
>  
> -        if ( bad_epfn == bad_spfn )
> -            printk("Marking page %lx as bad\n", bad_spfn);
> -        else
> -            printk("Marking pages %lx through %lx as bad\n",
> -                   bad_spfn, bad_epfn);
> -
>          bootmem_region_zap(bad_spfn, bad_epfn+1);
>      }
>  }
> -- 
> 1.7.2.5
> 

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.