1. 27 7月, 2016 1 次提交
  2. 19 7月, 2016 1 次提交
  3. 07 7月, 2016 1 次提交
  4. 23 6月, 2016 2 次提交
  5. 14 11月, 2014 1 次提交
  6. 18 7月, 2014 1 次提交
  7. 19 3月, 2014 1 次提交
  8. 03 2月, 2014 1 次提交
    • U
      ARM: make isa_mode macro more robust and fix for v7-M · 3f18b1bf
      Uwe Kleine-König 提交于
      The definition of isa_mode hardcodes the values to shift PSR_J_BIT and
      PSR_T_BIT to move them to bits 1 and 0 respectively. Instead use __ffs to
      calculate the shift from the #define already used for masking.
      
      This is relevant on v7-M as there PSR_T_BIT is 0x01000000 instead of
      0x00000020 for V7-[AR] and earlier. Because of that isa_mode produced
      values >= 0x80000 which are unsuitable to index into isa_modes[4] there
      and so made __show_regs read from undefined memory which resulted in
      hangs and crashes.
      
      Moreover isa_mode is wrong for v7-M even after this robustness fix as
      there is no J-bit in the PSR register. So hardcode isa_mode to "Thumb"
      for v7-M.
      Signed-off-by: NUwe Kleine-König <u.kleine-koenig@pengutronix.de>
      3f18b1bf
  9. 18 4月, 2013 1 次提交
  10. 12 10月, 2012 1 次提交
  11. 01 10月, 2012 1 次提交
    • A
      arm: optimized current_pt_regs() · bfd170d5
      Al Viro 提交于
      ... no need to read current_thread_info()->task only to
      feed it to task_thread_page() immediately afterwards.
      Moreover, not using current_thread_info() at all ends
      up with better assembler - we need a location very close
      to the top of kernel stack page and it's actually better
      to do or with 0x1fff, followed be subtracting a small
      constant than and with ~0x1fff, followed by adding a large
      one.  Both & and | would be a couple of insns (mvn lsr/mvn lsl
      for |, a pair of bic for &), but the following addition
      would cost a pair of add while the subtraction ends up
      as a single sub.
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      bfd170d5
  12. 19 9月, 2012 1 次提交
    • D
      ARM: virt: allow the kernel to be entered in HYP mode · 80c59daf
      Dave Martin 提交于
      This patch does two things:
      
        * Ensure that asynchronous aborts are masked at kernel entry.
          The bootloader should be masking these anyway, but this reduces
          the damage window just in case it doesn't.
      
        * Enter svc mode via exception return to ensure that CPU state is
          properly serialised.  This does not matter when switching from
          an ordinary privileged mode ("PL1" modes in ARMv7-AR rev C
          parlance), but it potentially does matter when switching from a
          another privileged mode such as hyp mode.
      
      This should allow the kernel to boot safely either from svc mode or
      hyp mode, even if no support for use of the ARM Virtualization
      Extensions is built into the kernel.
      Signed-off-by: NDave Martin <dave.martin@linaro.org>
      Signed-off-by: NMarc Zyngier <marc.zyngier@arm.com>
      80c59daf
  13. 26 4月, 2012 1 次提交
  14. 18 1月, 2012 1 次提交
    • N
      Kernel: Audit Support For The ARM Platform · 29ef73b7
      Nathaniel Husted 提交于
      This patch provides functionality to audit system call events on the
      ARM platform. The implementation was based off the structure of the
      MIPS platform and information in this
      (http://lists.fedoraproject.org/pipermail/arm/2009-October/000382.html)
      mailing list thread. The required audit_syscall_exit and
      audit_syscall_entry checks were added to ptrace using the standard
      registers for system call values (r0 through r3). A thread information
      flag was added for auditing (TIF_SYSCALL_AUDIT) and a meta-flag was
      added (_TIF_SYSCALL_WORK) to simplify modifications to the syscall
      entry/exit. Now, if either the TRACE flag is set or the AUDIT flag is
      set, the syscall_trace function will be executed. The prober changes
      were made to Kconfig to allow CONFIG_AUDITSYSCALL to be enabled.
      
      Due to platform availability limitations, this patch was only tested
      on the Android platform running the modified "android-goldfish-2.6.29"
      kernel. A test compile was performed using Code Sourcery's
      cross-compilation toolset and the current linux-3.0 stable kernel. The
      changes compile without error. I'm hoping, due to the simple modifications,
      the patch is "obviously correct".
      Signed-off-by: NNathaniel Husted <nhusted@gmail.com>
      Signed-off-by: NEric Paris <eparis@redhat.com>
      29ef73b7
  15. 14 7月, 2011 2 次提交
  16. 15 5月, 2011 1 次提交
  17. 24 2月, 2011 1 次提交
    • W
      ARM: 6668/1: ptrace: remove single-step emulation code · 425fc47a
      Will Deacon 提交于
      PTRACE_SINGLESTEP is a ptrace request designed to offer single-stepping
      support to userspace when the underlying architecture has hardware
      support for this operation.
      
      On ARM, we set arch_has_single_step() to 1 and attempt to emulate hardware
      single-stepping by disassembling the current instruction to determine the
      next pc and placing a software breakpoint on that location.
      
      Unfortunately this has the following problems:
      
      1.) Only a subset of ARMv7 instructions are supported
      2.) Thumb-2 is unsupported
      3.) The code is not SMP safe
      
      We could try to fix this code, but it turns out that because of the above
      issues it is rarely used in practice.  GDB, for example, uses PTRACE_POKETEXT
      and PTRACE_PEEKTEXT to manage breakpoints itself and does not require any
      kernel assistance.
      
      This patch removes the single-step emulation code from ptrace meaning that
      the PTRACE_SINGLESTEP request will return -EIO on ARM. Portable code must
      check the return value from a ptrace call and handle the failure gracefully.
      Acked-by: NNicolas Pitre <nicolas.pitre@linaro.org>
      Signed-off-by: NWill Deacon <will.deacon@arm.com>
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      425fc47a
  18. 08 9月, 2010 1 次提交
  19. 16 8月, 2010 1 次提交
  20. 09 7月, 2010 1 次提交
  21. 13 3月, 2010 1 次提交
    • C
      arm: use generic ptrace_resume code · 440e6ca7
      Christoph Hellwig 提交于
      Use the generic ptrace_resume code for PTRACE_SYSCALL, PTRACE_CONT,
      PTRACE_KILL and PTRACE_SINGLESTEP.  This implies defining
      arch_has_single_step in <asm/ptrace.h> and implementing the
      user_enable_single_step and user_disable_single_step functions, which also
      causes the breakpoint information to be cleared on fork, which could be
      considered a bug fix.
      
      Also the TIF_SYSCALL_TRACE thread flag is now cleared on PTRACE_KILL which
      it previously wasn't and the single stepping disable only happens if the
      tracee process isn't a zombie yet, which is consistent with all
      architectures using the modern ptrace code.
      Signed-off-by: NChristoph Hellwig <hch@lst.de>
      Cc: Oleg Nesterov <oleg@redhat.com>
      Cc: Roland McGrath <roland@redhat.com>
      Cc: Russell King <rmk@arm.linux.org.uk>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      440e6ca7
  22. 09 1月, 2010 1 次提交
  23. 24 7月, 2009 1 次提交
    • P
      nommu: ptrace support · 68b7f715
      Paul Brook 提交于
      The patch below adds ARM ptrace functions to get the process load address.
      This is required for useful userspace debugging on mmuless systems.  These
      values are obtained by reading magic offsets with PTRACE_PEEKUSR, as on other
      nommu targets. I picked arbitrary large values for the offsets.
      Signed-off-by: NPaul Brook <paul@codesourcery.com>
      68b7f715
  24. 30 5月, 2009 2 次提交
    • C
      Add core support for ARMv6/v7 big-endian · 26584853
      Catalin Marinas 提交于
      Starting with ARMv6, the CPUs support the BE-8 variant of big-endian
      (byte-invariant). This patch adds the core support:
      
      - setting of the BE-8 mode via the CPSR.E register for both kernel and
        user threads
      - big-endian page table walking
      - REV used to rotate instructions read from memory during fault
        processing as they are still little-endian format
      - Kconfig and Makefile support for BE-8. The --be8 option must be passed
        to the final linking stage to convert the instructions to
        little-endian
      Signed-off-by: NCatalin Marinas <catalin.marinas@arm.com>
      26584853
    • C
      Clear the IT state when invoking a Thumb-2 signal handler · d71e1352
      Catalin Marinas 提交于
      If a process is interrupted during an If-Then block and a signal is
      invoked, the ITSTATE bits must be cleared otherwise the handler would
      not run correctly.
      Signed-off-by: NCatalin Marinas <catalin.marinas@arm.com>
      Cc: Joseph S. Myers <joseph@codesourcery.com>
      d71e1352
  25. 12 2月, 2009 1 次提交
  26. 06 9月, 2008 1 次提交
  27. 03 8月, 2008 1 次提交
  28. 26 7月, 2008 1 次提交
  29. 12 7月, 2007 2 次提交
  30. 18 6月, 2007 1 次提交
    • R
      [ARM] Update show_regs/oops register format · 154c772e
      Russell King 提交于
      Add the kernel release and version information to the output of
      show_regs/oops.  Add the CPU PSR register.  Avoid using printk
      to output partial lines; always output a complete line.
      
      Re-combine the "Control" and "Table + DAC" lines after nommu
      separated them; we don't want to waste vertical screen space
      needlessly.
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      154c772e
  31. 06 5月, 2007 1 次提交
  32. 29 6月, 2006 1 次提交
  33. 26 4月, 2006 1 次提交
  34. 15 1月, 2006 2 次提交
  35. 17 4月, 2005 1 次提交