ia64/xen-unstable

changeset 4439:528e86541344

bitkeeper revision 1.1236.1.195 (424db3316-ouw6gxuWPhF6gqVLr5kQ)

Merge http://xen-ia64.bkbits.net/xeno-unstable-ia64.bk
into sportsman.spdomain:/home/djm/xeno-unstable-ia64.bk
author djm@sportsman.spdomain
date Fri Apr 01 20:46:41 2005 +0000 (2005-04-01)
parents f042ec659698 df4e533ee802
children 281cdf5f5f64
files .rootkeys xen/arch/ia64/Rules.mk xen/arch/ia64/domain.c xen/arch/ia64/patch/linux-2.6.7/entry.S xen/arch/ia64/patch/linux-2.6.7/head.S xen/arch/ia64/patch/linux-2.6.7/ivt.S xen/arch/ia64/patch/linux-2.6.7/mca_asm.h xen/arch/ia64/patch/linux-2.6.7/minstate.h xen/arch/ia64/patch/linux-2.6.7/page.h xen/arch/ia64/patch/linux-2.6.7/pal.S xen/arch/ia64/patch/linux-2.6.7/system.h xen/arch/ia64/tools/mkbuildtree xen/arch/ia64/xenasm.S
line diff
     1.1 --- a/.rootkeys	Fri Apr 01 20:46:13 2005 +0000
     1.2 +++ b/.rootkeys	Fri Apr 01 20:46:41 2005 +0000
     1.3 @@ -1023,12 +1023,14 @@ 421098b4C0Lc3xag4Nm-_yC9IMTDqA xen/arch/
     1.4  421098b4weyd0AQTjPLmooChUJm13Q xen/arch/ia64/patch/linux-2.6.7/kregs.h
     1.5  421098b4vHCejAUPem4w8p5V-AD1Ig xen/arch/ia64/patch/linux-2.6.7/lds.S
     1.6  421098b4uooGl5X8zZM96qpmS0Furg xen/arch/ia64/patch/linux-2.6.7/linuxtime.h
     1.7 +424dad01Txy4dcgKHGkTx1L2z7GuQA xen/arch/ia64/patch/linux-2.6.7/mca_asm.h
     1.8  421098b4awnw3Jf23gohJWoK8s7-Qg xen/arch/ia64/patch/linux-2.6.7/minstate.h
     1.9  421098b5hIfMbZlQTfrOKN4BtzJgDQ xen/arch/ia64/patch/linux-2.6.7/mm_bootmem.c
    1.10  421098b53IVBoQPcDjFciZy86YEhRQ xen/arch/ia64/patch/linux-2.6.7/mm_contig.c
    1.11  421098b5pZw41QuBTvhjvSol6aAHDw xen/arch/ia64/patch/linux-2.6.7/mmzone.h
    1.12  421098b5B_dClZDGuPYeY3IXo8Hlbw xen/arch/ia64/patch/linux-2.6.7/page.h
    1.13  421098b5saClfxPj36l47H9Um7h1Fw xen/arch/ia64/patch/linux-2.6.7/page_alloc.c
    1.14 +424dab78_JGGpJDaAb6ZtkPJAkAKOA xen/arch/ia64/patch/linux-2.6.7/pal.S
    1.15  4241ed05l9ZdG7Aj0tygIxIwPRXhog xen/arch/ia64/patch/linux-2.6.7/pgalloc.h
    1.16  421098b5OkmcjMBq8gxs7ZrTa4Ao6g xen/arch/ia64/patch/linux-2.6.7/processor.h
    1.17  421098b51RLB6jWr6rIlpB2SNObxZg xen/arch/ia64/patch/linux-2.6.7/sal.h
     2.1 --- a/xen/arch/ia64/Rules.mk	Fri Apr 01 20:46:13 2005 +0000
     2.2 +++ b/xen/arch/ia64/Rules.mk	Fri Apr 01 20:46:41 2005 +0000
     2.3 @@ -5,8 +5,8 @@ ifeq ($(COMPILE_ARCH),$(TARGET_ARCH))
     2.4  OBJCOPY = objcopy
     2.5  endif
     2.6  ifneq ($(COMPILE_ARCH),$(TARGET_ARCH))
     2.7 -CC = /usr/local/sp_env/v2.2.3/i686/bin/ia64-unknown-linux-gcc
     2.8 -LD = /usr/local/sp_env/v2.2.3/i686/bin/ia64-unknown-linux-ld
     2.9 +CC = /usr/local/sp_env/v2.2.5/i686/bin/ia64-unknown-linux-gcc
    2.10 +LD = /usr/local/sp_env/v2.2.5/i686/bin/ia64-unknown-linux-ld
    2.11  OBJCOPY = /usr/local/sp_env/v2.2/i686/bin/ia64-unknown-linux-objcopy
    2.12  endif
    2.13  HOSTCC := gcc
     3.1 --- a/xen/arch/ia64/domain.c	Fri Apr 01 20:46:13 2005 +0000
     3.2 +++ b/xen/arch/ia64/domain.c	Fri Apr 01 20:46:41 2005 +0000
     3.3 @@ -194,9 +194,9 @@ void arch_do_createdomain(struct exec_do
     3.4  	if (!allocate_rid_range(d,DOMAIN_RID_BITS_DEFAULT)) // FIXME
     3.5  		BUG();
     3.6  	// the following will eventually need to be negotiated dynamically
     3.7 -	d->xen_vastart = 0xfffc000000000000;
     3.8 -	d->xen_vaend = 0xfffe000000000000;
     3.9 -	d->shared_info_va = 0xfffd000000000000;
    3.10 +	d->xen_vastart = 0xf000000000000000;
    3.11 +	d->xen_vaend = 0xf300000000000000;
    3.12 +	d->shared_info_va = 0xf100000000000000;
    3.13  	d->breakimm = 0x1000;
    3.14  	// stay on kernel stack because may get interrupts!
    3.15  	// ia64_ret_from_clone (which b0 gets in new_thread) switches
    3.16 @@ -882,3 +882,24 @@ void domain_pend_keyboard_interrupt(int 
    3.17  {
    3.18  	vcpu_pend_interrupt(dom0->exec_domain[0],irq);
    3.19  }
    3.20 +
    3.21 +/////////////////////////////////
    3.22 +// added 01Apr2005, to accomodate change in xen/sched.h, not clear
    3.23 +//  yet if this functionality is needed on ia64
    3.24 +#if 0
    3.25 +static void __synchronise_lazy_execstate(void *unused)
    3.26 +{
    3.27 +    if ( percpu_ctxt[smp_processor_id()].curr_ed != current )
    3.28 +    {
    3.29 +        __context_switch();
    3.30 +        load_LDT(current);
    3.31 +        clear_segments();
    3.32 +    }
    3.33 +}
    3.34 +#endif
    3.35 +
    3.36 +void synchronise_lazy_execstate(unsigned long cpuset)
    3.37 +{
    3.38 +    //smp_subset_call_function(__synchronise_lazy_execstate, NULL, 1, cpuset);
    3.39 +}
    3.40 +/////////////////////////////////
     4.1 --- a/xen/arch/ia64/patch/linux-2.6.7/entry.S	Fri Apr 01 20:46:13 2005 +0000
     4.2 +++ b/xen/arch/ia64/patch/linux-2.6.7/entry.S	Fri Apr 01 20:46:41 2005 +0000
     4.3 @@ -1,5 +1,5 @@
     4.4 ---- /home/djm/src/xen/xeno-ia64.bk/xen/linux-2.6.7/arch/ia64/kernel/entry.S	2005-01-23 13:23:36.000000000 -0700
     4.5 -+++ /home/djm/src/xen/xeno-ia64.bk/xen/arch/ia64/entry.S	2004-12-17 13:47:03.000000000 -0700
     4.6 +--- ../../linux-2.6.7/arch/ia64/kernel/entry.S	2005-03-24 19:39:56.000000000 -0700
     4.7 ++++ arch/ia64/entry.S	2005-04-01 12:56:01.000000000 -0700
     4.8  @@ -35,7 +35,9 @@
     4.9   
    4.10   #include <asm/asmmacro.h>
    4.11 @@ -46,7 +46,7 @@
    4.12   	mov r27=IA64_KR(CURRENT_STACK)
    4.13   	adds r21=IA64_TASK_THREAD_KSP_OFFSET,in0
    4.14  -	dep r20=0,in0,61,3		// physical address of "current"
    4.15 -+	dep r20=0,in0,50,14		// physical address of "current"
    4.16 ++	dep r20=0,in0,60,4		// physical address of "current"
    4.17   	;;
    4.18   	st8 [r22]=sp			// save kernel stack pointer of old task
    4.19   	shr.u r26=r20,IA64_GRANULE_SHIFT
     5.1 --- a/xen/arch/ia64/patch/linux-2.6.7/head.S	Fri Apr 01 20:46:13 2005 +0000
     5.2 +++ b/xen/arch/ia64/patch/linux-2.6.7/head.S	Fri Apr 01 20:46:41 2005 +0000
     5.3 @@ -1,5 +1,5 @@
     5.4 ---- /home/djm/src/xen/xeno-ia64.bk/xen/linux-2.6.7/arch/ia64/kernel/head.S	2005-01-23 13:23:36.000000000 -0700
     5.5 -+++ /home/djm/src/xen/xeno-ia64.bk/xen/arch/ia64/head.S	2004-12-17 13:47:03.000000000 -0700
     5.6 +--- ../../linux-2.6.7/arch/ia64/kernel/head.S	2005-03-24 19:39:56.000000000 -0700
     5.7 ++++ arch/ia64/head.S	2005-04-01 12:56:01.000000000 -0700
     5.8  @@ -1,3 +1,8 @@
     5.9  +#ifdef XEN
    5.10  +#define	console_print	printf
    5.11 @@ -14,7 +14,7 @@
    5.12   	;;
    5.13   	or r18=r17,r18
    5.14  +#ifdef XEN
    5.15 -+	dep r2=-1,r3,50,14	// IMVA of task
    5.16 ++	dep r2=-1,r3,60,4	// IMVA of task
    5.17  +#else
    5.18   	dep r2=-1,r3,61,3	// IMVA of task
    5.19  +#endif
    5.20 @@ -26,7 +26,7 @@
    5.21   	mov ar.rsc=0x3		// place RSE in eager mode
    5.22   
    5.23  +#ifdef XEN
    5.24 -+(isBP)	dep r28=-1,r28,50,14	// make address virtual
    5.25 ++(isBP)	dep r28=-1,r28,60,4	// make address virtual
    5.26  +#else
    5.27   (isBP)	dep r28=-1,r28,61,3	// make address virtual
    5.28  +#endif
    5.29 @@ -69,8 +69,8 @@
    5.30   	dep r3=0,r3,KERNEL_TR_PAGE_SHIFT,64-KERNEL_TR_PAGE_SHIFT
    5.31   	dep r14=0,r14,KERNEL_TR_PAGE_SHIFT,64-KERNEL_TR_PAGE_SHIFT
    5.32  +#ifdef XEN
    5.33 -+	dep r17=-1,r17,50,14
    5.34 -+	dep sp=-1,sp,50,14
    5.35 ++	dep r17=-1,r17,60,4
    5.36 ++	dep sp=-1,sp,60,4
    5.37  +#else
    5.38   	dep r17=-1,r17,61,3
    5.39   	dep sp=-1,sp,61,3
     6.1 --- a/xen/arch/ia64/patch/linux-2.6.7/ivt.S	Fri Apr 01 20:46:13 2005 +0000
     6.2 +++ b/xen/arch/ia64/patch/linux-2.6.7/ivt.S	Fri Apr 01 20:46:41 2005 +0000
     6.3 @@ -1,5 +1,5 @@
     6.4  --- ../../linux-2.6.7/arch/ia64/kernel/ivt.S	2004-06-15 23:18:59.000000000 -0600
     6.5 -+++ arch/ia64/ivt.S	2005-03-28 20:16:02.000000000 -0700
     6.6 ++++ arch/ia64/ivt.S	2005-04-01 12:56:01.000000000 -0700
     6.7  @@ -1,3 +1,21 @@
     6.8  +
     6.9  +#ifdef XEN
    6.10 @@ -99,10 +99,10 @@
    6.11  +#ifdef XEN
    6.12  +	;;
    6.13  +	// FIXME: inadequate test, this is where we test for Xen address
    6.14 -+	// note that 0xfffc (cached) and 0xdffc (uncached) addresses
    6.15 ++	// note that 0xf000 (cached) and 0xd000 (uncached) addresses
    6.16  +	// should be OK.  (Though no I/O is done in Xen, EFI needs uncached
    6.17  +	// addresses and some domain EFI calls are passed through)
    6.18 -+	tbit.nz p0,p8=r16,50
    6.19 ++	tbit.nz p0,p8=r16,60
    6.20  +(p8)	br.cond.spnt page_fault
    6.21  +//(p8)	br.cond.spnt 0
    6.22  +	;;
     7.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     7.2 +++ b/xen/arch/ia64/patch/linux-2.6.7/mca_asm.h	Fri Apr 01 20:46:41 2005 +0000
     7.3 @@ -0,0 +1,32 @@
     7.4 +--- ../../linux-2.6.7/include/asm-ia64/mca_asm.h	2004-06-15 23:20:03.000000000 -0600
     7.5 ++++ include/asm-ia64/mca_asm.h	2005-04-01 12:56:37.000000000 -0700
     7.6 +@@ -26,8 +26,13 @@
     7.7 +  * direct mapped to physical addresses.
     7.8 +  *	1. Lop off bits 61 thru 63 in the virtual address
     7.9 +  */
    7.10 ++#ifdef XEN
    7.11 ++#define INST_VA_TO_PA(addr)							\
    7.12 ++	dep	addr	= 0, addr, 60, 4
    7.13 ++#else // XEN
    7.14 + #define INST_VA_TO_PA(addr)							\
    7.15 + 	dep	addr	= 0, addr, 61, 3
    7.16 ++#endif // XEN
    7.17 + /*
    7.18 +  * This macro converts a data virtual address to a physical address
    7.19 +  * Right now for simulation purposes the virtual addresses are
    7.20 +@@ -42,9 +47,15 @@
    7.21 +  * direct mapped to physical addresses.
    7.22 +  *	1. Put 0x7 in bits 61 thru 63.
    7.23 +  */
    7.24 ++#ifdef XEN
    7.25 ++#define DATA_PA_TO_VA(addr,temp)							\
    7.26 ++	mov	temp	= 0xf	;;							\
    7.27 ++	dep	addr	= temp, addr, 60, 4
    7.28 ++#else // XEN
    7.29 + #define DATA_PA_TO_VA(addr,temp)							\
    7.30 + 	mov	temp	= 0x7	;;							\
    7.31 + 	dep	addr	= temp, addr, 61, 3
    7.32 ++#endif // XEN
    7.33 + 
    7.34 + /*
    7.35 +  * This macro jumps to the instruction at the given virtual address
     8.1 --- a/xen/arch/ia64/patch/linux-2.6.7/minstate.h	Fri Apr 01 20:46:13 2005 +0000
     8.2 +++ b/xen/arch/ia64/patch/linux-2.6.7/minstate.h	Fri Apr 01 20:46:41 2005 +0000
     8.3 @@ -1,14 +1,29 @@
     8.4 ---- /home/djm/src/xen/xeno-ia64.bk/xen/linux-2.6.7/arch/ia64/kernel/minstate.h	2004-06-15 23:19:52.000000000 -0600
     8.5 -+++ /home/djm/src/xen/xeno-ia64.bk/xen/arch/ia64/minstate.h	2004-12-15 16:36:00.000000000 -0700
     8.6 -@@ -3,6 +3,11 @@
     8.7 - #include <asm/cache.h>
     8.8 +--- ../../linux-2.6.7/arch/ia64/kernel/minstate.h	2004-06-15 23:19:52.000000000 -0600
     8.9 ++++ arch/ia64/minstate.h	2005-04-01 12:56:01.000000000 -0700
    8.10 +@@ -45,7 +45,7 @@
    8.11 + (pKStk) tpa r1=sp;				/* compute physical addr of sp	*/		\
    8.12 + (pUStk)	addl r1=IA64_STK_OFFSET-IA64_PT_REGS_SIZE,r1;	/* compute base of memory stack */	\
    8.13 + (pUStk)	mov r23=ar.bspstore;				/* save ar.bspstore */			\
    8.14 +-(pUStk)	dep r22=-1,r22,61,3;			/* compute kernel virtual addr of RBS */	\
    8.15 ++(pUStk)	dep r22=-1,r22,60,4;			/* compute kernel virtual addr of RBS */	\
    8.16 + 	;;											\
    8.17 + (pKStk) addl r1=-IA64_PT_REGS_SIZE,r1;		/* if in kernel mode, use sp (r12) */		\
    8.18 + (pUStk)	mov ar.bspstore=r22;			/* switch to kernel RBS */			\
    8.19 +@@ -65,7 +65,7 @@
    8.20 + #endif
    8.21   
    8.22 - #include "entry.h"
    8.23 -+#ifdef XEN
    8.24 -+//this can be removed when offsets.h is properly generated
    8.25 -+#undef IA64_TASK_THREAD_ON_USTACK_OFFSET
    8.26 -+#define IA64_TASK_THREAD_ON_USTACK_OFFSET 0x34
    8.27 -+#endif
    8.28 - 
    8.29 - /*
    8.30 -  * For ivt.s we want to access the stack virtually so we don't have to disable translation
    8.31 + #ifdef MINSTATE_PHYS
    8.32 +-# define MINSTATE_GET_CURRENT(reg)	mov reg=IA64_KR(CURRENT);; dep reg=0,reg,61,3
    8.33 ++# define MINSTATE_GET_CURRENT(reg)	mov reg=IA64_KR(CURRENT);; dep reg=0,reg,60,4
    8.34 + # define MINSTATE_START_SAVE_MIN	MINSTATE_START_SAVE_MIN_PHYS
    8.35 + # define MINSTATE_END_SAVE_MIN		MINSTATE_END_SAVE_MIN_PHYS
    8.36 + #endif
    8.37 +@@ -172,7 +172,7 @@
    8.38 + 	;;											\
    8.39 + .mem.offset 0,0; st8.spill [r16]=r15,16;							\
    8.40 + .mem.offset 8,0; st8.spill [r17]=r14,16;							\
    8.41 +-	dep r14=-1,r0,61,3;									\
    8.42 ++	dep r14=-1,r0,60,4;									\
    8.43 + 	;;											\
    8.44 + .mem.offset 0,0; st8.spill [r16]=r2,16;								\
    8.45 + .mem.offset 8,0; st8.spill [r17]=r3,16;								\
     9.1 --- a/xen/arch/ia64/patch/linux-2.6.7/page.h	Fri Apr 01 20:46:13 2005 +0000
     9.2 +++ b/xen/arch/ia64/patch/linux-2.6.7/page.h	Fri Apr 01 20:46:41 2005 +0000
     9.3 @@ -1,5 +1,5 @@
     9.4  --- ../../linux-2.6.7/include/asm-ia64/page.h	2004-06-15 23:18:58.000000000 -0600
     9.5 -+++ include/asm-ia64/page.h	2005-03-23 14:54:11.000000000 -0700
     9.6 ++++ include/asm-ia64/page.h	2005-04-01 12:56:37.000000000 -0700
     9.7  @@ -12,6 +12,9 @@
     9.8   #include <asm/intrinsics.h>
     9.9   #include <asm/types.h>
    9.10 @@ -43,8 +43,8 @@
    9.11  +#ifdef XEN
    9.12  +typedef union xen_va {
    9.13  +	struct {
    9.14 -+		unsigned long off : 50;
    9.15 -+		unsigned long reg : 14;
    9.16 ++		unsigned long off : 60;
    9.17 ++		unsigned long reg : 4;
    9.18  +	} f;
    9.19  +	unsigned long l;
    9.20  +	void *p;
    9.21 @@ -67,7 +67,7 @@
    9.22   #endif /* !STRICT_MM_TYPECHECKS */
    9.23   
    9.24  +#ifdef XEN
    9.25 -+#define PAGE_OFFSET			0xfffc000000000000
    9.26 ++#define PAGE_OFFSET			0xf000000000000000
    9.27  +#else
    9.28   #define PAGE_OFFSET			0xe000000000000000
    9.29  +#endif
    10.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    10.2 +++ b/xen/arch/ia64/patch/linux-2.6.7/pal.S	Fri Apr 01 20:46:41 2005 +0000
    10.3 @@ -0,0 +1,26 @@
    10.4 +--- ../../linux-2.6.7/arch/ia64/kernel/pal.S	2004-06-15 23:20:25.000000000 -0600
    10.5 ++++ arch/ia64/pal.S	2005-04-01 12:56:01.000000000 -0700
    10.6 +@@ -163,7 +163,11 @@
    10.7 + 	adds r8  = 1f-1b,r8		// calculate return address for call
    10.8 + 	;;
    10.9 + 	mov loc4=ar.rsc			// save RSE configuration
   10.10 ++#ifdef XEN
   10.11 ++	dep.z loc2=loc2,0,60		// convert pal entry point to physical
   10.12 ++#else // XEN
   10.13 + 	dep.z loc2=loc2,0,61		// convert pal entry point to physical
   10.14 ++#endif // XEN
   10.15 + 	tpa r8=r8			// convert rp to physical
   10.16 + 	;;
   10.17 + 	mov b7 = loc2			// install target to branch reg
   10.18 +@@ -218,7 +222,11 @@
   10.19 + 	mov loc3 = psr		// save psr
   10.20 + 	;;
   10.21 + 	mov loc4=ar.rsc			// save RSE configuration
   10.22 ++#ifdef XEN
   10.23 ++	dep.z loc2=loc2,0,60		// convert pal entry point to physical
   10.24 ++#else // XEN
   10.25 + 	dep.z loc2=loc2,0,61		// convert pal entry point to physical
   10.26 ++#endif // XEN
   10.27 + 	;;
   10.28 + 	mov ar.rsc=0			// put RSE in enforced lazy, LE mode
   10.29 + 	movl r16=PAL_PSR_BITS_TO_CLEAR
    11.1 --- a/xen/arch/ia64/patch/linux-2.6.7/system.h	Fri Apr 01 20:46:13 2005 +0000
    11.2 +++ b/xen/arch/ia64/patch/linux-2.6.7/system.h	Fri Apr 01 20:46:41 2005 +0000
    11.3 @@ -1,15 +1,15 @@
    11.4 ---- ../../linux-2.6.7/include/asm-ia64/system.h	2005-01-31 11:15:23.000000000 -0700
    11.5 -+++ include/asm-ia64/system.h	2005-03-14 11:31:12.000000000 -0700
    11.6 +--- ../../linux-2.6.7/include/asm-ia64/system.h	2005-03-24 19:39:56.000000000 -0700
    11.7 ++++ include/asm-ia64/system.h	2005-04-01 12:56:37.000000000 -0700
    11.8  @@ -24,8 +24,16 @@
    11.9    * 0xa000000000000000+2*PERCPU_PAGE_SIZE
   11.10    * - 0xa000000000000000+3*PERCPU_PAGE_SIZE remain unmapped (guard page)
   11.11    */
   11.12  +#ifdef XEN
   11.13 -+//#define KERNEL_START		 0xfffc000100000000
   11.14 -+#define KERNEL_START		 0xfffc000004000000
   11.15 -+#define PERCPU_ADDR		 0xfffd000000000000-PERCPU_PAGE_SIZE
   11.16 -+#define SHAREDINFO_ADDR		 0xfffd000000000000
   11.17 -+#define VHPT_ADDR		 0xfffe000000000000
   11.18 ++//#define KERNEL_START		 0xf000000100000000
   11.19 ++#define KERNEL_START		 0xf000000004000000
   11.20 ++#define PERCPU_ADDR		 0xf100000000000000-PERCPU_PAGE_SIZE
   11.21 ++#define SHAREDINFO_ADDR		 0xf100000000000000
   11.22 ++#define VHPT_ADDR		 0xf200000000000000
   11.23  +#else
   11.24   #define KERNEL_START		 0xa000000100000000
   11.25   #define PERCPU_ADDR		(-PERCPU_PAGE_SIZE)
    12.1 --- a/xen/arch/ia64/tools/mkbuildtree	Fri Apr 01 20:46:13 2005 +0000
    12.2 +++ b/xen/arch/ia64/tools/mkbuildtree	Fri Apr 01 20:46:41 2005 +0000
    12.3 @@ -112,7 +112,8 @@ softlink arch/ia64/kernel/ia64_ksyms.c a
    12.4  softlink arch/ia64/kernel/irq_lsapic.c arch/ia64/irq_lsapic.c
    12.5  softlink arch/ia64/kernel/machvec.c arch/ia64/machvec.c
    12.6  softlink arch/ia64/mm/extable.c arch/ia64/extable.c
    12.7 -softlink arch/ia64/kernel/pal.S arch/ia64/pal.S
    12.8 +#softlink arch/ia64/kernel/pal.S arch/ia64/pal.S
    12.9 +cp_patch arch/ia64/kernel/pal.S arch/ia64/pal.S pal.S
   12.10  softlink arch/ia64/kernel/patch.c arch/ia64/patch.c
   12.11  softlink arch/ia64/kernel/sal.c arch/ia64/sal.c
   12.12  softlink arch/ia64/kernel/minstate.h arch/ia64/minstate.h
   12.13 @@ -213,7 +214,8 @@ softlink include/asm-ia64/ioctl.h includ
   12.14  softlink include/asm-ia64/linkage.h include/asm-ia64/linkage.h
   12.15  softlink include/asm-ia64/machvec.h include/asm-ia64/machvec.h
   12.16  softlink include/asm-ia64/machvec_hpsim.h include/asm-ia64/machvec_hpsim.h
   12.17 -softlink include/asm-ia64/mca_asm.h include/asm-ia64/mca_asm.h
   12.18 +#softlink include/asm-ia64/mca_asm.h include/asm-ia64/mca_asm.h
   12.19 +cp_patch include/asm-ia64/mca_asm.h include/asm-ia64/mca_asm.h mca_asm.h
   12.20  softlink include/asm-ia64/mca.h include/asm-ia64/mca.h
   12.21  softlink include/asm-ia64/meminit.h include/asm-ia64/meminit.h
   12.22  softlink include/asm-ia64/mman.h include/asm-ia64/mman.h
    13.1 --- a/xen/arch/ia64/xenasm.S	Fri Apr 01 20:46:13 2005 +0000
    13.2 +++ b/xen/arch/ia64/xenasm.S	Fri Apr 01 20:46:41 2005 +0000
    13.3 @@ -132,7 +132,7 @@ 1:
    13.4  (p7)	br.cond.sptk	.stack_overlaps
    13.5  	;;
    13.6  	movl r25=PAGE_KERNEL
    13.7 -	dep r20=0,r13,50,14		// physical address of "current"
    13.8 +	dep r20=0,r13,60,4		// physical address of "current"
    13.9  	;;
   13.10  	or r23=r25,r20			// construct PA | page properties
   13.11  	mov r25=IA64_GRANULE_SHIFT<<2