CONFIG_XEN needs to be gradually removed per discussion since pv_ops
include this concept.
Due to this, we defer the fsys.S changes for some time later to use
indirect function call.
Temporay undo it for now.
Thanks, eddie
commit a882270f415e717a3694f2762f348ab285fb55ce
Author: root <root@xxxxxxxxxxxxxxxxxxxx>
Date: Fri Mar 14 16:18:49 2008 +0800
Undo performance optimization items temporary for fsys.S per
discussion to make first patch to upstream simple.
Signed-off-by: Yaozu (Eddie) Dong <eddie.dong@xxxxxxxxx>
diff --git a/arch/ia64/kernel/fsys.S b/arch/ia64/kernel/fsys.S
index 7d97e37..4484197 100644
--- a/arch/ia64/kernel/fsys.S
+++ b/arch/ia64/kernel/fsys.S
@@ -570,34 +570,11 @@ ENTRY(fsys_fallback_syscall)
adds r17=-1024,r15
movl r14=sys_call_table
;;
-#ifdef CONFIG_XEN
- movl r18=running_on_xen;;
- ld4 r18=[r18];;
- // p14 = running_on_xen
- // p15 = !running_on_xen
- cmp.ne p14,p15=r0,r18
- ;;
-(p14) movl r18=XSI_PSR_I_ADDR;;
-(p14) ld8 r18=[r18]
-(p14) mov r29=1;;
-(p14) st1 [r18]=r29
-(p15) rsm psr.i
-#else
rsm psr.i
-#endif
shladd r18=r17,3,r14
;;
ld8 r18=[r18] // load normal
(heavy-weight) syscall entry-point
-#ifdef CONFIG_XEN
-(p14) mov r27=r8
-(p14) XEN_HYPER_GET_PSR
- ;;
-(p14) mov r29=r8
-(p14) mov r8=r27
-(p15) mov r29=psr // read psr (12 cyc load
latency)
-#else
mov r29=psr // read psr (12 cyc load
latency)
-#endif
mov r27=ar.rsc
mov r21=ar.fpsr
mov r26=ar.pfs
@@ -709,25 +686,7 @@ GLOBAL_ENTRY(fsys_bubble_down)
mov rp=r14 // I0 set the real
return addr
and r3=_TIF_SYSCALL_TRACEAUDIT,r3 // A
;;
-#ifdef CONFIG_XEN
- movl r14=running_on_xen;;
- ld4 r14=[r14];;
- // p14 = running_on_xen
- // p15 = !running_on_xen
- cmp.ne p14,p15=r0,r14
- ;;
-(p14) movl r28=XSI_PSR_I_ADDR;;
-(p14) ld8 r28=[r28];;
-(p14) adds r28=-1,r28;; // event_pending
-(p14) ld1 r14=[r28];;
-(p14) cmp.ne.unc p13,p14=r14,r0;;
-(p13) XEN_HYPER_SSM_I
-(p14) adds r28=1,r28;; // event_mask
-(p14) st1 [r28]=r0;;
-(p15) ssm psr.i
-#else
ssm psr.i // M2 we're on kernel
stacks now, reenable irqs
-#endif
cmp.eq p8,p0=r3,r0 // A
(p10) br.cond.spnt.many ia64_ret_from_syscall // B return if bad
call-frame or r15 is a NaT
fsys_S_undo.patch
Description: fsys_S_undo.patch
_______________________________________________
Xen-ia64-devel mailing list
Xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-ia64-devel
|