--- ac_clean/arch/um/config.in Sun Apr 22 12:59:17 2001 +++ ac/arch/um/config.in Sun Apr 22 14:41:04 2001 @@ -7,6 +7,8 @@ define_bool CONFIG_UID16 y +define_bool CONFIG_RWSEM_XCHGADD_ALGORITHM y + mainmenu_option next_comment comment 'Code maturity level options' bool 'Prompt for development and/or incomplete code/drivers' CONFIG_EXPERIMENTAL --- ac_clean/arch/um/sys-i386/ksyms.c Sun Apr 22 12:59:17 2001 +++ ac/arch/um/sys-i386/ksyms.c Sun Apr 22 14:42:12 2001 @@ -11,7 +11,6 @@ EXPORT_SYMBOL(__down_failed_interruptible); EXPORT_SYMBOL(__down_failed_trylock); EXPORT_SYMBOL(__up_wakeup); -EXPORT_SYMBOL(__rwsem_wake); /* Networking helper routines. */ EXPORT_SYMBOL(csum_partial_copy_generic); --- ac_clean/arch/um/sys-i386/Makefile Sun Apr 22 12:59:17 2001 +++ ac/arch/um/sys-i386/Makefile Sun Apr 22 14:42:53 2001 @@ -1,7 +1,6 @@ OBJ = sys.o -OBJS = checksum.o ldt.o old-checksum.o ptrace.o rwsem.o semaphore.o \ - sigcontext.o +OBJS = checksum.o ldt.o old-checksum.o ptrace.o semaphore.o sigcontext.o OX_OBJS = ksyms.o USER_CFLAGS = $(patsubst -I%,,$(CFLAGS)) @@ -9,7 +8,7 @@ CFLAGS += -I../include -SYMLINKS = semaphore.c old-checksum.c checksum.S rwsem.S +SYMLINKS = semaphore.c old-checksum.c checksum.S all: $(OBJ) @@ -23,7 +22,7 @@ ldt.o: ldt.c $(CC) -D__KERNEL__ $(USER_CFLAGS) $(EXTRA_CFLAGS) -c -o $@ $< -checksum.S old-checksum.c rwsem.S: +checksum.S old-checksum.c: -rm -f $@ -ln -s $(TOPDIR)/arch/i386/lib/$@ $@ --- ac_clean/include/asm-um/rwsem.h Sun Apr 22 14:17:01 2001 +++ ac/include/asm-um/rwsem.h Sun Apr 22 15:01:25 2001 @@ -1,6 +1,10 @@ #ifndef __UM_RWSEM_H__ #define __UM_RWSEM_H__ +#if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 96) +#define __builtin_expect(exp,c) (exp) +#endif + #include "asm/arch/rwsem.h" #endif