[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen-unstable] [IA64] Fix ia64_swith_to() so that it doesn't check with init_task
# HG changeset patch # User Alex Williamson <alex.williamson@xxxxxx> # Date 1200596743 25200 # Node ID ed7d55e8cd34d99a79cba597a964784498bf5d1f # Parent 8909a5717cd7eca27b36b7dd54b1cb10e59cd0c2 [IA64] Fix ia64_swith_to() so that it doesn't check with init_task init_task isn't used directly so that comparison with init_task in ia64_switch_to() is pointless. Remove the comparison. Signed-off-by: Isaku Yamahata <yamahata@xxxxxxxxxxxxx> --- xen/arch/ia64/linux-xen/entry.S | 11 ++++++++++- 1 files changed, 10 insertions(+), 1 deletion(-) diff -r 8909a5717cd7 -r ed7d55e8cd34 xen/arch/ia64/linux-xen/entry.S --- a/xen/arch/ia64/linux-xen/entry.S Thu Jan 17 12:05:43 2008 -0700 +++ b/xen/arch/ia64/linux-xen/entry.S Thu Jan 17 12:05:43 2008 -0700 @@ -194,13 +194,13 @@ GLOBAL_ENTRY(ia64_switch_to) .body adds r22=IA64_TASK_THREAD_KSP_OFFSET,r13 - movl r25=init_task #ifdef XEN movl r27=THIS_CPU(cpu_kr)+IA64_KR_CURRENT_STACK_OFFSET;; ld8 r27=[r27] adds r21=IA64_TASK_THREAD_KSP_OFFSET,in0 dep r20=0,in0,60,4 // physical address of "next" #else + movl r25=init_task mov r27=IA64_KR(CURRENT_STACK) adds r21=IA64_TASK_THREAD_KSP_OFFSET,in0 dep r20=0,in0,61,3 // physical address of "next" @@ -208,6 +208,14 @@ GLOBAL_ENTRY(ia64_switch_to) ;; st8 [r22]=sp // save kernel stack pointer of old task shr.u r26=r20,IA64_GRANULE_SHIFT +#ifdef XEN + ;; + /* + * If we've already mapped this task's page, we can skip doing it again. + */ + cmp.eq p7,p6=r26,r27 + br.cond.dpnt .map +#else cmp.eq p7,p6=r25,in0 ;; /* @@ -215,6 +223,7 @@ GLOBAL_ENTRY(ia64_switch_to) */ (p6) cmp.eq p7,p6=r26,r27 (p6) br.cond.dpnt .map +#endif ;; .done: (p6) ssm psr.ic // if we had to map, reenable the psr.ic bit FIRST!!! _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |