diff options
| author | Patrick Mochel <mochel@osdl.org> | 2002-12-02 03:18:07 -0600 |
|---|---|---|
| committer | Patrick Mochel <mochel@osdl.org> | 2002-12-02 03:18:07 -0600 |
| commit | 94d24994e77e724d8e27e44c36e3d0877cf7222d (patch) | |
| tree | 39a51f4dc1c4c5aeaa8d220057966140a01a469a /include | |
| parent | c445065596bb32adc9bf3f31b50657de41496b1c (diff) | |
| parent | 467578b996aca77ad96b13d0c475227cf7ee753a (diff) | |
Merge osdl.org:/home/mochel/src/kernel/devel/linux-2.5-virgin
into osdl.org:/home/mochel/src/kernel/devel/linux-2.5-core
Diffstat (limited to 'include')
| -rw-r--r-- | include/asm-sparc/elf.h | 2 | ||||
| -rw-r--r-- | include/asm-sparc/hardirq.h | 1 | ||||
| -rw-r--r-- | include/asm-sparc/io.h | 3 | ||||
| -rw-r--r-- | include/asm-sparc/irq.h | 2 | ||||
| -rw-r--r-- | include/asm-sparc/page.h | 3 | ||||
| -rw-r--r-- | include/asm-sparc64/irq.h | 2 | ||||
| -rw-r--r-- | include/asm-sparc64/rwsem.h | 2 | ||||
| -rw-r--r-- | include/asm-sparc64/system.h | 12 |
8 files changed, 17 insertions, 10 deletions
diff --git a/include/asm-sparc/elf.h b/include/asm-sparc/elf.h index 59d2f8e11964..239d2da0a6c0 100644 --- a/include/asm-sparc/elf.h +++ b/include/asm-sparc/elf.h @@ -56,7 +56,7 @@ typedef struct { } elf_fpregset_t; #define ELF_CORE_COPY_TASK_REGS(__tsk, __elf_regs) \ - ({ ELF_CORE_COPY_REGS((*(__elf_regs)), (__tsk)->thread_info->kregs); 1; }) + ({ ELF_CORE_COPY_REGS((*(__elf_regs)), (__tsk)->thread.kregs); 1; }) /* * This is used to ensure we don't load something for the wrong architecture. diff --git a/include/asm-sparc/hardirq.h b/include/asm-sparc/hardirq.h index 8057289e0f3e..822ec6f1062d 100644 --- a/include/asm-sparc/hardirq.h +++ b/include/asm-sparc/hardirq.h @@ -11,6 +11,7 @@ #include <linux/threads.h> #include <linux/brlock.h> #include <linux/spinlock.h> +#include <linux/cache.h> /* entry.S is sensitive to the offsets of these fields */ /* XXX P3 Is it? */ typedef struct { diff --git a/include/asm-sparc/io.h b/include/asm-sparc/io.h index 848111d7980b..f3fdacf95ba5 100644 --- a/include/asm-sparc/io.h +++ b/include/asm-sparc/io.h @@ -187,9 +187,6 @@ extern unsigned long sbus_ioremap(struct resource *res, unsigned long offset, extern void sbus_iounmap(unsigned long vaddr, unsigned long size); -#define virt_to_phys(x) __pa((unsigned long)(x)) -#define phys_to_virt(x) __va((unsigned long)(x)) - /* * At the moment, we do not use CMOS_READ anywhere outside of rtc.c, * so rtc_port is static in it. This should not change unless a new diff --git a/include/asm-sparc/irq.h b/include/asm-sparc/irq.h index d3f935afaf87..fb99a8c81f81 100644 --- a/include/asm-sparc/irq.h +++ b/include/asm-sparc/irq.h @@ -19,7 +19,7 @@ BTFIXUPDEF_CALL(char *, __irq_itoa, unsigned int) #define __irq_itoa(irq) BTFIXUP_CALL(__irq_itoa)(irq) -#define NR_IRQS 15 +#define NR_IRQS 16 #define irq_cannonicalize(irq) (irq) diff --git a/include/asm-sparc/page.h b/include/asm-sparc/page.h index a08100e59c69..7e521e0c31f4 100644 --- a/include/asm-sparc/page.h +++ b/include/asm-sparc/page.h @@ -174,6 +174,9 @@ extern __inline__ int get_order(unsigned long size) #define __pa(x) ((unsigned long)(x) - PAGE_OFFSET) #define __va(x) ((void *)((unsigned long) (x) + PAGE_OFFSET)) +#define virt_to_phys(x) __pa((unsigned long)(x)) +#define phys_to_virt(x) __va((unsigned long)(x)) + #define pfn_to_page(pfn) (mem_map + (pfn)) #define page_to_pfn(page) ((unsigned long)((page) - mem_map)) #define virt_to_page(kaddr) (mem_map + (__pa(kaddr) >> PAGE_SHIFT)) diff --git a/include/asm-sparc64/irq.h b/include/asm-sparc64/irq.h index 397744bb33d7..5fbe174012cc 100644 --- a/include/asm-sparc64/irq.h +++ b/include/asm-sparc64/irq.h @@ -110,7 +110,7 @@ static __inline__ char *__irq_itoa(unsigned int irq) return buff; } -#define NR_IRQS 15 +#define NR_IRQS 16 #define irq_cannonicalize(irq) (irq) extern void disable_irq(unsigned int); diff --git a/include/asm-sparc64/rwsem.h b/include/asm-sparc64/rwsem.h index a559e183a1dd..fb100f981554 100644 --- a/include/asm-sparc64/rwsem.h +++ b/include/asm-sparc64/rwsem.h @@ -279,7 +279,7 @@ static __inline__ int rwsem_atomic_update(int delta, struct rw_semaphore *sem) "mov %%g7, %0\n\t" : "=&r" (tmp) : "0" (tmp), "r" (sem) - : "g5", "g7", "memory"); + : "g5", "g7", "memory", "cc"); return tmp + delta; } diff --git a/include/asm-sparc64/system.h b/include/asm-sparc64/system.h index 9f7710f5a589..98c738d70a06 100644 --- a/include/asm-sparc64/system.h +++ b/include/asm-sparc64/system.h @@ -164,6 +164,11 @@ do { spin_unlock_irq(&(prev)->switch_lock); \ * not preserve it's value. Hairy, but it lets us remove 2 loads * and 2 stores in this critical code path. -DaveM */ +#if __GNUC__ >= 3 +#define EXTRA_CLOBBER ,"%l1" +#else +#define EXTRA_CLOBBER +#endif #define switch_to(prev, next, last) \ do { if (test_thread_flag(TIF_PERFCTR)) { \ unsigned long __tmp; \ @@ -209,10 +214,11 @@ do { if (test_thread_flag(TIF_PERFCTR)) { \ : "0" (next->thread_info), \ "i" (TI_WSTATE), "i" (TI_KSP), "i" (TI_FLAGS), "i" (TI_CWP), \ "i" (_TIF_NEWCHILD), "i" (TI_TASK) \ - : "cc", "g1", "g2", "g3", "g5", "g7", \ - "l2", "l3", "l4", "l5", "l6", "l7", \ + : "cc", \ + "g1", "g2", "g3", "g5", "g7", \ + "l2", "l3", "l4", "l5", "l6", "l7", \ "i0", "i1", "i2", "i3", "i4", "i5", \ - "o0", "o1", "o2", "o3", "o4", "o5", "o7"); \ + "o0", "o1", "o2", "o3", "o4", "o5", "o7" EXTRA_CLOBBER);\ /* If you fuck with this, update ret_from_syscall code too. */ \ if (test_thread_flag(TIF_PERFCTR)) { \ write_pcr(current_thread_info()->pcr_reg); \ |
