diff options
Diffstat (limited to 'arch/sparc64')
-rw-r--r-- | arch/sparc64/kernel/kprobes.c | 2 | ||||
-rw-r--r-- | arch/sparc64/kernel/pci.c | 1 | ||||
-rw-r--r-- | arch/sparc64/kernel/process.c | 1 | ||||
-rw-r--r-- | arch/sparc64/kernel/signal.c | 1 | ||||
-rw-r--r-- | arch/sparc64/kernel/signal32.c | 1 | ||||
-rw-r--r-- | arch/sparc64/kernel/smp.c | 1 | ||||
-rw-r--r-- | arch/sparc64/kernel/stacktrace.c | 20 | ||||
-rw-r--r-- | arch/sparc64/kernel/sunos_ioctl32.c | 1 | ||||
-rw-r--r-- | arch/sparc64/kernel/sys_sparc.c | 1 | ||||
-rw-r--r-- | arch/sparc64/kernel/sys_sparc32.c | 14 | ||||
-rw-r--r-- | arch/sparc64/kernel/traps.c | 16 | ||||
-rw-r--r-- | arch/sparc64/kernel/unaligned.c | 1 | ||||
-rw-r--r-- | arch/sparc64/mm/fault.c | 3 | ||||
-rw-r--r-- | arch/sparc64/mm/hugetlbpage.c | 1 | ||||
-rw-r--r-- | arch/sparc64/solaris/ipc.c | 1 | ||||
-rw-r--r-- | arch/sparc64/solaris/misc.c | 1 | ||||
-rw-r--r-- | arch/sparc64/solaris/signal.c | 1 | ||||
-rw-r--r-- | arch/sparc64/solaris/socket.c | 1 | ||||
-rw-r--r-- | arch/sparc64/solaris/socksys.c | 1 |
19 files changed, 22 insertions, 47 deletions
diff --git a/arch/sparc64/kernel/kprobes.c b/arch/sparc64/kernel/kprobes.c index ae221f0d4a6..a44fe47a3c2 100644 --- a/arch/sparc64/kernel/kprobes.c +++ b/arch/sparc64/kernel/kprobes.c @@ -6,7 +6,7 @@ #include <linux/kernel.h> #include <linux/kprobes.h> #include <linux/module.h> -#include <asm/kdebug.h> +#include <linux/kdebug.h> #include <asm/signal.h> #include <asm/cacheflush.h> #include <asm/uaccess.h> diff --git a/arch/sparc64/kernel/pci.c b/arch/sparc64/kernel/pci.c index af2c7ff01ee..966861b212b 100644 --- a/arch/sparc64/kernel/pci.c +++ b/arch/sparc64/kernel/pci.c @@ -14,7 +14,6 @@ #include <linux/sched.h> #include <linux/capability.h> #include <linux/errno.h> -#include <linux/smp_lock.h> #include <linux/msi.h> #include <linux/irq.h> #include <linux/init.h> diff --git a/arch/sparc64/kernel/process.c b/arch/sparc64/kernel/process.c index a114151f9fb..8e3c6e43511 100644 --- a/arch/sparc64/kernel/process.c +++ b/arch/sparc64/kernel/process.c @@ -19,7 +19,6 @@ #include <linux/kallsyms.h> #include <linux/mm.h> #include <linux/smp.h> -#include <linux/smp_lock.h> #include <linux/stddef.h> #include <linux/ptrace.h> #include <linux/slab.h> diff --git a/arch/sparc64/kernel/signal.c b/arch/sparc64/kernel/signal.c index 96d56a8410a..203e8730100 100644 --- a/arch/sparc64/kernel/signal.c +++ b/arch/sparc64/kernel/signal.c @@ -20,7 +20,6 @@ #include <linux/unistd.h> #include <linux/mm.h> #include <linux/tty.h> -#include <linux/smp_lock.h> #include <linux/binfmts.h> #include <linux/bitops.h> diff --git a/arch/sparc64/kernel/signal32.c b/arch/sparc64/kernel/signal32.c index c45f21b881d..8c1c121330f 100644 --- a/arch/sparc64/kernel/signal32.c +++ b/arch/sparc64/kernel/signal32.c @@ -17,7 +17,6 @@ #include <linux/unistd.h> #include <linux/mm.h> #include <linux/tty.h> -#include <linux/smp_lock.h> #include <linux/binfmts.h> #include <linux/compat.h> #include <linux/bitops.h> diff --git a/arch/sparc64/kernel/smp.c b/arch/sparc64/kernel/smp.c index 1fac215252e..8087d67a0cf 100644 --- a/arch/sparc64/kernel/smp.c +++ b/arch/sparc64/kernel/smp.c @@ -10,7 +10,6 @@ #include <linux/pagemap.h> #include <linux/threads.h> #include <linux/smp.h> -#include <linux/smp_lock.h> #include <linux/interrupt.h> #include <linux/kernel_stat.h> #include <linux/delay.h> diff --git a/arch/sparc64/kernel/stacktrace.c b/arch/sparc64/kernel/stacktrace.c index c4d15f2762b..47f92a59be1 100644 --- a/arch/sparc64/kernel/stacktrace.c +++ b/arch/sparc64/kernel/stacktrace.c @@ -3,22 +3,16 @@ #include <linux/thread_info.h> #include <asm/ptrace.h> -void save_stack_trace(struct stack_trace *trace, struct task_struct *task) +void save_stack_trace(struct stack_trace *trace) { unsigned long ksp, fp, thread_base; - struct thread_info *tp; + struct thread_info *tp = task_thread_info(current); - if (!task) - task = current; - tp = task_thread_info(task); - if (task == current) { - flushw_all(); - __asm__ __volatile__( - "mov %%fp, %0" - : "=r" (ksp) - ); - } else - ksp = tp->ksp; + flushw_all(); + __asm__ __volatile__( + "mov %%fp, %0" + : "=r" (ksp) + ); fp = ksp + STACK_BIAS; thread_base = (unsigned long) tp; diff --git a/arch/sparc64/kernel/sunos_ioctl32.c b/arch/sparc64/kernel/sunos_ioctl32.c index a05e43d5175..75d2bad4983 100644 --- a/arch/sparc64/kernel/sunos_ioctl32.c +++ b/arch/sparc64/kernel/sunos_ioctl32.c @@ -22,7 +22,6 @@ #include <linux/file.h> #include <linux/mm.h> #include <linux/smp.h> -#include <linux/smp_lock.h> #include <linux/syscalls.h> #include <linux/compat.h> diff --git a/arch/sparc64/kernel/sys_sparc.c b/arch/sparc64/kernel/sys_sparc.c index a53d4abb4b4..d108eeb0734 100644 --- a/arch/sparc64/kernel/sys_sparc.c +++ b/arch/sparc64/kernel/sys_sparc.c @@ -19,7 +19,6 @@ #include <linux/mman.h> #include <linux/utsname.h> #include <linux/smp.h> -#include <linux/smp_lock.h> #include <linux/slab.h> #include <linux/syscalls.h> #include <linux/ipc.h> diff --git a/arch/sparc64/kernel/sys_sparc32.c b/arch/sparc64/kernel/sys_sparc32.c index 7876a022628..692e46a6b8d 100644 --- a/arch/sparc64/kernel/sys_sparc32.c +++ b/arch/sparc64/kernel/sys_sparc32.c @@ -775,15 +775,25 @@ asmlinkage long sys32_settimeofday(struct compat_timeval __user *tv, asmlinkage long sys32_utimes(char __user *filename, struct compat_timeval __user *tvs) { - struct timeval ktvs[2]; + struct timespec tv[2]; if (tvs) { + struct timeval ktvs[2]; if (get_tv32(&ktvs[0], tvs) || get_tv32(&ktvs[1], 1+tvs)) return -EFAULT; + + if (ktvs[0].tv_usec < 0 || ktvs[0].tv_usec >= 1000000 || + ktvs[1].tv_usec < 0 || ktvs[1].tv_usec >= 1000000) + return -EINVAL; + + tv[0].tv_sec = ktvs[0].tv_sec; + tv[0].tv_nsec = 1000 * ktvs[0].tv_usec; + tv[1].tv_sec = ktvs[1].tv_sec; + tv[1].tv_nsec = 1000 * ktvs[1].tv_usec; } - return do_utimes(AT_FDCWD, filename, (tvs ? &ktvs[0] : NULL)); + return do_utimes(AT_FDCWD, filename, tvs ? tv : NULL); } /* These are here just in case some old sparc32 binary calls it. */ diff --git a/arch/sparc64/kernel/traps.c b/arch/sparc64/kernel/traps.c index ad67784292d..dc652f21029 100644 --- a/arch/sparc64/kernel/traps.c +++ b/arch/sparc64/kernel/traps.c @@ -15,9 +15,9 @@ #include <linux/kallsyms.h> #include <linux/signal.h> #include <linux/smp.h> -#include <linux/smp_lock.h> #include <linux/mm.h> #include <linux/init.h> +#include <linux/kdebug.h> #include <asm/delay.h> #include <asm/system.h> @@ -36,26 +36,12 @@ #include <asm/psrcompat.h> #include <asm/processor.h> #include <asm/timer.h> -#include <asm/kdebug.h> #include <asm/head.h> #ifdef CONFIG_KMOD #include <linux/kmod.h> #endif #include <asm/prom.h> -ATOMIC_NOTIFIER_HEAD(sparc64die_chain); - -int register_die_notifier(struct notifier_block *nb) -{ - return atomic_notifier_chain_register(&sparc64die_chain, nb); -} -EXPORT_SYMBOL(register_die_notifier); - -int unregister_die_notifier(struct notifier_block *nb) -{ - return atomic_notifier_chain_unregister(&sparc64die_chain, nb); -} -EXPORT_SYMBOL(unregister_die_notifier); /* When an irrecoverable trap occurs at tl > 0, the trap entry * code logs the trap state registers at every level in the trap diff --git a/arch/sparc64/kernel/unaligned.c b/arch/sparc64/kernel/unaligned.c index bc18d480dd1..953be816fa2 100644 --- a/arch/sparc64/kernel/unaligned.c +++ b/arch/sparc64/kernel/unaligned.c @@ -18,7 +18,6 @@ #include <asm/system.h> #include <asm/uaccess.h> #include <linux/smp.h> -#include <linux/smp_lock.h> #include <linux/bitops.h> #include <linux/kallsyms.h> #include <asm/fpumacro.h> diff --git a/arch/sparc64/mm/fault.c b/arch/sparc64/mm/fault.c index 55ae802dc0a..c32e309f778 100644 --- a/arch/sparc64/mm/fault.c +++ b/arch/sparc64/mm/fault.c @@ -15,11 +15,11 @@ #include <linux/signal.h> #include <linux/mm.h> #include <linux/module.h> -#include <linux/smp_lock.h> #include <linux/init.h> #include <linux/interrupt.h> #include <linux/kprobes.h> #include <linux/kallsyms.h> +#include <linux/kdebug.h> #include <asm/page.h> #include <asm/pgtable.h> @@ -29,7 +29,6 @@ #include <asm/asi.h> #include <asm/lsu.h> #include <asm/sections.h> -#include <asm/kdebug.h> #include <asm/mmu_context.h> #ifdef CONFIG_KPROBES diff --git a/arch/sparc64/mm/hugetlbpage.c b/arch/sparc64/mm/hugetlbpage.c index e224a94e6a1..eaba9b70b18 100644 --- a/arch/sparc64/mm/hugetlbpage.c +++ b/arch/sparc64/mm/hugetlbpage.c @@ -10,7 +10,6 @@ #include <linux/mm.h> #include <linux/hugetlb.h> #include <linux/pagemap.h> -#include <linux/smp_lock.h> #include <linux/slab.h> #include <linux/sysctl.h> diff --git a/arch/sparc64/solaris/ipc.c b/arch/sparc64/solaris/ipc.c index 8cef5fd57b2..a531a2cdb38 100644 --- a/arch/sparc64/solaris/ipc.c +++ b/arch/sparc64/solaris/ipc.c @@ -6,7 +6,6 @@ #include <linux/kernel.h> #include <linux/types.h> -#include <linux/smp_lock.h> #include <linux/wait.h> #include <linux/mm.h> #include <linux/shm.h> diff --git a/arch/sparc64/solaris/misc.c b/arch/sparc64/solaris/misc.c index 542c808ec2c..3b67de7455f 100644 --- a/arch/sparc64/solaris/misc.c +++ b/arch/sparc64/solaris/misc.c @@ -6,7 +6,6 @@ #include <linux/module.h> #include <linux/types.h> -#include <linux/smp_lock.h> #include <linux/utsname.h> #include <linux/limits.h> #include <linux/mm.h> diff --git a/arch/sparc64/solaris/signal.c b/arch/sparc64/solaris/signal.c index 7fa2634e208..de10c9716cf 100644 --- a/arch/sparc64/solaris/signal.c +++ b/arch/sparc64/solaris/signal.c @@ -5,7 +5,6 @@ */ #include <linux/types.h> -#include <linux/smp_lock.h> #include <linux/errno.h> #include <asm/uaccess.h> diff --git a/arch/sparc64/solaris/socket.c b/arch/sparc64/solaris/socket.c index d3a66ea74a7..cc69847cf24 100644 --- a/arch/sparc64/solaris/socket.c +++ b/arch/sparc64/solaris/socket.c @@ -8,7 +8,6 @@ */ #include <linux/types.h> -#include <linux/smp_lock.h> #include <linux/mm.h> #include <linux/slab.h> #include <linux/socket.h> diff --git a/arch/sparc64/solaris/socksys.c b/arch/sparc64/solaris/socksys.c index c2864447de8..e94f6e5d945 100644 --- a/arch/sparc64/solaris/socksys.c +++ b/arch/sparc64/solaris/socksys.c @@ -17,7 +17,6 @@ #include <linux/kernel.h> #include <linux/sched.h> #include <linux/smp.h> -#include <linux/smp_lock.h> #include <linux/ioctl.h> #include <linux/fs.h> #include <linux/file.h> |