diff options
author | Dave Airlie <airlied@starflyer.(none)> | 2005-09-25 13:14:45 +1000 |
---|---|---|
committer | Dave Airlie <airlied@linux.ie> | 2005-09-25 13:14:45 +1000 |
commit | 4e0c1159d83a658d1ffba5bc3442f4ec4cadb436 (patch) | |
tree | 36a5079ba7ba9b9e0f2f633356705b980940eac4 /arch/sparc64/kernel/rtrap.S | |
parent | ea98a92ff18c03bf7f4d21536986cbbcb4c10cd9 (diff) | |
parent | ef6bd6eb90ad72ee8ee7ba8b271f27102e9a90c1 (diff) |
update from upstream
Diffstat (limited to 'arch/sparc64/kernel/rtrap.S')
-rw-r--r-- | arch/sparc64/kernel/rtrap.S | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/arch/sparc64/kernel/rtrap.S b/arch/sparc64/kernel/rtrap.S index 0696ed4b9d6..fafd227735f 100644 --- a/arch/sparc64/kernel/rtrap.S +++ b/arch/sparc64/kernel/rtrap.S @@ -153,11 +153,14 @@ __handle_signal: rtrap_irq: rtrap_clr_l6: clr %l6 rtrap: - ldub [%g6 + TI_CPU], %l0 - sethi %hi(irq_stat), %l2 ! &softirq_active - or %l2, %lo(irq_stat), %l2 ! &softirq_active -irqsz_patchme: sllx %l0, 0, %l0 - lduw [%l2 + %l0], %l1 ! softirq_pending +#ifndef CONFIG_SMP + sethi %hi(per_cpu____cpu_data), %l0 + lduw [%l0 + %lo(per_cpu____cpu_data)], %l1 +#else + sethi %hi(per_cpu____cpu_data), %l0 + or %l0, %lo(per_cpu____cpu_data), %l0 + lduw [%l0 + %g5], %l1 +#endif cmp %l1, 0 /* mm/ultra.S:xcall_report_regs KNOWS about this load. */ |