diff options
| -rw-r--r-- | arch/arm64/kernel/entry.S | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/arch/arm64/kernel/entry.S b/arch/arm64/kernel/entry.S index f860bfda454a..e16351819fed 100644 --- a/arch/arm64/kernel/entry.S +++ b/arch/arm64/kernel/entry.S | |||
| @@ -585,7 +585,8 @@ ENDPROC(el0_irq) | |||
| 585 | * | 585 | * |
| 586 | */ | 586 | */ |
| 587 | ENTRY(cpu_switch_to) | 587 | ENTRY(cpu_switch_to) |
| 588 | add x8, x0, #THREAD_CPU_CONTEXT | 588 | mov x10, #THREAD_CPU_CONTEXT |
| 589 | add x8, x0, x10 | ||
| 589 | mov x9, sp | 590 | mov x9, sp |
| 590 | stp x19, x20, [x8], #16 // store callee-saved registers | 591 | stp x19, x20, [x8], #16 // store callee-saved registers |
| 591 | stp x21, x22, [x8], #16 | 592 | stp x21, x22, [x8], #16 |
| @@ -594,7 +595,7 @@ ENTRY(cpu_switch_to) | |||
| 594 | stp x27, x28, [x8], #16 | 595 | stp x27, x28, [x8], #16 |
| 595 | stp x29, x9, [x8], #16 | 596 | stp x29, x9, [x8], #16 |
| 596 | str lr, [x8] | 597 | str lr, [x8] |
| 597 | add x8, x1, #THREAD_CPU_CONTEXT | 598 | add x8, x1, x10 |
| 598 | ldp x19, x20, [x8], #16 // restore callee-saved registers | 599 | ldp x19, x20, [x8], #16 // restore callee-saved registers |
| 599 | ldp x21, x22, [x8], #16 | 600 | ldp x21, x22, [x8], #16 |
| 600 | ldp x23, x24, [x8], #16 | 601 | ldp x23, x24, [x8], #16 |
