From: Andy P. <at...@us...> - 2002-04-10 19:00:26
|
Update of /cvsroot/linux-vax/kernel-2.4/arch/mips64/lib In directory usw-pr-cvs1:/tmp/cvs-serv18937/mips64/lib Modified Files: csum_partial.S csum_partial_copy.c dump_tlb.c floppy-no.c ide-no.c ide-std.c kbd-no.c kbd-std.c memcpy.S memset.S rtc-no.c rtc-std.c strlen_user.S strncpy_user.S strnlen_user.S watch.S Log Message: synch 2.4.15 commit 38 Index: csum_partial.S =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.4/arch/mips64/lib/csum_partial.S,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -r1.1.1.1 -r1.2 --- csum_partial.S 14 Jan 2001 19:54:10 -0000 1.1.1.1 +++ csum_partial.S 10 Apr 2002 14:43:20 -0000 1.2 @@ -1,5 +1,4 @@ -/* $Id$ - * +/* * This file is subject to the terms and conditions of the GNU General Public * License. See the file "COPYING" in the main directory of this archive * for more details. Index: csum_partial_copy.c =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.4/arch/mips64/lib/csum_partial_copy.c,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -r1.1.1.1 -r1.2 --- csum_partial_copy.c 14 Jan 2001 19:54:10 -0000 1.1.1.1 +++ csum_partial_copy.c 10 Apr 2002 14:43:20 -0000 1.2 @@ -1,5 +1,4 @@ -/* $Id$ - * +/* * This file is subject to the terms and conditions of the GNU General Public * License. See the file "COPYING" in the main directory of this archive * for more details. Index: dump_tlb.c =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.4/arch/mips64/lib/dump_tlb.c,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -r1.1.1.1 -r1.2 --- dump_tlb.c 14 Jan 2001 19:54:11 -0000 1.1.1.1 +++ dump_tlb.c 10 Apr 2002 14:43:20 -0000 1.2 @@ -168,14 +168,12 @@ printk("\n"); } -void -dump_list_current(void *address) +void dump_list_current(void *address) { dump_list_process(current, address); } -unsigned int -vtop(void *address) +unsigned int vtop(void *address) { pgd_t *pgd; pmd_t *pmd; @@ -192,16 +190,17 @@ return paddr; } -void -dump16(unsigned long *p) +void dump16(unsigned long *p) { int i; for(i=0;i<8;i++) { printk("*%08lx == %08lx, ", - (unsigned long)p, (unsigned long)*p++); + (unsigned long)p, (unsigned long)*p); + p++; printk("*%08lx == %08lx\n", - (unsigned long)p, (unsigned long)*p++); + (unsigned long)p, (unsigned long)*p); + p++; } } Index: floppy-no.c =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.4/arch/mips64/lib/floppy-no.c,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -r1.1.1.1 -r1.2 --- floppy-no.c 14 Jan 2001 19:54:11 -0000 1.1.1.1 +++ floppy-no.c 10 Apr 2002 14:43:20 -0000 1.2 @@ -1,5 +1,4 @@ -/* $Id$ - * +/* * This file is subject to the terms and conditions of the GNU General Public * License. See the file "COPYING" in the main directory of this archive * for more details. Index: ide-no.c =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.4/arch/mips64/lib/ide-no.c,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -r1.1.1.1 -r1.2 --- ide-no.c 14 Jan 2001 19:54:12 -0000 1.1.1.1 +++ ide-no.c 10 Apr 2002 14:43:20 -0000 1.2 @@ -1,5 +1,4 @@ -/* $Id$ - * +/* * This file is subject to the terms and conditions of the GNU General Public * License. See the file "COPYING" in the main directory of this archive * for more details. Index: ide-std.c =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.4/arch/mips64/lib/ide-std.c,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -r1.1.1.1 -r1.2 --- ide-std.c 14 Jan 2001 19:54:12 -0000 1.1.1.1 +++ ide-std.c 10 Apr 2002 14:43:20 -0000 1.2 @@ -1,12 +1,11 @@ -/* $Id$ - * +/* * This file is subject to the terms and conditions of the GNU General Public * License. See the file "COPYING" in the main directory of this archive * for more details. * * IDE routines for typical pc-like standard configurations. * - * Copyright (C) 1998, 1999 by Ralf Baechle + * Copyright (C) 1998, 1999, 2001 by Ralf Baechle */ #include <linux/sched.h> #include <linux/ide.h> @@ -60,6 +59,7 @@ } if (irq != NULL) *irq = 0; + hw->io_ports[IDE_IRQ_OFFSET] = 0; } static int std_ide_request_irq(unsigned int irq, Index: kbd-no.c =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.4/arch/mips64/lib/kbd-no.c,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -r1.1.1.1 -r1.2 --- kbd-no.c 14 Jan 2001 19:54:13 -0000 1.1.1.1 +++ kbd-no.c 10 Apr 2002 14:43:20 -0000 1.2 @@ -1,5 +1,4 @@ -/* $Id$ - * +/* * This file is subject to the terms and conditions of the GNU General Public * License. See the file "COPYING" in the main directory of this archive * for more details. Index: kbd-std.c =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.4/arch/mips64/lib/kbd-std.c,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -r1.1.1.1 -r1.2 --- kbd-std.c 14 Jan 2001 19:54:13 -0000 1.1.1.1 +++ kbd-std.c 10 Apr 2002 14:43:20 -0000 1.2 @@ -1,5 +1,4 @@ -/* $Id$ - * +/* * This file is subject to the terms and conditions of the GNU General Public * License. See the file "COPYING" in the main directory of this archive * for more details. Index: memcpy.S =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.4/arch/mips64/lib/memcpy.S,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -r1.1.1.1 -r1.2 --- memcpy.S 14 Jan 2001 19:54:15 -0000 1.1.1.1 +++ memcpy.S 10 Apr 2002 14:43:20 -0000 1.2 @@ -5,7 +5,7 @@ * * Unified implementation of memcpy, memmove and the __copy_user backend. * - * Copyright (C) 1998, 1999, 2000 Ralf Baechle + * Copyright (C) 1998, 1999, 2000, 2001 Ralf Baechle * Copyright (C) 1999, 2000 Silicon Graphics, Inc. * * For __rmemcpy and memmove an exception is always a kernel bug, therefore @@ -238,8 +238,8 @@ andi ta2, a2, 0x40 move_128bytes: - pref 0, 2*128(a0) - pref 1, 2*128(a1) + PREF (0, 2*128(a0)) + PREF (1, 2*128(a1)) MOVE_BIGGERCHUNK(a1, a0, 0x00, ta0, ta1, ta3, t0) MOVE_BIGGERCHUNK(a1, a0, 0x40, ta0, ta1, ta3, t0) dsubu t8, t8, 0x01 @@ -452,16 +452,21 @@ .align 5 LEAF(memmove) - sltu ta0, a0, a1 # dst < src -> memcpy - bnez ta0, memcpy - daddu v0, a0, a2 - sltu ta0, v0, a1 # dst + len < src -> non- - bnez ta0, __memcpy # overlapping, can use memcpy + daddu t0, a0, a2 + sltu t0, a1, t0 # dst + len <= src -> memcpy + daddu t1, a1, a2 + sltu t1, a0, t1 # dst >= src + len -> memcpy + and t0, t1 + beqz t0, __memcpy + move v0, a0 /* return value */ beqz a2, r_out END(memmove) LEAF(__rmemcpy) /* a0=dst a1=src a2=len */ + sltu t0, a1, a0 + beqz t0, r_end_bytes_up # src >= dst + nop daddu a0, a2 # dst = dst + len daddu a1, a2 # src = src + len @@ -613,6 +618,17 @@ dsubu a0, a0, 0x1 r_out: + jr ra + move a2, zero + +r_end_bytes_up: + lb t0, (a1) + dsubu a2, a2, 0x1 + sb t0, (a0) + daddu a1, a1, 0x1 + bnez a2, r_end_bytes_up + daddu a0, a0, 0x1 + jr ra move a2, zero Index: memset.S =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.4/arch/mips64/lib/memset.S,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -r1.1.1.1 -r1.2 --- memset.S 14 Jan 2001 19:54:15 -0000 1.1.1.1 +++ memset.S 10 Apr 2002 14:43:20 -0000 1.2 @@ -52,6 +52,7 @@ 1: FEXPORT(__bzero) + .type __bzero, @function sltiu t0, a2, 8 /* very small region? */ bnez t0, small_memset andi t0, a0, 7 /* aligned? */ Index: rtc-no.c =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.4/arch/mips64/lib/rtc-no.c,v retrieving revision 1.1.1.2 retrieving revision 1.2 diff -u -r1.1.1.2 -r1.2 --- rtc-no.c 25 Feb 2001 23:15:22 -0000 1.1.1.2 +++ rtc-no.c 10 Apr 2002 14:43:20 -0000 1.2 @@ -9,7 +9,6 @@ * Copyright (C) 1998, 2001 by Ralf Baechle */ #include <linux/kernel.h> -#include <linux/spinlock.h> #include <linux/mc146818rtc.h> static unsigned char no_rtc_read_data(unsigned long addr) Index: rtc-std.c =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.4/arch/mips64/lib/rtc-std.c,v retrieving revision 1.1.1.2 retrieving revision 1.2 diff -u -r1.1.1.2 -r1.2 --- rtc-std.c 25 Feb 2001 23:15:22 -0000 1.1.1.2 +++ rtc-std.c 10 Apr 2002 14:43:20 -0000 1.2 @@ -7,7 +7,6 @@ * * Copyright (C) 1998 by Ralf Baechle */ -#include <linux/spinlock.h> #include <linux/mc146818rtc.h> #include <asm/io.h> Index: strlen_user.S =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.4/arch/mips64/lib/strlen_user.S,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -r1.1.1.1 -r1.2 --- strlen_user.S 14 Jan 2001 19:54:16 -0000 1.1.1.1 +++ strlen_user.S 10 Apr 2002 14:43:20 -0000 1.2 @@ -1,5 +1,4 @@ -/* $Id$ - * +/* * This file is subject to the terms and conditions of the GNU General Public * License. See the file "COPYING" in the main directory of this archive * for more details. Index: strncpy_user.S =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.4/arch/mips64/lib/strncpy_user.S,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -r1.1.1.1 -r1.2 --- strncpy_user.S 14 Jan 2001 19:54:16 -0000 1.1.1.1 +++ strncpy_user.S 10 Apr 2002 14:43:20 -0000 1.2 @@ -1,5 +1,4 @@ -/* $Id$ - * +/* * This file is subject to the terms and conditions of the GNU General Public * License. See the file "COPYING" in the main directory of this archive * for more details. Index: strnlen_user.S =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.4/arch/mips64/lib/strnlen_user.S,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -r1.1.1.1 -r1.2 --- strnlen_user.S 14 Jan 2001 19:54:16 -0000 1.1.1.1 +++ strnlen_user.S 10 Apr 2002 14:43:20 -0000 1.2 @@ -1,5 +1,4 @@ -/* $Id$ - * +/* * This file is subject to the terms and conditions of the GNU General Public * License. See the file "COPYING" in the main directory of this archive * for more details. Index: watch.S =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.4/arch/mips64/lib/watch.S,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -r1.1.1.1 -r1.2 --- watch.S 14 Jan 2001 19:54:16 -0000 1.1.1.1 +++ watch.S 10 Apr 2002 14:43:20 -0000 1.2 @@ -1,5 +1,4 @@ -/* $Id$ - * +/* * This file is subject to the terms and conditions of the GNU General Public * License. See the file "COPYING" in the main directory of this archive * for more details. @@ -7,7 +6,7 @@ * Kernel debug stuff to use the Watch registers. * Useful to find stack overflows, dangling pointers etc. * - * Copyright (C) 1995, 1996, 1999 by Ralf Baechle + * Copyright (C) 1995, 1996, 1999, 2001 by Ralf Baechle */ #include <asm/asm.h> #include <asm/mipsregs.h> @@ -15,23 +14,21 @@ .set noreorder /* - * Parameter: a0 - logic address to watch - * Currently only KSEG0 addresses are allowed! + * Parameter: a0 - physical address to watch * a1 - set bit #1 to trap on load references * bit #0 to trap on store references * Results : none */ LEAF(__watch_set) - li t0,0x80000000 - subu a0,t0 - ori a0,7 - xori a0,7 - or a0,a1 - mtc0 a0,CP0_WATCHLO - sw a0,watch_savelo + ori a0, 7 + xori a0, 7 + or a0, a1 + mtc0 a0, CP0_WATCHLO + sd a0, watch_savelo + dsrl32 a0, a0, 0 jr ra - mtc0 zero,CP0_WATCHHI + mtc0 zero, CP0_WATCHHI END(__watch_set) /* @@ -40,7 +37,7 @@ */ LEAF(__watch_clear) jr ra - mtc0 zero,CP0_WATCHLO + mtc0 zero, CP0_WATCHLO END(__watch_clear) /* @@ -48,14 +45,13 @@ * Results : none */ LEAF(__watch_reenable) - lw t0,watch_savelo + ld t0, watch_savelo jr ra - mtc0 t0,CP0_WATCHLO + mtc0 t0, CP0_WATCHLO END(__watch_reenable) /* * Saved value of the c0_watchlo register for watch_reenable() */ - .data -watch_savelo: .word 0 - .text + .local watch_savelo + .comm watch_savelo, 8, 8 |