Commit e47bbccf authored by David Mosberger's avatar David Mosberger

ia64: Couple of minor NEW_LOCK spinlock fixes. Put RAID5 xor routines only into

	kernel if CONFIG_MD_RAID5 is declared.
parent 6ee903e0
......@@ -753,7 +753,7 @@ SET_REG(b5);
* r29 - available for use.
* r30 - available for use.
* r31 - address of lock, available for use.
* b7 - return address
* b6 - return address
* p14 - available for use.
*
* If you patch this code to use more registers, do not forget to update
......
......@@ -134,6 +134,18 @@ EXPORT_SYMBOL_NOVERS(xor_ia64_3);
EXPORT_SYMBOL_NOVERS(xor_ia64_4);
EXPORT_SYMBOL_NOVERS(xor_ia64_5);
#ifdef CONFIG_MD_RAID5
extern void xor_ia64_2(void);
extern void xor_ia64_3(void);
extern void xor_ia64_4(void);
extern void xor_ia64_5(void);
EXPORT_SYMBOL_NOVERS(xor_ia64_2);
EXPORT_SYMBOL_NOVERS(xor_ia64_3);
EXPORT_SYMBOL_NOVERS(xor_ia64_4);
EXPORT_SYMBOL_NOVERS(xor_ia64_5);
#endif
extern unsigned long ia64_iobase;
EXPORT_SYMBOL(ia64_iobase);
......
......@@ -9,11 +9,12 @@ obj-y := __divsi3.o __udivsi3.o __modsi3.o __umodsi3.o \
checksum.o clear_page.o csum_partial_copy.o copy_page.o \
clear_user.o strncpy_from_user.o strlen_user.o strnlen_user.o \
flush.o io.o ip_fast_csum.o do_csum.o \
memset.o strlen.o swiotlb.o xor.o
memset.o strlen.o swiotlb.o
obj-$(CONFIG_ITANIUM) += copy_page.o copy_user.o memcpy.o
obj-$(CONFIG_MCKINLEY) += copy_page_mck.o memcpy_mck.o
obj-$(CONFIG_PERFMON) += carta_random.o
obj-$(CONFIG_MD_RAID5) += xor.o
IGNORE_FLAGS_OBJS = __divsi3.o __udivsi3.o __modsi3.o __umodsi3.o \
__divdi3.o __udivdi3.o __moddi3.o __umoddi3.o
......
......@@ -17,7 +17,6 @@
#include <asm/ptrace.h>
#include <asm/kregs.h>
#include <asm/types.h>
#define IA64_NUM_DBG_REGS 8
/*
......@@ -87,6 +86,7 @@
#include <linux/cache.h>
#include <linux/compiler.h>
#include <linux/threads.h>
#include <linux/types.h>
#include <asm/fpu.h>
#include <asm/offsets.h>
......@@ -369,7 +369,7 @@ struct task_struct;
* do_basic_setup() and the timing is such that free_initmem() has
* been called already.
*/
extern int kernel_thread (int (*fn)(void *), void *arg, unsigned long flags);
extern pid_t kernel_thread (int (*fn)(void *), void *arg, unsigned long flags);
/* Get wait channel for task P. */
extern unsigned long get_wchan (struct task_struct *p);
......
......@@ -32,7 +32,7 @@ typedef struct {
* carefully coded to touch only those registers that spin_lock() marks "clobbered".
*/
#define IA64_SPINLOCK_CLOBBERS "ar.pfs", "p14", "r28", "r29", "r30", "b6", "memory"
#define IA64_SPINLOCK_CLOBBERS "ar.ccv", "ar.pfs", "p14", "r28", "r29", "r30", "b6", "memory"
static inline void
_raw_spin_lock (spinlock_t *lock)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment