ia64/xen-unstable

changeset 2604:ff4e7a241335

bitkeeper revision 1.1159.1.208 (416318effuGatlW9BMw8gzHjUl-MCw)

Merge freefall.cl.cam.ac.uk:/auto/groups/xeno/BK/xeno.bk
into freefall.cl.cam.ac.uk:/local/scratch/kaf24/xeno
author kaf24@freefall.cl.cam.ac.uk
date Tue Oct 05 21:58:07 2004 +0000 (2004-10-05)
parents 71985683e5f3 8a3a77314cb5
children 379689bed73a b44a94edc865
files linux-2.4.27-xen-sparse/arch/xen/drivers/balloon/balloon.c linux-2.4.27-xen-sparse/arch/xen/kernel/head.S linux-2.4.27-xen-sparse/arch/xen/kernel/process.c linux-2.4.27-xen-sparse/arch/xen/kernel/setup.c linux-2.4.27-xen-sparse/arch/xen/kernel/time.c linux-2.4.27-xen-sparse/arch/xen/mm/init.c linux-2.4.27-xen-sparse/drivers/char/mem.c linux-2.4.27-xen-sparse/include/asm-xen/keyboard.h linux-2.6.8.1-xen-sparse/arch/xen/i386/kernel/head.S linux-2.6.8.1-xen-sparse/arch/xen/i386/kernel/ioport.c linux-2.6.8.1-xen-sparse/arch/xen/i386/kernel/process.c linux-2.6.8.1-xen-sparse/arch/xen/i386/kernel/setup.c linux-2.6.8.1-xen-sparse/arch/xen/i386/kernel/time.c linux-2.6.8.1-xen-sparse/arch/xen/i386/mm/init.c linux-2.6.8.1-xen-sparse/arch/xen/kernel/ctrl_if.c linux-2.6.8.1-xen-sparse/arch/xen/kernel/reboot.c linux-2.6.8.1-xen-sparse/drivers/char/mem.c linux-2.6.8.1-xen-sparse/drivers/xen/blkback/blkback.c linux-2.6.8.1-xen-sparse/drivers/xen/blkfront/blkfront.c linux-2.6.8.1-xen-sparse/drivers/xen/console/console.c linux-2.6.8.1-xen-sparse/drivers/xen/netback/netback.c linux-2.6.8.1-xen-sparse/drivers/xen/netfront/netfront.c linux-2.6.8.1-xen-sparse/drivers/xen/privcmd/privcmd.c linux-2.6.8.1-xen-sparse/include/asm-xen/asm-i386/mach-xen/setup_arch_post.h linux-2.6.8.1-xen-sparse/include/asm-xen/asm-i386/setup.h linux-2.6.8.1-xen-sparse/include/asm-xen/hypervisor.h
line diff
     1.1 --- a/linux-2.4.27-xen-sparse/arch/xen/drivers/balloon/balloon.c	Tue Oct 05 21:49:36 2004 +0000
     1.2 +++ b/linux-2.4.27-xen-sparse/arch/xen/drivers/balloon/balloon.c	Tue Oct 05 21:58:07 2004 +0000
     1.3 @@ -473,7 +473,7 @@ static int __init init_module(void)
     1.4  {
     1.5      printk(KERN_ALERT "Starting Xen Balloon driver\n");
     1.6  
     1.7 -    most_seen_pages = current_pages = min(start_info.nr_pages,max_pfn);
     1.8 +    most_seen_pages = current_pages = min(xen_start_info.nr_pages,max_pfn);
     1.9      if ( (balloon_pde = create_xen_proc_entry("memory_target", 0644)) == NULL )
    1.10      {
    1.11          printk(KERN_ALERT "Unable to create balloon driver proc entry!");
    1.12 @@ -486,14 +486,14 @@ static int __init init_module(void)
    1.13      /* 
    1.14       * make a new phys map if mem= says xen can give us memory  to grow
    1.15       */
    1.16 -    if ( max_pfn > start_info.nr_pages )
    1.17 +    if ( max_pfn > xen_start_info.nr_pages )
    1.18      {
    1.19          extern unsigned long *phys_to_machine_mapping;
    1.20          unsigned long *newmap;
    1.21          newmap = (unsigned long *)vmalloc(max_pfn * sizeof(unsigned long));
    1.22          memset(newmap, ~0, max_pfn * sizeof(unsigned long));
    1.23          memcpy(newmap, phys_to_machine_mapping,
    1.24 -               start_info.nr_pages * sizeof(unsigned long));
    1.25 +               xen_start_info.nr_pages * sizeof(unsigned long));
    1.26          phys_to_machine_mapping = newmap;
    1.27      }
    1.28  
     2.1 --- a/linux-2.4.27-xen-sparse/arch/xen/kernel/head.S	Tue Oct 05 21:49:36 2004 +0000
     2.2 +++ b/linux-2.4.27-xen-sparse/arch/xen/kernel/head.S	Tue Oct 05 21:58:07 2004 +0000
     2.3 @@ -15,8 +15,8 @@ ENTRY(stext)
     2.4  ENTRY(_stext)
     2.5          cld
     2.6          lss stack_start,%esp
     2.7 -        /* Copy the necessary stuff from start_info structure. */
     2.8 -        mov $SYMBOL_NAME(start_info_union),%edi
     2.9 +        /* Copy the necessary stuff from xen_start_info structure. */
    2.10 +        mov $SYMBOL_NAME(xen_start_info_union),%edi
    2.11          mov $128,%ecx
    2.12          rep movsl
    2.13          jmp SYMBOL_NAME(start_kernel)
     3.1 --- a/linux-2.4.27-xen-sparse/arch/xen/kernel/process.c	Tue Oct 05 21:49:36 2004 +0000
     3.2 +++ b/linux-2.4.27-xen-sparse/arch/xen/kernel/process.c	Tue Oct 05 21:58:07 2004 +0000
     3.3 @@ -338,7 +338,7 @@ void __switch_to(struct task_struct *pre
     3.4      }
     3.5  
     3.6      queue_multicall2(__HYPERVISOR_stack_switch, __KERNEL_DS, next->esp0);
     3.7 -    if ( start_info.flags & SIF_PRIVILEGED ) 
     3.8 +    if ( xen_start_info.flags & SIF_PRIVILEGED ) 
     3.9      {
    3.10          dom0_op_t op;
    3.11          op.cmd           = DOM0_IOPL;
     4.1 --- a/linux-2.4.27-xen-sparse/arch/xen/kernel/setup.c	Tue Oct 05 21:49:36 2004 +0000
     4.2 +++ b/linux-2.4.27-xen-sparse/arch/xen/kernel/setup.c	Tue Oct 05 21:58:07 2004 +0000
     4.3 @@ -114,7 +114,7 @@ extern int blk_nohighio;
     4.4  int enable_acpi_smp_table;
     4.5  
     4.6  /* Raw start-of-day parameters from the hypervisor. */
     4.7 -union start_info_union start_info_union;
     4.8 +union xen_start_info_union xen_start_info_union;
     4.9  
    4.10  #define COMMAND_LINE_SIZE 256
    4.11  static char command_line[COMMAND_LINE_SIZE];
    4.12 @@ -131,7 +131,7 @@ static int __init parse_mem_cmdline (cha
    4.13      int mem_param = 0;
    4.14  
    4.15      /* Save unparsed command line copy for /proc/cmdline */
    4.16 -    memcpy(saved_command_line, start_info.cmd_line, COMMAND_LINE_SIZE);
    4.17 +    memcpy(saved_command_line, xen_start_info.cmd_line, COMMAND_LINE_SIZE);
    4.18      saved_command_line[COMMAND_LINE_SIZE-1] = '\0';
    4.19  
    4.20      for (;;) {
    4.21 @@ -275,7 +275,7 @@ void __init setup_arch(char **cmdline_p)
    4.22       * arch/xen/drivers/balloon/balloon.c
    4.23       */
    4.24      mem_param = parse_mem_cmdline(cmdline_p);
    4.25 -    if (!mem_param) mem_param = start_info.nr_pages;
    4.26 +    if (!mem_param) mem_param = xen_start_info.nr_pages;
    4.27  
    4.28  #define PFN_UP(x)	(((x) + PAGE_SIZE-1) >> PAGE_SHIFT)
    4.29  #define PFN_DOWN(x)	((x) >> PAGE_SHIFT)
    4.30 @@ -323,11 +323,11 @@ void __init setup_arch(char **cmdline_p)
    4.31      }
    4.32  #endif
    4.33  
    4.34 -    phys_to_machine_mapping = (unsigned long *)start_info.mfn_list;
    4.35 -    cur_pgd = init_mm.pgd = (pgd_t *)start_info.pt_base;
    4.36 +    phys_to_machine_mapping = (unsigned long *)xen_start_info.mfn_list;
    4.37 +    cur_pgd = init_mm.pgd = (pgd_t *)xen_start_info.pt_base;
    4.38  
    4.39 -    start_pfn = (__pa(start_info.pt_base) >> PAGE_SHIFT) + 
    4.40 -        start_info.nr_pt_frames;
    4.41 +    start_pfn = (__pa(xen_start_info.pt_base) >> PAGE_SHIFT) + 
    4.42 +        xen_start_info.nr_pt_frames;
    4.43  
    4.44      /*
    4.45       * Initialize the boot-time allocator, and free up all RAM. Then reserve 
    4.46 @@ -337,7 +337,7 @@ void __init setup_arch(char **cmdline_p)
    4.47       * bootstrap page table. We are guaranteed to get >=512kB unused 'padding'
    4.48       * for our own use after all bootstrap elements (see hypervisor-if.h).
    4.49       */
    4.50 -    boot_pfn = min((int)start_info.nr_pages,lmax_low_pfn);
    4.51 +    boot_pfn = min((int)xen_start_info.nr_pages,lmax_low_pfn);
    4.52      bootmap_size = init_bootmem(start_pfn,boot_pfn);
    4.53      free_bootmem(0, PFN_PHYS(boot_pfn));
    4.54      reserve_bootmem(__pa(&_stext), 
    4.55 @@ -352,20 +352,20 @@ void __init setup_arch(char **cmdline_p)
    4.56  
    4.57  
    4.58  #ifdef CONFIG_BLK_DEV_INITRD
    4.59 -    if ( start_info.mod_start != 0 )
    4.60 +    if ( xen_start_info.mod_start != 0 )
    4.61      {
    4.62 -        if ( (__pa(start_info.mod_start) + start_info.mod_len) <= 
    4.63 +        if ( (__pa(xen_start_info.mod_start) + xen_start_info.mod_len) <= 
    4.64               (max_low_pfn << PAGE_SHIFT) )
    4.65          {
    4.66 -            initrd_start = start_info.mod_start;
    4.67 -            initrd_end   = initrd_start + start_info.mod_len;
    4.68 +            initrd_start = xen_start_info.mod_start;
    4.69 +            initrd_end   = initrd_start + xen_start_info.mod_len;
    4.70              initrd_below_start_ok = 1;
    4.71          }
    4.72          else
    4.73          {
    4.74              printk(KERN_ERR "initrd extends beyond end of memory "
    4.75                     "(0x%08lx > 0x%08lx)\ndisabling initrd\n",
    4.76 -                   __pa(start_info.mod_start) + start_info.mod_len,
    4.77 +                   __pa(xen_start_info.mod_start) + xen_start_info.mod_len,
    4.78                     max_low_pfn << PAGE_SHIFT);
    4.79              initrd_start = 0;
    4.80          }
    4.81 @@ -384,7 +384,7 @@ void __init setup_arch(char **cmdline_p)
    4.82  	virt_to_machine(pfn_to_mfn_frame_list) >> PAGE_SHIFT;
    4.83  
    4.84      /* If we are a privileged guest OS then we should request IO privileges. */
    4.85 -    if ( start_info.flags & SIF_PRIVILEGED ) 
    4.86 +    if ( xen_start_info.flags & SIF_PRIVILEGED ) 
    4.87      {
    4.88          dom0_op_t op;
    4.89          op.cmd           = DOM0_IOPL;
    4.90 @@ -395,9 +395,9 @@ void __init setup_arch(char **cmdline_p)
    4.91          current->thread.io_pl = 1;
    4.92      }
    4.93  
    4.94 -    if (start_info.flags & SIF_INITDOMAIN )
    4.95 +    if (xen_start_info.flags & SIF_INITDOMAIN )
    4.96      {
    4.97 -        if( !(start_info.flags & SIF_PRIVILEGED) )
    4.98 +        if( !(xen_start_info.flags & SIF_PRIVILEGED) )
    4.99              panic("Xen granted us console access but not privileged status");
   4.100  
   4.101  #if defined(CONFIG_VT)
     5.1 --- a/linux-2.4.27-xen-sparse/arch/xen/kernel/time.c	Tue Oct 05 21:49:36 2004 +0000
     5.2 +++ b/linux-2.4.27-xen-sparse/arch/xen/kernel/time.c	Tue Oct 05 21:58:07 2004 +0000
     5.3 @@ -128,7 +128,7 @@ static int __init __independent_wallcloc
     5.4  }
     5.5  __setup("independent_wallclock", __independent_wallclock);
     5.6  #define INDEPENDENT_WALLCLOCK() \
     5.7 -    (independent_wallclock || (start_info.flags & SIF_INITDOMAIN))
     5.8 +    (independent_wallclock || (xen_start_info.flags & SIF_INITDOMAIN))
     5.9  
    5.10  #ifdef CONFIG_XEN_PRIVILEGED_GUEST
    5.11  /*
    5.12 @@ -340,7 +340,7 @@ void do_settimeofday(struct timeval *tv)
    5.13      last_update_from_xen = 0;
    5.14  
    5.15  #ifdef CONFIG_XEN_PRIVILEGED_GUEST
    5.16 -    if ( start_info.flags & SIF_INITDOMAIN )
    5.17 +    if ( xen_start_info.flags & SIF_INITDOMAIN )
    5.18      {
    5.19          dom0_op_t op;
    5.20          last_update_to_rtc = last_update_to_xen = 0;
    5.21 @@ -455,7 +455,7 @@ static inline void do_timer_interrupt(in
    5.22      }
    5.23  
    5.24  #ifdef CONFIG_XEN_PRIVILEGED_GUEST
    5.25 -    if ( (start_info.flags & SIF_INITDOMAIN) &&
    5.26 +    if ( (xen_start_info.flags & SIF_INITDOMAIN) &&
    5.27           ((time_status & STA_UNSYNC) == 0) )
    5.28      {
    5.29          /* Send synchronised time to Xen approximately every minute. */
     6.1 --- a/linux-2.4.27-xen-sparse/arch/xen/mm/init.c	Tue Oct 05 21:49:36 2004 +0000
     6.2 +++ b/linux-2.4.27-xen-sparse/arch/xen/mm/init.c	Tue Oct 05 21:58:07 2004 +0000
     6.3 @@ -221,9 +221,9 @@ static void __init pagetable_init (void)
     6.4  
     6.5      /* create tables only for boot_pfn frames.  max_low_pfn may be sized for
     6.6       * pages yet to be allocated from the hypervisor, or it may be set
     6.7 -     * to override the start_info amount of memory
     6.8 +     * to override the xen_start_info amount of memory
     6.9       */
    6.10 -    int boot_pfn = min(start_info.nr_pages,max_low_pfn);
    6.11 +    int boot_pfn = min(xen_start_info.nr_pages,max_low_pfn);
    6.12  
    6.13      /*
    6.14       * This can be zero as well - no problem, in that case we exit
    6.15 @@ -315,7 +315,7 @@ void __init paging_init(void)
    6.16  
    6.17      zone_sizes_init();
    6.18      /* Switch to the real shared_info page, and clear the dummy page. */
    6.19 -    set_fixmap(FIX_SHARED_INFO, start_info.shared_info);
    6.20 +    set_fixmap(FIX_SHARED_INFO, xen_start_info.shared_info);
    6.21      HYPERVISOR_shared_info = (shared_info_t *)fix_to_virt(FIX_SHARED_INFO);
    6.22      memset(empty_zero_page, 0, sizeof(empty_zero_page));
    6.23  
    6.24 @@ -376,9 +376,9 @@ static int __init free_pages_init(void)
    6.25      /* add only boot_pfn pages of low memory to free list.
    6.26       * max_low_pfn may be sized for
    6.27       * pages yet to be allocated from the hypervisor, or it may be set
    6.28 -     * to override the start_info amount of memory
    6.29 +     * to override the xen_start_info amount of memory
    6.30       */
    6.31 -    int boot_pfn = min(start_info.nr_pages,max_low_pfn);
    6.32 +    int boot_pfn = min(xen_start_info.nr_pages,max_low_pfn);
    6.33  
    6.34      /* this will put all low memory onto the freelists */
    6.35      totalram_pages += free_all_bootmem();
    6.36 @@ -392,7 +392,7 @@ static int __init free_pages_init(void)
    6.37              reservedpages++;
    6.38      }
    6.39  #ifdef CONFIG_HIGHMEM
    6.40 -    for (pfn = start_info.nr_pages-1; pfn >= highstart_pfn; pfn--)
    6.41 +    for (pfn = xen_start_info.nr_pages-1; pfn >= highstart_pfn; pfn--)
    6.42          one_highpage_init((struct page *) (mem_map + pfn), pfn, bad_ppro);
    6.43      totalram_pages += totalhigh_pages;
    6.44  #endif
     7.1 --- a/linux-2.4.27-xen-sparse/drivers/char/mem.c	Tue Oct 05 21:49:36 2004 +0000
     7.2 +++ b/linux-2.4.27-xen-sparse/drivers/char/mem.c	Tue Oct 05 21:58:07 2004 +0000
     7.3 @@ -234,7 +234,7 @@ static int mmap_mem(struct file * file, 
     7.4  {
     7.5  	unsigned long offset = vma->vm_pgoff << PAGE_SHIFT;
     7.6  
     7.7 -	if (!(start_info.flags & SIF_PRIVILEGED))
     7.8 +	if (!(xen_start_info.flags & SIF_PRIVILEGED))
     7.9  		return -ENXIO;
    7.10  
    7.11  	/* DONTCOPY is essential for Xen as copy_page_range is broken. */
     8.1 --- a/linux-2.4.27-xen-sparse/include/asm-xen/keyboard.h	Tue Oct 05 21:49:36 2004 +0000
     8.2 +++ b/linux-2.4.27-xen-sparse/include/asm-xen/keyboard.h	Tue Oct 05 21:58:07 2004 +0000
     8.3 @@ -43,7 +43,7 @@ extern unsigned char pckbd_sysrq_xlate[1
     8.4  
     8.5  #define SYSRQ_KEY 0x54
     8.6  
     8.7 -#define kbd_controller_present() (start_info.flags & SIF_INITDOMAIN)
     8.8 +#define kbd_controller_present() (xen_start_info.flags & SIF_INITDOMAIN)
     8.9  
    8.10  /* resource allocation */
    8.11  #define kbd_request_region()
     9.1 --- a/linux-2.6.8.1-xen-sparse/arch/xen/i386/kernel/head.S	Tue Oct 05 21:49:36 2004 +0000
     9.2 +++ b/linux-2.6.8.1-xen-sparse/arch/xen/i386/kernel/head.S	Tue Oct 05 21:58:07 2004 +0000
     9.3 @@ -36,8 +36,8 @@ ENTRY(startup_32)
     9.4  	/* Set up the stack pointer */
     9.5  	lss stack_start,%esp
     9.6  
     9.7 -	/* Copy the necessary stuff from start_info structure. */
     9.8 -	mov  $start_info_union,%edi
     9.9 +	/* Copy the necessary stuff from xen_start_info structure. */
    9.10 +	mov  $xen_start_info_union,%edi
    9.11  	mov  $128,%ecx
    9.12  	rep movsl
    9.13  
    10.1 --- a/linux-2.6.8.1-xen-sparse/arch/xen/i386/kernel/ioport.c	Tue Oct 05 21:49:36 2004 +0000
    10.2 +++ b/linux-2.6.8.1-xen-sparse/arch/xen/i386/kernel/ioport.c	Tue Oct 05 21:58:07 2004 +0000
    10.3 @@ -22,7 +22,7 @@ asmlinkage long sys_iopl(unsigned int ne
    10.4  	if ((new_io_pl > old_io_pl) && !capable(CAP_SYS_RAWIO))
    10.5  		return -EPERM;
    10.6  
    10.7 -	if (!(start_info.flags & SIF_PRIVILEGED))
    10.8 +	if (!(xen_start_info.flags & SIF_PRIVILEGED))
    10.9  		return -EPERM;
   10.10  
   10.11  	/* Maintain OS privileges even if user attempts to relinquish them. */
    11.1 --- a/linux-2.6.8.1-xen-sparse/arch/xen/i386/kernel/process.c	Tue Oct 05 21:49:36 2004 +0000
    11.2 +++ b/linux-2.6.8.1-xen-sparse/arch/xen/i386/kernel/process.c	Tue Oct 05 21:58:07 2004 +0000
    11.3 @@ -568,7 +568,7 @@ struct task_struct fastcall * __switch_t
    11.4  	C(0); C(1); C(2);
    11.5  #undef C
    11.6  
    11.7 -	if (start_info.flags & SIF_PRIVILEGED) {
    11.8 +	if (xen_start_info.flags & SIF_PRIVILEGED) {
    11.9  		op.cmd           = DOM0_IOPL;
   11.10  		op.u.iopl.domain = DOMID_SELF;
   11.11  		op.u.iopl.iopl   = next->io_pl;
    12.1 --- a/linux-2.6.8.1-xen-sparse/arch/xen/i386/kernel/setup.c	Tue Oct 05 21:49:36 2004 +0000
    12.2 +++ b/linux-2.6.8.1-xen-sparse/arch/xen/i386/kernel/setup.c	Tue Oct 05 21:58:07 2004 +0000
    12.3 @@ -342,7 +342,7 @@ multicall_entry_t multicall_list[8];
    12.4  int nr_multicall_ents = 0;
    12.5  
    12.6  /* Raw start-of-day parameters from the hypervisor. */
    12.7 -union start_info_union start_info_union;
    12.8 +union xen_start_info_union xen_start_info_union;
    12.9  
   12.10  extern void (*pm_idle)(void);
   12.11  
   12.12 @@ -682,7 +682,7 @@ static void __init parse_cmdline_early (
   12.13  	int len = 0;
   12.14  	int userdef = 0;
   12.15  
   12.16 -        memcpy(saved_command_line, start_info.cmd_line, MAX_CMDLINE);
   12.17 +        memcpy(saved_command_line, xen_start_info.cmd_line, MAX_CMDLINE);
   12.18  	/* Save unparsed command line copy for /proc/cmdline */
   12.19  	saved_command_line[COMMAND_LINE_SIZE-1] = '\0';
   12.20  
   12.21 @@ -1020,7 +1020,7 @@ static unsigned long __init setup_memory
   12.22  	 * partially used pages are not usable - thus
   12.23  	 * we are rounding upwards:
   12.24  	 */
   12.25 -	start_pfn = PFN_UP(__pa(start_info.pt_base)) + start_info.nr_pt_frames;
   12.26 +	start_pfn = PFN_UP(__pa(xen_start_info.pt_base)) + xen_start_info.nr_pt_frames;
   12.27  
   12.28  	find_max_pfn();
   12.29  
   12.30 @@ -1081,7 +1081,7 @@ static unsigned long __init setup_memory
   12.31  #endif
   12.32  
   12.33  #ifdef CONFIG_BLK_DEV_INITRD
   12.34 -	if (start_info.mod_start) {
   12.35 +	if (xen_start_info.mod_start) {
   12.36  		if (INITRD_START + INITRD_SIZE <= (max_low_pfn << PAGE_SHIFT)) {
   12.37  			/*reserve_bootmem(INITRD_START, INITRD_SIZE);*/
   12.38  			initrd_start = INITRD_START + PAGE_OFFSET;
   12.39 @@ -1098,7 +1098,7 @@ static unsigned long __init setup_memory
   12.40  	}
   12.41  #endif
   12.42  
   12.43 -	phys_to_machine_mapping = (unsigned long *)start_info.mfn_list;
   12.44 +	phys_to_machine_mapping = (unsigned long *)xen_start_info.mfn_list;
   12.45  
   12.46  	return max_low_pfn;
   12.47  }
   12.48 @@ -1358,7 +1358,7 @@ void __init setup_arch(char **cmdline_p)
   12.49  	init_mm.start_code = (unsigned long) _text;
   12.50  	init_mm.end_code = (unsigned long) _etext;
   12.51  	init_mm.end_data = (unsigned long) _edata;
   12.52 -	init_mm.brk = (PFN_UP(__pa(start_info.pt_base)) + start_info.nr_pt_frames) << PAGE_SHIFT;
   12.53 +	init_mm.brk = (PFN_UP(__pa(xen_start_info.pt_base)) + xen_start_info.nr_pt_frames) << PAGE_SHIFT;
   12.54  
   12.55  	code_resource.start = virt_to_phys(_text);
   12.56  	code_resource.end = virt_to_phys(_etext)-1;
   12.57 @@ -1423,7 +1423,7 @@ void __init setup_arch(char **cmdline_p)
   12.58  	register_memory(max_low_pfn);
   12.59  
   12.60  	/* If we are a privileged guest OS then we should request IO privs. */
   12.61 -	if (start_info.flags & SIF_PRIVILEGED) {
   12.62 +	if (xen_start_info.flags & SIF_PRIVILEGED) {
   12.63  		dom0_op_t op;
   12.64  		op.cmd           = DOM0_IOPL;
   12.65  		op.u.iopl.domain = DOMID_SELF;
   12.66 @@ -1433,8 +1433,8 @@ void __init setup_arch(char **cmdline_p)
   12.67  		current->thread.io_pl = 1;
   12.68  	}
   12.69  
   12.70 -	if (start_info.flags & SIF_INITDOMAIN) {
   12.71 -		if (!(start_info.flags & SIF_PRIVILEGED))
   12.72 +	if (xen_start_info.flags & SIF_INITDOMAIN) {
   12.73 +		if (!(xen_start_info.flags & SIF_PRIVILEGED))
   12.74  			panic("Xen granted us console access "
   12.75  			      "but not privileged status");
   12.76  
    13.1 --- a/linux-2.6.8.1-xen-sparse/arch/xen/i386/kernel/time.c	Tue Oct 05 21:49:36 2004 +0000
    13.2 +++ b/linux-2.6.8.1-xen-sparse/arch/xen/i386/kernel/time.c	Tue Oct 05 21:58:07 2004 +0000
    13.3 @@ -147,7 +147,7 @@ static int __init __independent_wallcloc
    13.4  }
    13.5  __setup("independent_wallclock", __independent_wallclock);
    13.6  #define INDEPENDENT_WALLCLOCK() \
    13.7 -    (independent_wallclock || (start_info.flags & SIF_INITDOMAIN))
    13.8 +    (independent_wallclock || (xen_start_info.flags & SIF_INITDOMAIN))
    13.9  
   13.10  /*
   13.11   * Reads a consistent set of time-base values from Xen, into a shadow data
   13.12 @@ -309,7 +309,7 @@ int do_settimeofday(struct timespec *tv)
   13.13  	last_update_from_xen = 0;
   13.14  
   13.15  #ifdef CONFIG_XEN_PRIVILEGED_GUEST
   13.16 -	if (start_info.flags & SIF_INITDOMAIN) {
   13.17 +	if (xen_start_info.flags & SIF_INITDOMAIN) {
   13.18  		dom0_op_t op;
   13.19  		last_rtc_update = last_update_to_xen = 0;
   13.20  		op.cmd = DOM0_SETTIME;
   13.21 @@ -427,7 +427,7 @@ static inline void do_timer_interrupt(in
   13.22  	}
   13.23  
   13.24  #ifdef CONFIG_XEN_PRIVILEGED_GUEST
   13.25 -	if (!(start_info.flags & SIF_INITDOMAIN))
   13.26 +	if (!(xen_start_info.flags & SIF_INITDOMAIN))
   13.27  		return;
   13.28  
   13.29  	/* Send synchronised time to Xen approximately every minute. */
    14.1 --- a/linux-2.6.8.1-xen-sparse/arch/xen/i386/mm/init.c	Tue Oct 05 21:49:36 2004 +0000
    14.2 +++ b/linux-2.6.8.1-xen-sparse/arch/xen/i386/mm/init.c	Tue Oct 05 21:58:07 2004 +0000
    14.3 @@ -536,7 +536,7 @@ out:
    14.4   */
    14.5  void __init paging_init(void)
    14.6  {
    14.7 -	pgd_t *old_pgd = (pgd_t *)start_info.pt_base;
    14.8 +	pgd_t *old_pgd = (pgd_t *)xen_start_info.pt_base;
    14.9  	pgd_t *new_pgd = swapper_pg_dir;
   14.10  #ifdef CONFIG_XEN_PHYSDEV_ACCESS
   14.11  	int i;
   14.12 @@ -567,7 +567,7 @@ void __init paging_init(void)
   14.13  	flush_page_update_queue();
   14.14  
   14.15  	/* Completely detached from old tables, so free them. */
   14.16 -	free_bootmem(__pa(old_pgd), start_info.nr_pt_frames << PAGE_SHIFT);
   14.17 +	free_bootmem(__pa(old_pgd), xen_start_info.nr_pt_frames << PAGE_SHIFT);
   14.18  
   14.19  #ifdef CONFIG_X86_PAE
   14.20  	/*
   14.21 @@ -584,14 +584,14 @@ void __init paging_init(void)
   14.22  
   14.23  	/* Switch to the real shared_info page, and clear the dummy page. */
   14.24  	flush_page_update_queue();
   14.25 -	set_fixmap_ma(FIX_SHARED_INFO, start_info.shared_info);
   14.26 +	set_fixmap_ma(FIX_SHARED_INFO, xen_start_info.shared_info);
   14.27  	HYPERVISOR_shared_info = (shared_info_t *)fix_to_virt(FIX_SHARED_INFO);
   14.28  	memset(empty_zero_page, 0, sizeof(empty_zero_page));
   14.29  
   14.30  #ifdef CONFIG_XEN_PRIVILEGED_GUEST
   14.31  	/* Setup mapping of lower 1st MB */
   14.32  	for (i = 0; i < NR_FIX_ISAMAPS; i++)
   14.33 -		if (start_info.flags & SIF_PRIVILEGED)
   14.34 +		if (xen_start_info.flags & SIF_PRIVILEGED)
   14.35  			set_fixmap_ma(FIX_ISAMAP_BEGIN - i, i * PAGE_SIZE);
   14.36  		else
   14.37  			set_fixmap_ma_ro(FIX_ISAMAP_BEGIN - i,
    15.1 --- a/linux-2.6.8.1-xen-sparse/arch/xen/kernel/ctrl_if.c	Tue Oct 05 21:49:36 2004 +0000
    15.2 +++ b/linux-2.6.8.1-xen-sparse/arch/xen/kernel/ctrl_if.c	Tue Oct 05 21:58:07 2004 +0000
    15.3 @@ -449,7 +449,7 @@ void ctrl_if_resume(void)
    15.4  {
    15.5      control_if_t *ctrl_if = get_ctrl_if();
    15.6  
    15.7 -    if ( start_info.flags & SIF_INITDOMAIN )
    15.8 +    if ( xen_start_info.flags & SIF_INITDOMAIN )
    15.9      {
   15.10          /*
   15.11           * The initial domain must create its own domain-controller link.
   15.12 @@ -462,7 +462,7 @@ void ctrl_if_resume(void)
   15.13          op.u.bind_interdomain.dom2 = DOMID_SELF;
   15.14          if ( HYPERVISOR_event_channel_op(&op) != 0 )
   15.15              BUG();
   15.16 -        start_info.domain_controller_evtchn = op.u.bind_interdomain.port1;
   15.17 +        xen_start_info.domain_controller_evtchn = op.u.bind_interdomain.port1;
   15.18          initdom_ctrlif_domcontroller_port   = op.u.bind_interdomain.port2;
   15.19      }
   15.20  
   15.21 @@ -470,7 +470,7 @@ void ctrl_if_resume(void)
   15.22      ctrl_if_tx_resp_cons = ctrl_if->tx_resp_prod;
   15.23      ctrl_if_rx_req_cons  = ctrl_if->rx_resp_prod;
   15.24  
   15.25 -    ctrl_if_evtchn = start_info.domain_controller_evtchn;
   15.26 +    ctrl_if_evtchn = xen_start_info.domain_controller_evtchn;
   15.27      ctrl_if_irq    = bind_evtchn_to_irq(ctrl_if_evtchn);
   15.28  
   15.29  #define SA_STATIC_ACTION 0x01000000 /* so that free_irq() doesn't do kfree() */
    16.1 --- a/linux-2.6.8.1-xen-sparse/arch/xen/kernel/reboot.c	Tue Oct 05 21:49:36 2004 +0000
    16.2 +++ b/linux-2.6.8.1-xen-sparse/arch/xen/kernel/reboot.c	Tue Oct 05 21:58:07 2004 +0000
    16.3 @@ -103,7 +103,7 @@ static void __do_suspend(void)
    16.4      HYPERVISOR_shared_info = (shared_info_t *)empty_zero_page;
    16.5      clear_fixmap(FIX_SHARED_INFO);
    16.6  
    16.7 -    memcpy(&suspend_record->resume_info, &start_info, sizeof(start_info));
    16.8 +    memcpy(&suspend_record->resume_info, &xen_start_info, sizeof(xen_start_info));
    16.9  
   16.10      HYPERVISOR_suspend(virt_to_machine(suspend_record) >> PAGE_SHIFT);
   16.11  
   16.12 @@ -116,12 +116,12 @@ static void __do_suspend(void)
   16.13  
   16.14      shutting_down = -1; 
   16.15  
   16.16 -    memcpy(&start_info, &suspend_record->resume_info, sizeof(start_info));
   16.17 +    memcpy(&xen_start_info, &suspend_record->resume_info, sizeof(xen_start_info));
   16.18  
   16.19  #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0)
   16.20 -    set_fixmap_ma(FIX_SHARED_INFO, start_info.shared_info);
   16.21 +    set_fixmap_ma(FIX_SHARED_INFO, xen_start_info.shared_info);
   16.22  #else
   16.23 -    set_fixmap(FIX_SHARED_INFO, start_info.shared_info);
   16.24 +    set_fixmap(FIX_SHARED_INFO, xen_start_info.shared_info);
   16.25  #endif
   16.26  
   16.27      HYPERVISOR_shared_info = (shared_info_t *)fix_to_virt(FIX_SHARED_INFO);
    17.1 --- a/linux-2.6.8.1-xen-sparse/drivers/char/mem.c	Tue Oct 05 21:49:36 2004 +0000
    17.2 +++ b/linux-2.6.8.1-xen-sparse/drivers/char/mem.c	Tue Oct 05 21:58:07 2004 +0000
    17.3 @@ -224,7 +224,7 @@ static int mmap_mem(struct file * file, 
    17.4  #else
    17.5  	unsigned long offset = vma->vm_pgoff << PAGE_SHIFT;
    17.6  
    17.7 -	if (!(start_info.flags & SIF_PRIVILEGED))
    17.8 +	if (!(xen_start_info.flags & SIF_PRIVILEGED))
    17.9  		return -ENXIO;
   17.10  
   17.11  	/* Currently we're not smart about setting PTE cacheability. */
    18.1 --- a/linux-2.6.8.1-xen-sparse/drivers/xen/blkback/blkback.c	Tue Oct 05 21:49:36 2004 +0000
    18.2 +++ b/linux-2.6.8.1-xen-sparse/drivers/xen/blkback/blkback.c	Tue Oct 05 21:58:07 2004 +0000
    18.3 @@ -551,8 +551,8 @@ static int __init blkif_init(void)
    18.4  {
    18.5      int i;
    18.6  
    18.7 -    if ( !(start_info.flags & SIF_INITDOMAIN) &&
    18.8 -         !(start_info.flags & SIF_BLK_BE_DOMAIN) )
    18.9 +    if ( !(xen_start_info.flags & SIF_INITDOMAIN) &&
   18.10 +         !(xen_start_info.flags & SIF_BLK_BE_DOMAIN) )
   18.11          return 0;
   18.12  
   18.13      blkif_interface_init();
    19.1 --- a/linux-2.6.8.1-xen-sparse/drivers/xen/blkfront/blkfront.c	Tue Oct 05 21:49:36 2004 +0000
    19.2 +++ b/linux-2.6.8.1-xen-sparse/drivers/xen/blkfront/blkfront.c	Tue Oct 05 21:58:07 2004 +0000
    19.3 @@ -1352,8 +1352,8 @@ int __init xlblk_init(void)
    19.4  {
    19.5      int i;
    19.6      
    19.7 -    if ( (start_info.flags & SIF_INITDOMAIN) 
    19.8 -         || (start_info.flags & SIF_BLK_BE_DOMAIN) )
    19.9 +    if ( (xen_start_info.flags & SIF_INITDOMAIN) 
   19.10 +         || (xen_start_info.flags & SIF_BLK_BE_DOMAIN) )
   19.11          return 0;
   19.12  
   19.13      printk(KERN_INFO "[XEN] Initialising virtual block device driver\n");
    20.1 --- a/linux-2.6.8.1-xen-sparse/drivers/xen/console/console.c	Tue Oct 05 21:49:36 2004 +0000
    20.2 +++ b/linux-2.6.8.1-xen-sparse/drivers/xen/console/console.c	Tue Oct 05 21:58:07 2004 +0000
    20.3 @@ -153,7 +153,7 @@ static int __init xen_console_init(void)
    20.4  void xen_console_init(void)
    20.5  #endif
    20.6  {
    20.7 -    if ( start_info.flags & SIF_INITDOMAIN )
    20.8 +    if ( xen_start_info.flags & SIF_INITDOMAIN )
    20.9      {
   20.10          if ( xc_mode == XC_DEFAULT )
   20.11              xc_mode = XC_SERIAL;
   20.12 @@ -210,7 +210,7 @@ void xencons_force_flush(void)
   20.13      int        sz;
   20.14  
   20.15      /* Emergency console is synchronous, so there's nothing to flush. */
   20.16 -    if ( start_info.flags & SIF_INITDOMAIN )
   20.17 +    if ( xen_start_info.flags & SIF_INITDOMAIN )
   20.18          return;
   20.19  
   20.20      /*
   20.21 @@ -286,7 +286,7 @@ static void __xencons_tx_flush(void)
   20.22      int        sz, work_done = 0;
   20.23      ctrl_msg_t msg;
   20.24  
   20.25 -    if ( start_info.flags & SIF_INITDOMAIN )
   20.26 +    if ( xen_start_info.flags & SIF_INITDOMAIN )
   20.27      {
   20.28          if ( x_char )
   20.29          {
   20.30 @@ -700,7 +700,7 @@ static int __init xencons_init(void)
   20.31      tty_register_device(xencons_driver, 0, NULL);
   20.32  #endif
   20.33  
   20.34 -    if ( start_info.flags & SIF_INITDOMAIN )
   20.35 +    if ( xen_start_info.flags & SIF_INITDOMAIN )
   20.36      {
   20.37          xencons_priv_irq = bind_virq_to_irq(VIRQ_CONSOLE);
   20.38          (void)request_irq(xencons_priv_irq,
   20.39 @@ -728,7 +728,7 @@ static void __exit xencons_fini(void)
   20.40      if ( (ret = tty_unregister_driver(DRV(xencons_driver))) != 0 )
   20.41          printk(KERN_ERR "Unable to unregister Xen console driver: %d\n", ret);
   20.42  
   20.43 -    if ( start_info.flags & SIF_INITDOMAIN )
   20.44 +    if ( xen_start_info.flags & SIF_INITDOMAIN )
   20.45      {
   20.46          free_irq(xencons_priv_irq, NULL);
   20.47          unbind_virq_from_irq(VIRQ_CONSOLE);
    21.1 --- a/linux-2.6.8.1-xen-sparse/drivers/xen/netback/netback.c	Tue Oct 05 21:49:36 2004 +0000
    21.2 +++ b/linux-2.6.8.1-xen-sparse/drivers/xen/netback/netback.c	Tue Oct 05 21:58:07 2004 +0000
    21.3 @@ -776,8 +776,8 @@ static int __init netback_init(void)
    21.4      int i;
    21.5      struct page *page;
    21.6  
    21.7 -    if ( !(start_info.flags & SIF_NET_BE_DOMAIN) &&
    21.8 -	 !(start_info.flags & SIF_INITDOMAIN) )
    21.9 +    if ( !(xen_start_info.flags & SIF_NET_BE_DOMAIN) &&
   21.10 +	 !(xen_start_info.flags & SIF_INITDOMAIN) )
   21.11          return 0;
   21.12  
   21.13      printk("Initialising Xen netif backend\n");
    22.1 --- a/linux-2.6.8.1-xen-sparse/drivers/xen/netfront/netfront.c	Tue Oct 05 21:49:36 2004 +0000
    22.2 +++ b/linux-2.6.8.1-xen-sparse/drivers/xen/netfront/netfront.c	Tue Oct 05 21:58:07 2004 +0000
    22.3 @@ -1244,8 +1244,8 @@ static int __init netif_init(void)
    22.4  {
    22.5      int err = 0;
    22.6  
    22.7 -    if ( (start_info.flags & SIF_INITDOMAIN) ||
    22.8 -         (start_info.flags & SIF_NET_BE_DOMAIN) )
    22.9 +    if ( (xen_start_info.flags & SIF_INITDOMAIN) ||
   22.10 +         (xen_start_info.flags & SIF_NET_BE_DOMAIN) )
   22.11          return 0;
   22.12  
   22.13      IPRINTK("Initialising virtual ethernet driver.\n");
    23.1 --- a/linux-2.6.8.1-xen-sparse/drivers/xen/privcmd/privcmd.c	Tue Oct 05 21:49:36 2004 +0000
    23.2 +++ b/linux-2.6.8.1-xen-sparse/drivers/xen/privcmd/privcmd.c	Tue Oct 05 21:58:07 2004 +0000
    23.3 @@ -208,7 +208,7 @@ static struct file_operations privcmd_fi
    23.4  
    23.5  static int __init privcmd_init(void)
    23.6  {
    23.7 -    if ( !(start_info.flags & SIF_PRIVILEGED) )
    23.8 +    if ( !(xen_start_info.flags & SIF_PRIVILEGED) )
    23.9          return 0;
   23.10  
   23.11      privcmd_intf = create_xen_proc_entry("privcmd", 0400);
    24.1 --- a/linux-2.6.8.1-xen-sparse/include/asm-xen/asm-i386/mach-xen/setup_arch_post.h	Tue Oct 05 21:49:36 2004 +0000
    24.2 +++ b/linux-2.6.8.1-xen-sparse/include/asm-xen/asm-i386/mach-xen/setup_arch_post.h	Tue Oct 05 21:58:07 2004 +0000
    24.3 @@ -14,7 +14,7 @@ static char * __init machine_specific_me
    24.4  	who = "Xen";
    24.5  
    24.6  	start_pfn = 0;
    24.7 -	max_pfn = start_info.nr_pages;
    24.8 +	max_pfn = xen_start_info.nr_pages;
    24.9  
   24.10  	e820.nr_map = 0;
   24.11  	add_memory_region(PFN_PHYS(start_pfn), PFN_PHYS(max_pfn) - PFN_PHYS(start_pfn), E820_RAM);
    25.1 --- a/linux-2.6.8.1-xen-sparse/include/asm-xen/asm-i386/setup.h	Tue Oct 05 21:49:36 2004 +0000
    25.2 +++ b/linux-2.6.8.1-xen-sparse/include/asm-xen/asm-i386/setup.h	Tue Oct 05 21:58:07 2004 +0000
    25.3 @@ -53,8 +53,8 @@ extern unsigned char boot_params[PARAM_S
    25.4  #define AUX_DEVICE_INFO (*(unsigned char *) (PARAM+0x1FF))
    25.5  #define LOADER_TYPE (*(unsigned char *) (PARAM+0x210))
    25.6  #define KERNEL_START (*(unsigned long *) (PARAM+0x214))
    25.7 -#define INITRD_START (__pa(start_info.mod_start))
    25.8 -#define INITRD_SIZE (start_info.mod_len)
    25.9 +#define INITRD_START (__pa(xen_start_info.mod_start))
   25.10 +#define INITRD_SIZE (xen_start_info.mod_len)
   25.11  #define EDID_INFO   (*(struct edid_info *) (PARAM+0x440))
   25.12  #define EDD_NR     (*(unsigned char *) (PARAM+EDDNR))
   25.13  #define EDD_MBR_SIG_NR (*(unsigned char *) (PARAM+EDD_MBR_SIG_NR_BUF))
    26.1 --- a/linux-2.6.8.1-xen-sparse/include/asm-xen/hypervisor.h	Tue Oct 05 21:49:36 2004 +0000
    26.2 +++ b/linux-2.6.8.1-xen-sparse/include/asm-xen/hypervisor.h	Tue Oct 05 21:58:07 2004 +0000
    26.3 @@ -19,13 +19,13 @@
    26.4  #include <asm/page.h>
    26.5  
    26.6  /* arch/xen/i386/kernel/setup.c */
    26.7 -union start_info_union
    26.8 +union xen_start_info_union
    26.9  {
   26.10 -    start_info_t start_info;
   26.11 +    start_info_t xen_start_info;
   26.12      char padding[512];
   26.13  };
   26.14 -extern union start_info_union start_info_union;
   26.15 -#define start_info (start_info_union.start_info)
   26.16 +extern union xen_start_info_union xen_start_info_union;
   26.17 +#define xen_start_info (xen_start_info_union.xen_start_info)
   26.18  
   26.19  /* arch/xen/kernel/process.c */
   26.20  void xen_cpu_idle (void);