riscv: simplify the stack pointer setup in head.S

We don't need THREAD_SIZE in asm-offsets.c as we can just calculate
the value of init_thread_union + THREAD_SIZE using cpp, just like
we do a few lines above.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Atish Patra <atish.patra@wdc.com>
Signed-off-by: Palmer Dabbelt <palmer@sifive.com>
This commit is contained in:
Christoph Hellwig 2019-04-15 11:14:37 +02:00 committed by Palmer Dabbelt
parent df16c40cbf
commit c637b911e0
No known key found for this signature in database
GPG Key ID: EF4CA1502CCBAB41
2 changed files with 1 additions and 7 deletions

View File

@ -312,9 +312,6 @@ void asm_offsets(void)
- offsetof(struct task_struct, thread.fstate.f[0])
);
/* The assembler needs access to THREAD_SIZE as well. */
DEFINE(ASM_THREAD_SIZE, THREAD_SIZE);
/*
* We allocate a pt_regs on the stack when entering the kernel. This
* ensures the alignment is sane.

View File

@ -69,10 +69,7 @@ clear_bss_done:
/* Restore C environment */
la tp, init_task
sw zero, TASK_TI_CPU(tp)
la sp, init_thread_union
li a0, ASM_THREAD_SIZE
add sp, sp, a0
la sp, init_thread_union + THREAD_SIZE
/* Start the kernel */
mv a0, s0