diff options
Diffstat (limited to 'arch/tile/kernel/intvec_32.S')
-rw-r--r-- | arch/tile/kernel/intvec_32.S | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/arch/tile/kernel/intvec_32.S b/arch/tile/kernel/intvec_32.S index 9c0c3cb6aab0..f3d26f48e659 100644 --- a/arch/tile/kernel/intvec_32.S +++ b/arch/tile/kernel/intvec_32.S | |||
@@ -185,7 +185,7 @@ intvec_\vecname: | |||
185 | * point sp at the top aligned address on the actual stack page. | 185 | * point sp at the top aligned address on the actual stack page. |
186 | */ | 186 | */ |
187 | mfspr r0, SPR_SYSTEM_SAVE_K_0 | 187 | mfspr r0, SPR_SYSTEM_SAVE_K_0 |
188 | mm r0, r0, zero, LOG2_THREAD_SIZE, 31 | 188 | mm r0, r0, zero, LOG2_NR_CPU_IDS, 31 |
189 | 189 | ||
190 | 0: | 190 | 0: |
191 | /* | 191 | /* |
@@ -203,6 +203,9 @@ intvec_\vecname: | |||
203 | * cache line 1: r14...r29 | 203 | * cache line 1: r14...r29 |
204 | * cache line 0: 2 x frame, r0..r13 | 204 | * cache line 0: 2 x frame, r0..r13 |
205 | */ | 205 | */ |
206 | #if STACK_TOP_DELTA != 64 | ||
207 | #error STACK_TOP_DELTA must be 64 for assumptions here and in task_pt_regs() | ||
208 | #endif | ||
206 | andi r0, r0, -64 | 209 | andi r0, r0, -64 |
207 | 210 | ||
208 | /* | 211 | /* |
@@ -464,7 +467,7 @@ intvec_\vecname: | |||
464 | } | 467 | } |
465 | { | 468 | { |
466 | auli r21, r21, ha16(__per_cpu_offset) | 469 | auli r21, r21, ha16(__per_cpu_offset) |
467 | mm r20, r20, zero, 0, LOG2_THREAD_SIZE-1 | 470 | mm r20, r20, zero, 0, LOG2_NR_CPU_IDS-1 |
468 | } | 471 | } |
469 | s2a r20, r20, r21 | 472 | s2a r20, r20, r21 |
470 | lw tp, r20 | 473 | lw tp, r20 |