diff options
author | Ralf Baechle <ralf@linux-mips.org> | 2000-11-23 02:00:47 +0000 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 2000-11-23 02:00:47 +0000 |
commit | 06615f62b17d7de6e12d2f5ec6b88cf30af08413 (patch) | |
tree | 8766f208847d4876a6db619aebbf54d53b76eb44 /arch/mips64 | |
parent | fa9bdb574f4febb751848a685d9a9017e04e1d53 (diff) |
Merge with Linux 2.4.0-test10.
Diffstat (limited to 'arch/mips64')
-rw-r--r-- | arch/mips64/defconfig | 1 | ||||
-rw-r--r-- | arch/mips64/defconfig-ip27 | 1 | ||||
-rw-r--r-- | arch/mips64/kernel/ptrace.c | 29 | ||||
-rw-r--r-- | arch/mips64/kernel/smp.c | 4 | ||||
-rw-r--r-- | arch/mips64/mm/init.c | 2 | ||||
-rw-r--r-- | arch/mips64/sgi-ip22/ip22-timer.c | 4 | ||||
-rw-r--r-- | arch/mips64/sgi-ip27/ip27-console.c | 18 | ||||
-rw-r--r-- | arch/mips64/sgi-ip27/ip27-memory.c | 8 | ||||
-rw-r--r-- | arch/mips64/sgi-ip27/ip27-rtc.c | 4 | ||||
-rw-r--r-- | arch/mips64/sgi-ip27/ip27-timer.c | 2 |
10 files changed, 45 insertions, 28 deletions
diff --git a/arch/mips64/defconfig b/arch/mips64/defconfig index 51d2d3c06..8c86e86f3 100644 --- a/arch/mips64/defconfig +++ b/arch/mips64/defconfig @@ -234,6 +234,7 @@ CONFIG_SGI_IOC3_ETH=y # CONFIG_NET_VENDOR_SMC is not set # CONFIG_NET_VENDOR_RACAL is not set # CONFIG_DEPCA is not set +# CONFIG_HP100 is not set # CONFIG_NET_ISA is not set # CONFIG_NET_PCI is not set # CONFIG_NET_POCKET is not set diff --git a/arch/mips64/defconfig-ip27 b/arch/mips64/defconfig-ip27 index 51d2d3c06..8c86e86f3 100644 --- a/arch/mips64/defconfig-ip27 +++ b/arch/mips64/defconfig-ip27 @@ -234,6 +234,7 @@ CONFIG_SGI_IOC3_ETH=y # CONFIG_NET_VENDOR_SMC is not set # CONFIG_NET_VENDOR_RACAL is not set # CONFIG_DEPCA is not set +# CONFIG_HP100 is not set # CONFIG_NET_ISA is not set # CONFIG_NET_PCI is not set # CONFIG_NET_POCKET is not set diff --git a/arch/mips64/kernel/ptrace.c b/arch/mips64/kernel/ptrace.c index 579fc8855..86e17a009 100644 --- a/arch/mips64/kernel/ptrace.c +++ b/arch/mips64/kernel/ptrace.c @@ -5,7 +5,7 @@ * * Copyright (C) 1992 Ross Biro * Copyright (C) Linus Torvalds - * Copyright (C) 1994, 1995, 1996, 1997, 1998 Ralf Baechle + * Copyright (C) 1994, 95, 96, 97, 98, 2000 Ralf Baechle * Copyright (C) 1996 David S. Miller * Copyright (C) 2000 Ulf Carlsson * @@ -268,7 +268,7 @@ asmlinkage int sys32_ptrace(int request, int pid, int addr, int data) ret = -EIO; if ((unsigned long) data > _NSIG) break; - child->ptrace &= ~(PT_PTRACED|PT_TRACESYS); + child->ptrace = 0; child->exit_code = data; write_lock_irq(&tasklist_lock); REMOVE_LINKS(child); @@ -280,6 +280,15 @@ asmlinkage int sys32_ptrace(int request, int pid, int addr, int data) break; } + case PTRACE_SETOPTIONS: { + if (data & PTRACE_O_TRACESYSGOOD) + child->ptrace |= PT_TRACESYSGOOD; + else + child->ptrace &= ~PT_TRACESYSGOOD; + ret = 0; + break; + } + default: ret = -EIO; break; @@ -534,7 +543,7 @@ asmlinkage int sys_ptrace(long request, long pid, long addr, long data) ret = -EIO; if ((unsigned long) data > _NSIG) break; - child->ptrace &= ~(PT_PTRACED|PT_TRACESYS); + child->ptrace = 0; child->exit_code = data; write_lock_irq(&tasklist_lock); REMOVE_LINKS(child); @@ -546,6 +555,15 @@ asmlinkage int sys_ptrace(long request, long pid, long addr, long data) break; } + case PTRACE_SETOPTIONS: { + if (data & PTRACE_O_TRACESYSGOOD) + child->ptrace |= PT_TRACESYSGOOD; + else + child->ptrace &= ~PT_TRACESYSGOOD; + ret = 0; + break; + } + default: ret = -EIO; break; @@ -564,7 +582,10 @@ asmlinkage void syscall_trace(void) != (PT_PTRACED|PT_TRACESYS)) return; - current->exit_code = SIGTRAP; + /* The 0x80 provides a way for the tracing parent to distinguish + between a syscall stop and SIGTRAP delivery */ + current->exit_code = SIGTRAP | ((current->ptrace & PT_TRACESYSGOOD) + ? 0x80 : 0); current->state = TASK_STOPPED; notify_parent(current, SIGCHLD); schedule(); diff --git a/arch/mips64/kernel/smp.c b/arch/mips64/kernel/smp.c index b004f6777..655d2add2 100644 --- a/arch/mips64/kernel/smp.c +++ b/arch/mips64/kernel/smp.c @@ -54,7 +54,7 @@ static void sendintr(int destid, unsigned char status) /* The 'big kernel lock' */ spinlock_t kernel_flag = SPIN_LOCK_UNLOCKED; -int smp_threads_ready = 0; /* Not used */ +int smp_threads_ready; /* Not used */ atomic_t smp_commenced = ATOMIC_INIT(0); struct cpuinfo_mips cpu_data[NR_CPUS]; int smp_num_cpus; /* Number that came online. */ @@ -130,7 +130,7 @@ static volatile struct call_data_struct { atomic_t started; atomic_t finished; int wait; -} *call_data = NULL; +} *call_data; int smp_call_function (void (*func) (void *info), void *info, int retry, int wait) diff --git a/arch/mips64/mm/init.c b/arch/mips64/mm/init.c index f1d95c702..a594c69a0 100644 --- a/arch/mips64/mm/init.c +++ b/arch/mips64/mm/init.c @@ -38,7 +38,7 @@ #endif #include <asm/mmu_context.h> -unsigned long totalram_pages = 0; +unsigned long totalram_pages; void __bad_pte_kernel(pmd_t *pmd) { diff --git a/arch/mips64/sgi-ip22/ip22-timer.c b/arch/mips64/sgi-ip22/ip22-timer.c index 76ed0c214..e98ec596e 100644 --- a/arch/mips64/sgi-ip22/ip22-timer.c +++ b/arch/mips64/sgi-ip22/ip22-timer.c @@ -79,8 +79,8 @@ static int set_rtc_mmss(unsigned long nowtime) return retval; } -static long last_rtc_update = 0; -unsigned long missed_heart_beats = 0; +static long last_rtc_update; +unsigned long missed_heart_beats; void indy_timer_interrupt(struct pt_regs *regs) { diff --git a/arch/mips64/sgi-ip27/ip27-console.c b/arch/mips64/sgi-ip27/ip27-console.c index e45a078b5..fa3ffb1cb 100644 --- a/arch/mips64/sgi-ip27/ip27-console.c +++ b/arch/mips64/sgi-ip27/ip27-console.c @@ -28,7 +28,7 @@ void prom_putchar(char c) char __init prom_getchar(void) { - return(0); + return 0; } static void @@ -44,17 +44,11 @@ ip27prom_console_dev(struct console *c) } static struct console ip27_prom_console = { - "prom", - ip27prom_console_write, - NULL, - ip27prom_console_dev, - NULL, - NULL, - NULL, - CON_PRINTBUFFER, - -1, - 0, - NULL + name: "prom", + write: ip27prom_console_write, + device: ip27prom_console_dev, + flags: CON_PRINTBUFFER, + index: -1, }; __init void ip27_setup_console(void) diff --git a/arch/mips64/sgi-ip27/ip27-memory.c b/arch/mips64/sgi-ip27/ip27-memory.c index f858d098f..0e469ce4b 100644 --- a/arch/mips64/sgi-ip27/ip27-memory.c +++ b/arch/mips64/sgi-ip27/ip27-memory.c @@ -200,11 +200,11 @@ void __init prom_meminit(void) << PAGE_SHIFT)); NODE_DATA(node)->bdata = plat_node_bdata + node; slot_freepfn += node_datasz; - bootmap_size = init_bootmem_node(node, slot_freepfn, + bootmap_size = init_bootmem_node(NODE_DATA(node), slot_freepfn, slot_firstpfn, slot_lastpfn); - free_bootmem_node(node, slot_firstpfn << PAGE_SHIFT, + free_bootmem_node(NODE_DATA(node), slot_firstpfn << PAGE_SHIFT, (slot_lastpfn - slot_firstpfn) << PAGE_SHIFT); - reserve_bootmem_node(node, slot_firstpfn << PAGE_SHIFT, + reserve_bootmem_node(NODE_DATA(node), slot_firstpfn << PAGE_SHIFT, ((slot_freepfn - slot_firstpfn) << PAGE_SHIFT) + bootmap_size); } printk("Total memory probed : 0x%lx pages\n", numpages); @@ -278,7 +278,7 @@ void __init mem_init(void) /* * This will free up the bootmem, ie, slot 0 memory. */ - totalram_pages += free_all_bootmem_node(nid); + totalram_pages += free_all_bootmem_node(NODE_DATA(nid)); /* * We need to manually do the other slots. diff --git a/arch/mips64/sgi-ip27/ip27-rtc.c b/arch/mips64/sgi-ip27/ip27-rtc.c index bb5209d64..b29af3d73 100644 --- a/arch/mips64/sgi-ip27/ip27-rtc.c +++ b/arch/mips64/sgi-ip27/ip27-rtc.c @@ -60,8 +60,8 @@ static void get_rtc_time(struct rtc_time *rtc_tm); #define RTC_IS_OPEN 0x01 /* means /dev/rtc is in use */ #define RTC_TIMER_ON 0x02 /* missed irq timer active */ -static unsigned char rtc_status = 0; /* bitmapped status byte. */ -static unsigned long rtc_freq = 0; /* Current periodic IRQ rate */ +static unsigned char rtc_status; /* bitmapped status byte. */ +static unsigned long rtc_freq; /* Current periodic IRQ rate */ static struct m48t35_rtc *rtc; /* diff --git a/arch/mips64/sgi-ip27/ip27-timer.c b/arch/mips64/sgi-ip27/ip27-timer.c index 8cbb943c8..edbeb9e11 100644 --- a/arch/mips64/sgi-ip27/ip27-timer.c +++ b/arch/mips64/sgi-ip27/ip27-timer.c @@ -37,7 +37,7 @@ #define CYCLES_PER_JIFFY (CYCLES_PER_SEC/HZ) static unsigned long ct_cur[NR_CPUS]; /* What counter should be at next timer irq */ -static long last_rtc_update = 0; /* Last time the rtc clock got updated */ +static long last_rtc_update; /* Last time the rtc clock got updated */ extern rwlock_t xtime_lock; extern volatile unsigned long wall_jiffies; |