diff options
author | Greg Kroah-Hartman <gregkh@google.com> | 2017-08-14 23:12:30 +0000 |
---|---|---|
committer | android-build-merger <android-build-merger@google.com> | 2017-08-14 23:12:30 +0000 |
commit | ea2f8e8ce0074d79eaee4a514750b94457d8e5ad (patch) | |
tree | 923cf94d70b6f88d6a406005fbb9368e1b0f01c0 /arch/sparc/kernel/sun4v_ivec.S | |
parent | 84e1e3224b4d97bae8fd5bc6a67ab4900c4d5f21 (diff) | |
parent | ca4226385d9c5299108e261921f9849572fd5d10 (diff) | |
download | v4.4-ea2f8e8ce0074d79eaee4a514750b94457d8e5ad.tar.gz |
Merge 4.4.81 into android-4.4 am: dfff30bca9
am: ca4226385d
Change-Id: Id1f751744e0dc75a6a73c19af6dda15a46d2c842
Diffstat (limited to 'arch/sparc/kernel/sun4v_ivec.S')
-rw-r--r-- | arch/sparc/kernel/sun4v_ivec.S | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/arch/sparc/kernel/sun4v_ivec.S b/arch/sparc/kernel/sun4v_ivec.S index 559bc5e9c199..34631995859a 100644 --- a/arch/sparc/kernel/sun4v_ivec.S +++ b/arch/sparc/kernel/sun4v_ivec.S @@ -26,6 +26,21 @@ sun4v_cpu_mondo: ldxa [%g0] ASI_SCRATCHPAD, %g4 sub %g4, TRAP_PER_CPU_FAULT_INFO, %g4 + /* Get smp_processor_id() into %g3 */ + sethi %hi(trap_block), %g5 + or %g5, %lo(trap_block), %g5 + sub %g4, %g5, %g3 + srlx %g3, TRAP_BLOCK_SZ_SHIFT, %g3 + + /* Increment cpu_mondo_counter[smp_processor_id()] */ + sethi %hi(cpu_mondo_counter), %g5 + or %g5, %lo(cpu_mondo_counter), %g5 + sllx %g3, 3, %g3 + add %g5, %g3, %g5 + ldx [%g5], %g3 + add %g3, 1, %g3 + stx %g3, [%g5] + /* Get CPU mondo queue base phys address into %g7. */ ldx [%g4 + TRAP_PER_CPU_CPU_MONDO_PA], %g7 |