--- linux-2.6.16/include/asm-ia64/processor.h 2006-03-25 13:24:33.000000000 -0500 +++ linux-2.6.16.gentoo/include/asm-ia64/processor.h 2006-03-25 13:29:27.000000000 -0500 @@ -83,6 +83,7 @@ #ifdef CONFIG_NUMA #include #endif +#include /* like above but expressed as bitfields for more efficient access: */ struct ia64_psr { --- linux-2.6.16/include/asm-ia64/ptrace.h 2006-03-25 13:24:33.000000000 -0500 +++ linux-2.6.16.gentoo/include/asm-ia64/ptrace.h 2006-03-25 13:38:29.000000000 -0500 @@ -300,6 +300,7 @@ #endif /* !__KERNEL__ */ /* pt_all_user_regs is used for PTRACE_GETREGS PTRACE_SETREGS */ +#ifndef _SYS_PTRACE_H struct pt_all_user_regs { unsigned long nat; unsigned long cr_iip; @@ -312,6 +313,7 @@ unsigned long ar[128]; struct ia64_fpreg fr[128]; }; +#endif #endif /* !__ASSEMBLY__ */ --- linux-2.6.16/include/asm-ia64/spinlock.h 2006-03-25 13:24:33.000000000 -0500 +++ linux-2.6.16.gentoo/include/asm-ia64/spinlock.h 2006-03-25 13:27:31.000000000 -0500 @@ -167,7 +167,7 @@ static __inline__ void __raw_write_unlock(raw_rwlock_t *x) { - u8 *y = (u8 *)x; + __u8 *y = (__u8 *)x; barrier(); asm volatile ("st1.rel.nta [%0] = r0\n\t" :: "r"(y+3) : "memory" ); } @@ -210,7 +210,7 @@ old.lock = new.lock = *x; old.lock.write_lock = new.lock.write_lock = 0; ++new.lock.read_counter; - return (u32)ia64_cmpxchg4_acq((__u32 *)(x), new.word, old.word) == old.word; + return (__u32)ia64_cmpxchg4_acq((__u32 *)(x), new.word, old.word) == old.word; } #endif /* _ASM_IA64_SPINLOCK_H */