]> git.hungrycats.org Git - linux/commitdiff
Clean up sparc64 build
authorDavid S. Miller <davem@pizda.ninka.net>
Sat, 9 Feb 2002 20:58:07 +0000 (12:58 -0800)
committerDavid S. Miller <davem@redhat.com>
Sat, 9 Feb 2002 20:58:07 +0000 (12:58 -0800)
arch/sparc64/kernel/etrap.S
arch/sparc64/kernel/sys_sparc32.c
arch/sparc64/lib/dec_and_lock.S
include/asm-sparc64/hardirq.h
include/asm-sparc64/thread_info.h

index b576ff91b86cd2132c452819af763352db2069f3..60a94bd4247d3901503436d62ec85a64790bfed4 100644 (file)
 #ifdef CONFIG_PREEMPT
 etrap_irq:     ldsw    [%g6 + TI_PRE_COUNT], %g1
                add     %g1, 1, %g1
-               ba,pt   etrap_irq2
+               ba,pt   %xcc, etrap_irq2
                 stw    %g1, [%g6 + TI_PRE_COUNT]
 #endif
 etrap:         rdpr    %pil, %g2                                               ! Single        Group
 #ifndef CONFIG_PREEMPT
-etrap_irq
+etrap_irq:
 #endif
 etrap_irq2:    rdpr    %tstate, %g1                                            ! Single        Group
                sllx    %g2, 20, %g3                                            ! IEU0          Group
index 000d61b22720b2a1d5e6746686d3d1b8edb9df72..d472d4dc31eb7d941577ed85d60d63fec469096d 100644 (file)
@@ -49,6 +49,7 @@
 #include <linux/in.h>
 #include <linux/icmpv6.h>
 #include <linux/sysctl.h>
+#include <linux/binfmts.h>
 
 #include <asm/types.h>
 #include <asm/ipc.h>
index b7c2631dd111c000f7b1a833cf96fa28a8668c70..575f25e5788328b4c9c49f0f0c53b1f1e22bad27 100644 (file)
@@ -5,6 +5,7 @@
  * Copyright (C) 2000 David S. Miller (davem@redhat.com)
  */
 #include <linux/config.h>
+#include <asm/thread_info.h>
 
 #ifndef CONFIG_DEBUG_SPINLOCK
        .text
@@ -40,6 +41,11 @@ out:
        membar  #StoreLoad | #StoreStore
        retl
         mov    %g1, %o0
+#ifdef CONFIG_PREEMPT
+       ldsw    [%g6 + TI_PRE_COUNT], %g3
+       add     %g3, 1, %g3
+       stw     %g3, [%g6 + TI_PRE_COUNT]
+#endif
 to_zero:
        ldstub  [%o1], %g3
        brnz,pn %g3, spin_on_lock
@@ -55,6 +61,11 @@ loop2:       cas     [%o0], %g5, %g7         /* ASSERT(g7 == 0) */
         nop
        membar  #StoreStore | #LoadStore
        stb     %g0, [%o1]
+#ifdef CONFIG_PREEMPT
+       ldsw    [%g6 + TI_PRE_COUNT], %g3
+       sub     %g3, 1, %g3
+       stw     %g3, [%g6 + TI_PRE_COUNT]
+#endif
 
        b,pt    %xcc, nzero
         nop
index 62bfae557ad05fc8827cc567d4a17418a89ffdde..d55bd01d736314fbf1a3c8eb235eb24e2ffe58a8 100644 (file)
@@ -56,6 +56,8 @@ typedef struct {
 
 #define synchronize_irq()      barrier()
 
+#define release_irqlock(cpu)   do { } while (0)
+
 #else /* (CONFIG_SMP) */
 
 static __inline__ int irqs_running(void)
index a1e23aab871e656c6dd34b080e324433cbca93ca..30224a298d9100f90a26e7d4ff6fed60bd7d965a 100644 (file)
@@ -27,6 +27,7 @@
 #ifndef __ASSEMBLY__
 
 #include <asm/ptrace.h>
+#include <asm/types.h>
 
 struct task_struct;
 struct exec_domain;