27 Nov, 2011

1 commit

  • The bitops functions (e.g. _test_and_set_bit) on ARM do not have unwind
    annotations and therefore the kernel cannot backtrace out of them on a
    fatal error (for example, NULL pointer dereference).

    This patch annotates the bitops assembly macros with UNWIND annotations
    so that we can produce a meaningful backtrace on error. Callers of the
    macros are modified to pass their function name as a macro parameter,
    enforcing that the macros are used as standalone function implementations.

    Acked-by: Dave Martin
    Signed-off-by: Will Deacon
    Signed-off-by: Russell King

    Will Deacon
     

20 Feb, 2011

1 commit

  • The kernel doesn't officially need to interwork, but using BX
    wherever appropriate will help educate people into good assembler
    coding habits.

    BX is appropriate here because this code is predicated on
    __LINUX_ARM_ARCH__ >= 6

    Signed-off-by: Dave Martin
    Acked-by: Nicolas Pitre
    Signed-off-by: Russell King

    Dave Martin
     

03 Feb, 2011

2 commits


14 Aug, 2009

1 commit

  • Before this patch enabling and disabling irqs in assembler code and by
    the hardware wasn't tracked completly.

    I had to transpose two instructions in arch/arm/lib/bitops.h because
    restore_irqs doesn't preserve the flags with CONFIG_TRACE_IRQFLAGS=y

    Signed-off-by: Uwe Kleine-König
    Cc: Russell King
    Cc: Peter Zijlstra
    Cc: Ingo Molnar

    Signed-off-by: Uwe Kleine-König

    Uwe Kleine-König
     

29 May, 2009

1 commit

  • Mathieu Desnoyers pointed out that the ARM barriers were lacking:

    - cmpxchg, xchg and atomic add return need memory barriers on
    architectures which can reorder the relative order in which memory
    read/writes can be seen between CPUs, which seems to include recent
    ARM architectures. Those barriers are currently missing on ARM.

    - test_and_xxx_bit were missing SMP barriers.

    So put these barriers in. Provide separate atomic_add/atomic_sub
    operations which do not require barriers.

    Reported-Reviewed-and-Acked-by: Mathieu Desnoyers
    Signed-off-by: Russell King

    Russell King
     

21 May, 2007

1 commit


01 Jul, 2006

1 commit


09 Nov, 2005

1 commit


03 Nov, 2005

1 commit


10 Aug, 2005

1 commit


29 Jul, 2005

1 commit


28 Jul, 2005

1 commit


16 Jul, 2005

1 commit


19 Apr, 2005

1 commit