From 486179737a9b4f9bab89e695f23e593f2df5b850 Mon Sep 17 00:00:00 2001 From: Olivier Houchard Date: Tue, 26 Feb 2013 19:59:52 +0000 Subject: [PATCH] Fix SMP build. --- sys/arm/arm/vfp.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/sys/arm/arm/vfp.c b/sys/arm/arm/vfp.c index bde566ca43c2..c163af03045f 100644 --- a/sys/arm/arm/vfp.c +++ b/sys/arm/arm/vfp.c @@ -43,7 +43,6 @@ unsigned int get_coprocessorACR(void); int vfp_bounce(u_int, u_int, struct trapframe *, int); void vfp_discard(void); void vfp_enable(void); -void vfp_init(void); void vfp_restore(struct vfp_state *); void vfp_store(struct vfp_state *); void set_coprocessorACR(u_int); @@ -74,8 +73,8 @@ void set_coprocessorACR(u_int val) { __asm __volatile("mcr p15, 0, %0, c1, c0, 2\n\t" - "isb\n\t" : : "r" (val) : "cc"); + isb(); } @@ -140,7 +139,7 @@ vfp_bounce(u_int addr, u_int insn, struct trapframe *frame, int code) #ifdef SMP /* don't save if newer registers are on another processor */ if (vfptd /* && (vfptd == curthread) */ && - (vfptd->td_pcb->pcb_vfpcpu == PCPU_GET(vfpcpu)) + (vfptd->td_pcb->pcb_vfpcpu == PCPU_GET(cpu))) #else /* someone did not save their registers, */ if (vfptd /* && (vfptd == curthread) */) @@ -168,7 +167,7 @@ vfp_bounce(u_int addr, u_int insn, struct trapframe *frame, int code) */ vfp_restore(&curpcb->pcb_vfpstate); #ifdef SMP - curpcb->pcb_cpu = PCPU_GET(cpu); + curpcb->pcb_vfpcpu = PCPU_GET(cpu); #endif PCPU_SET(vfpcthread, PCPU_GET(curthread)); return 0;