Merge branch 'arch-frv' into no-rebases
authorAl Viro <viro@zeniv.linux.org.uk>
Sat, 17 Nov 2012 03:27:58 +0000 (22:27 -0500)
committerAl Viro <viro@zeniv.linux.org.uk>
Sat, 17 Nov 2012 03:27:58 +0000 (22:27 -0500)
14 files changed:
1  2 
arch/arm64/Kconfig
arch/arm64/include/asm/processor.h
arch/hexagon/include/asm/processor.h
arch/hexagon/include/uapi/asm/ptrace.h
arch/hexagon/include/uapi/asm/unistd.h
arch/hexagon/kernel/process.c
arch/hexagon/kernel/signal.c
arch/hexagon/kernel/syscall.c
arch/hexagon/kernel/vm_entry.S
arch/m68k/include/asm/unistd.h
arch/parisc/include/asm/unistd.h
arch/s390/Kconfig
arch/sparc/include/asm/ptrace.h
arch/sparc/kernel/process_64.c

Simple merge
Simple merge
Simple merge
index 0000000000000000000000000000000000000000,8ef784047a740248cdbca67377a656721b6b0769..1ffce0c6ee07559082fa475271e7656c2bbe3f9c
mode 000000,100644..100644
--- /dev/null
@@@ -1,0 -1,35 +1,39 @@@
+ /*
+  * Ptrace definitions for the Hexagon architecture
+  *
+  * Copyright (c) 2010-2011, The Linux Foundation. All rights reserved.
+  *
+  * This program is free software; you can redistribute it and/or modify
+  * it under the terms of the GNU General Public License version 2 and
+  * only version 2 as published by the Free Software Foundation.
+  *
+  * This program is distributed in the hope that it will be useful,
+  * but WITHOUT ANY WARRANTY; without even the implied warranty of
+  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+  * GNU General Public License for more details.
+  *
+  * You should have received a copy of the GNU General Public License
+  * along with this program; if not, write to the Free Software
+  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+  * 02110-1301, USA.
+  */
+ #ifndef _ASM_PTRACE_H
+ #define _ASM_PTRACE_H
+ #include <asm/registers.h>
+ #define instruction_pointer(regs) pt_elr(regs)
+ #define user_stack_pointer(regs) ((regs)->r29)
+ #define profile_pc(regs) instruction_pointer(regs)
+ /* kprobe-based event tracer support */
+ extern int regs_query_register_offset(const char *name);
+ extern const char *regs_query_register_name(unsigned int offset);
++#define current_pt_regs() \
++      ((struct pt_regs *) \
++       ((unsigned long)current_thread_info() + THREAD_SIZE) - 1)
++
+ #endif
index 0000000000000000000000000000000000000000,81312d6a52e687d1a3f75f22997ce09cd261610a..26b2e0f909c8664d3c6e342db44cc5ad4954aece
mode 000000,100644..100644
--- /dev/null
@@@ -1,0 -1,31 +1,32 @@@
+ /*
+  * Syscall support for Hexagon
+  *
+  * Copyright (c) 2010-2011, The Linux Foundation. All rights reserved.
+  *
+  * This program is free software; you can redistribute it and/or modify
+  * it under the terms of the GNU General Public License version 2 and
+  * only version 2 as published by the Free Software Foundation.
+  *
+  * This program is distributed in the hope that it will be useful,
+  * but WITHOUT ANY WARRANTY; without even the implied warranty of
+  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+  * GNU General Public License for more details.
+  *
+  * You should have received a copy of the GNU General Public License
+  * along with this program; if not, write to the Free Software
+  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+  * 02110-1301, USA.
+  */
+ /*
+  *  The kernel pulls this unistd.h in three different ways:
+  *  1.  the "normal" way which gets all the __NR defines
+  *  2.  with __SYSCALL defined to produce function declarations
+  *  3.  with __SYSCALL defined to produce syscall table initialization
+  *  See also:  syscalltab.c
+  */
+ #define sys_mmap2 sys_mmap_pgoff
++#define __ARCH_WANT_SYS_EXECVE
+ #include <asm-generic/unistd.h>
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
index 1e8b818022630a0b35907808aac0fa41876a4c8f,da43bdc622943bf422a396abba301148151f8f96..bdfafd7af46fb48eeb04e25787733b0500f66d07
@@@ -45,9 -42,22 +45,20 @@@ struct global_reg_snapshot 
        struct thread_info      *thread;
        unsigned long           pad1;
  };
- extern struct global_reg_snapshot global_reg_snapshot[NR_CPUS];
+ struct global_pmu_snapshot {
+       unsigned long           pcr[4];
+       unsigned long           pic[4];
+ };
+ union global_cpu_snapshot {
+       struct global_reg_snapshot      reg;
+       struct global_pmu_snapshot      pmu;
+ };
+ extern union global_cpu_snapshot global_cpu_snapshot[NR_CPUS];
  
 -#define force_successful_syscall_return()         \
 -do {  current_thread_info()->syscall_noerror = 1; \
 -} while (0)
 +#define force_successful_syscall_return() set_thread_noerror(1)
  #define user_mode(regs) (!((regs)->tstate & TSTATE_PRIV))
  #define instruction_pointer(regs) ((regs)->tpc)
  #define instruction_pointer_set(regs, val) ((regs)->tpc = (val))
Simple merge