diff options
Diffstat (limited to 'arch/riscv64/kernel')
| -rw-r--r-- | arch/riscv64/kernel/proc.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/arch/riscv64/kernel/proc.c b/arch/riscv64/kernel/proc.c index b047e2c..ed8bf93 100644 --- a/arch/riscv64/kernel/proc.c +++ b/arch/riscv64/kernel/proc.c @@ -20,7 +20,8 @@ void run_init(struct tcb *t, void *fdt) csr_write(CSR_SSCRATCH, t); csr_write(CSR_SEPC, t->exec); __asm__ volatile ("mv sp, %0\n" : : "r" (t->thread_stack_top) : "memory"); - __asm__ volatile ("mv a0, %0\n" : : "r" (fdt) : ); + __asm__ volatile ("mv a0, %0\n" : : "r" (t->tid) : ); + __asm__ volatile ("mv a1, %0\n" : : "r" (fdt) : ); __asm__ volatile ("sret\n" ::: "memory"); /* we should never reach this */ unreachable(); |
