1. 05 Nov, 2013 5 commits
  2. 04 Nov, 2013 2 commits
    • Marc Zyngier's avatar
      arm64: move enabling of GIC before CPUs are set online · 7ade67b5
      Marc Zyngier authored
      Commit 53ae3acd (arm64: Only enable local interrupts after the CPU
      is marked online) moved the enabling of the GIC after the CPUs are
      marked online.
      
      This has some interesting effect:
      [...]
      [<ffffffc0002eefd8>] gic_raise_softirq+0xf8/0x160
      [<ffffffc000088f58>] smp_send_reschedule+0x38/0x40
      [<ffffffc0000c8728>] resched_task+0x84/0xc0
      [<ffffffc0000c8cdc>] check_preempt_curr+0x58/0x98
      [<ffffffc0000c8d38>] ttwu_do_wakeup+0x1c/0xf4
      [<ffffffc0000c8f90>] ttwu_do_activate.constprop.84+0x64/0x70
      [<ffffffc0000cad30>] try_to_wake_up+0x1d4/0x2b4
      [<ffffffc0000cae6c>] default_wake_function+0x10/0x18
      [<ffffffc0000c5ca4>] __wake_up_common+0x60/0xa0
      [<ffffffc0000c7784>] complete+0x48/0x64
      [<ffffffc000088bec>] secondary_start_kernel+0xe8/0x110
      [...]
      
      Here, we end-up calling gic_raise_softirq without having initialized
      the interrupt controller for this CPU. While this goes unnoticed
      with GICv2 (the distributor is always accessible), it explodes with
      GICv3.
      
      The fix is to move the call to notify_cpu_starting before we set
      the secondary CPU online.
      Signed-off-by: default avatarMarc Zyngier <marc.zyngier@arm.com>
      Signed-off-by: default avatarCatalin Marinas <catalin.marinas@arm.com>
      7ade67b5
    • Mark Salter's avatar
      arm64: use generic RW_DATA_SECTION macro in linker script · 3c620626
      Mark Salter authored
      The .data section in the arm64 linker script currently lacks a
      definition for page-aligned data. This leads to a .page_aligned
      section being placed between the end of data and start of bss.
      This patch corrects that by using the generic RW_DATA_SECTION
      macro which includes support for page-aligned data.
      Signed-off-by: default avatarMark Salter <msalter@redhat.com>
      Acked-by: default avatarWill Deacon <will.deacon@arm.com>
      Signed-off-by: default avatarCatalin Marinas <catalin.marinas@arm.com>
      3c620626
  3. 31 Oct, 2013 1 commit
  4. 30 Oct, 2013 3 commits
  5. 28 Oct, 2013 1 commit
    • Robin Murphy's avatar
      arm64: update 32-bit kuser helpers to ARMv8 · d0f38f91
      Robin Murphy authored
      This patch updates the barrier semantics in the kuser helper functions
      to take advantage of the ARMv8 additions to AArch32, which are
      guaranteed to be available in situations where these functions will be
      called.
      
      Note that this slightly changes the cmpxchg functions in that they are
      no longer necessarily full barriers if they return 1. However, the
      documentation only states they include their own barriers "as needed",
      not that they are obligated to act as a full barrier for the caller.
      Signed-off-by: default avatarRobin Murphy <robin.murphy@arm.com>
      Acked-by: default avatarWill Deacon <will.deacon@arm.com>
      CC: Matthew Leach <matthew.leach@arm.com>
      CC: Dave Martin <dave.martin@arm.com>
      CC: Mark Rutland <mark.rutland@arm.com>
      Signed-off-by: default avatarCatalin Marinas <catalin.marinas@arm.com>
      d0f38f91
  6. 25 Oct, 2013 20 commits
  7. 24 Oct, 2013 6 commits
  8. 23 Oct, 2013 1 commit
  9. 06 Oct, 2013 1 commit