]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
Merge branch 'arm64/exception-stack' of git://git.kernel.org/pub/scm/linux/kernel...
authorCatalin Marinas <catalin.marinas@arm.com>
Wed, 9 Aug 2017 14:37:49 +0000 (15:37 +0100)
committerCatalin Marinas <catalin.marinas@arm.com>
Wed, 9 Aug 2017 14:37:49 +0000 (15:37 +0100)
* 'arm64/exception-stack' of git://git.kernel.org/pub/scm/linux/kernel/git/mark/linux:
  arm64: unwind: remove sp from struct stackframe
  arm64: unwind: reference pt_regs via embedded stack frame
  arm64: unwind: disregard frame.sp when validating frame pointer
  arm64: unwind: avoid percpu indirection for irq stack
  arm64: move non-entry code out of .entry.text
  arm64: consistently use bl for C exception entry
  arm64: Add ASM_BUG()

1  2 
arch/arm64/include/asm/assembler.h
arch/arm64/include/asm/ptrace.h
arch/arm64/kernel/entry.S
arch/arm64/kernel/head.S
arch/arm64/kernel/ptrace.c
arch/arm64/kernel/traps.c

Simple merge
index 4f64373b84fdfbcdcec24bf3ecef4ba81641fe04,ee72aa9790789b7db6afc14bc31a6226aa046535..6069d66e0bc2b2de5f9cb1a335af7c89e1f70dfb
@@@ -127,28 -116,12 +127,29 @@@ struct pt_regs 
                };
        };
        u64 orig_x0;
 -      u64 syscallno;
 +#ifdef __AARCH64EB__
 +      u32 unused2;
 +      s32 syscallno;
 +#else
 +      s32 syscallno;
 +      u32 unused2;
 +#endif
 +
        u64 orig_addr_limit;
        u64 unused;     // maintain 16 byte alignment
+       u64 stackframe[2];
  };
  
 +static inline bool in_syscall(struct pt_regs const *regs)
 +{
 +      return regs->syscallno != NO_SYSCALL;
 +}
 +
 +static inline void forget_syscall(struct pt_regs *regs)
 +{
 +      regs->syscallno = NO_SYSCALL;
 +}
 +
  #define MAX_REG_OFFSET offsetof(struct pt_regs, pstate)
  
  #define arch_has_single_step()        (1)
Simple merge
Simple merge
Simple merge
Simple merge