1. 28 7月, 2012 1 次提交
  2. 05 7月, 2012 1 次提交
  3. 22 5月, 2012 1 次提交
  4. 02 5月, 2012 2 次提交
  5. 20 4月, 2012 1 次提交
  6. 29 3月, 2012 1 次提交
  7. 24 3月, 2012 1 次提交
  8. 10 2月, 2012 1 次提交
  9. 23 1月, 2012 1 次提交
  10. 17 10月, 2011 2 次提交
    • S
      ARM: 7017/1: Use generic BUG() handler · 87e040b6
      Simon Glass 提交于
      ARM uses its own BUG() handler which makes its output slightly different
      from other archtectures.
      
      One of the problems is that the ARM implementation doesn't report the function
      with the BUG() in it, but always reports the PC being in __bug(). The generic
      implementation doesn't have this problem.
      
      Currently we get something like:
      
      kernel BUG at fs/proc/breakme.c:35!
      Unable to handle kernel NULL pointer dereference at virtual address 00000000
      ...
      PC is at __bug+0x20/0x2c
      
      With this patch it displays:
      
      kernel BUG at fs/proc/breakme.c:35!
      Internal error: Oops - undefined instruction: 0 [#1] PREEMPT SMP
      ...
      PC is at write_breakme+0xd0/0x1b4
      
      This implementation uses an undefined instruction to implement BUG, and sets up
      a bug table containing the relevant information. Many versions of gcc do not
      support %c properly for ARM (inserting a # when they shouldn't) so we work
      around this using distasteful macro magic.
      
      v1: Initial version to replace existing ARM BUG() implementation with something
      more similar to other architectures.
      
      v2: Add Thumb support, remove backtrace whitespace output changes. Change to
      use macros instead of requiring the asm %d flag to work (thanks to
      Dave Martin <dave.martin@linaro.org>)
      
      v3: Remove old BUG() implementation in favor of this one.
      Remove the Backtrace: message (will submit this separately).
      Use ARM_EXIT_KEEP() so that some architectures can dump exit text at link time
      thanks to Stephen Boyd <sboyd@codeaurora.org> (although since we always
      define GENERIC_BUG this might be academic.)
      Rebase to linux-2.6.git master.
      
      v4: Allow BUGS in modules (these were not reported correctly in v3)
      (thanks to Stephen Boyd <sboyd@codeaurora.org> for suggesting that.)
      Remove __bug() as this is no longer needed.
      
      v5: Add %progbits as the section flags.
      Signed-off-by: NSimon Glass <sjg@chromium.org>
      Reviewed-by: NStephen Boyd <sboyd@codeaurora.org>
      Tested-by: NStephen Boyd <sboyd@codeaurora.org>
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      87e040b6
    • J
      ARM: 7115/4: move __exception and friends to asm/exception.h · 5a567d78
      Jamie Iles 提交于
      The definition of __exception_irq_entry for
      CONFIG_FUNCTION_GRAPH_TRACER=y needs linux/ftrace.h, but this creates a
      circular dependency with it's current home in asm/system.h. Create
      asm/exception.h and update all current users.
      
      v4:	- rebase to rmk/for-next
      v3:	- remove redundant includes of linux/ftrace.h
      v2:	- document the usage restricitions of __exception*
      
      Cc: Zoltan Devai <zdevai@gmail.com>
      Signed-off-by: NJamie Iles <jamie@jamieiles.com>
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      5a567d78
  11. 13 9月, 2011 1 次提交
  12. 27 7月, 2011 1 次提交
  13. 14 7月, 2011 1 次提交
  14. 10 6月, 2011 1 次提交
  15. 09 6月, 2011 1 次提交
  16. 14 5月, 2011 1 次提交
  17. 14 4月, 2011 1 次提交
  18. 24 2月, 2011 2 次提交
    • 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
    • R
      ARM: fix some sparse errors in generic ARM code · 2bbd7e9b
      Russell King 提交于
      arch/arm/kernel/return_address.c:37:6: warning: symbol 'return_address' was not declared. Should it be static?
      arch/arm/kernel/setup.c:76:14: warning: symbol 'processor_id' was not declared. Should it be static?
      arch/arm/kernel/traps.c:259:1: warning: symbol 'die_lock' was not declared. Should it be static?
      arch/arm/vfp/vfpmodule.c:156:6: warning: symbol 'vfp_raise_sigfpe' was not declared. Should it be static?
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      2bbd7e9b
  19. 15 2月, 2011 1 次提交
  20. 27 11月, 2010 1 次提交
  21. 08 11月, 2010 1 次提交
  22. 04 11月, 2010 1 次提交
    • C
      ARM: 6384/1: Remove the domain switching on ARMv6k/v7 CPUs · 247055aa
      Catalin Marinas 提交于
      This patch removes the domain switching functionality via the set_fs and
      __switch_to functions on cores that have a TLS register.
      
      Currently, the ioremap and vmalloc areas share the same level 1 page
      tables and therefore have the same domain (DOMAIN_KERNEL). When the
      kernel domain is modified from Client to Manager (via the __set_fs or in
      the __switch_to function), the XN (eXecute Never) bit is overridden and
      newer CPUs can speculatively prefetch the ioremap'ed memory.
      
      Linux performs the kernel domain switching to allow user-specific
      functions (copy_to/from_user, get/put_user etc.) to access kernel
      memory. In order for these functions to work with the kernel domain set
      to Client, the patch modifies the LDRT/STRT and related instructions to
      the LDR/STR ones.
      
      The user pages access rights are also modified for kernel read-only
      access rather than read/write so that the copy-on-write mechanism still
      works. CPU_USE_DOMAINS gets disabled only if the hardware has a TLS register
      (CPU_32v6K is defined) since writing the TLS value to the high vectors page
      isn't possible.
      
      The user addresses passed to the kernel are checked by the access_ok()
      function so that they do not point to the kernel space.
      Tested-by: NAnton Vorontsov <cbouatmailru@gmail.com>
      Cc: Tony Lindgren <tony@atomide.com>
      Signed-off-by: NCatalin Marinas <catalin.marinas@arm.com>
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      247055aa
  23. 09 7月, 2010 1 次提交
  24. 16 2月, 2010 1 次提交
  25. 10 11月, 2009 1 次提交
  26. 09 11月, 2009 1 次提交
  27. 25 10月, 2009 1 次提交
  28. 11 10月, 2009 3 次提交
  29. 29 9月, 2009 1 次提交
  30. 19 2月, 2009 1 次提交
  31. 12 2月, 2009 1 次提交
  32. 15 12月, 2008 1 次提交
  33. 06 9月, 2008 2 次提交
  34. 05 9月, 2008 1 次提交
    • R
      [ARM] sparse: fix several warnings · 09d9bae0
      Russell King 提交于
      arch/arm/kernel/process.c:270:6: warning: symbol 'show_fpregs' was not declared. Should it be static?
      
      This function isn't used, so can be removed.
      
      arch/arm/kernel/setup.c:532:9: warning: symbol 'len' shadows an earlier one
      arch/arm/kernel/setup.c:524:6: originally declared here
      
      A function containing two 'len's.
      
      arch/arm/mm/fault-armv.c:188:13: warning: symbol 'check_writebuffer_bugs' was not declared. Should it be static?
      arch/arm/mm/mmap.c:122:5: warning: symbol 'valid_phys_addr_range' was not declared. Should it be static?
      arch/arm/mm/mmap.c:137:5: warning: symbol 'valid_mmap_phys_addr_range' was not declared. Should it be static?
      
      Missing includes.
      
      arch/arm/kernel/traps.c:71:77: warning: Using plain integer as NULL pointer
      arch/arm/mm/ioremap.c:355:46: error: incompatible types in comparison expression (different address spaces)
      
      Sillies.
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      09d9bae0