diff options
author | glenda <glenda@9front.local> | 2025-05-14 01:33:55 +0000 |
---|---|---|
committer | glenda <glenda@9front.local> | 2025-05-14 01:33:55 +0000 |
commit | a7081490dbeda19788e6374a080ee38606aa3cd3 (patch) | |
tree | 8c440e3611573ee60322e7e84e5204e3e326028a /sys/src/9/cycv | |
parent | 635cb9e7425577dae44eb415ad42e8d3892850b5 (diff) |
kernel: get rid of Proc.kstack
The kernel stack is now above the Proc structure,
so the explicit kstack pointer can be eliminated.
Diffstat (limited to 'sys/src/9/cycv')
-rw-r--r-- | sys/src/9/cycv/trap.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/sys/src/9/cycv/trap.c b/sys/src/9/cycv/trap.c index a47238cc3..98fb56715 100644 --- a/sys/src/9/cycv/trap.c +++ b/sys/src/9/cycv/trap.c @@ -26,9 +26,9 @@ _dumpstack(Ureg *ureg) x += iprint("ktrace /arm/9cycv %.8lux %.8lux %.8lux <<EOF\n", ureg->pc, ureg->sp, ureg->r14); i = 0; if(up - && (uintptr)&l >= (uintptr)up->kstack - && (uintptr)&l <= (uintptr)up->kstack+KSTACK) - estack = (uintptr)up->kstack+KSTACK; + && (uintptr)&l >= (uintptr)up - KSTACK + && (uintptr)&l <= (uintptr)up) + estack = (uintptr)up; else if((uintptr)&l >= (uintptr)m->stack && (uintptr)&l <= (uintptr)m+MACHSIZE) estack = (uintptr)m+MACHSIZE; @@ -522,7 +522,7 @@ void kprocchild(Proc *p, void (*entry)(void)) { p->sched.pc = (uintptr) entry; - p->sched.sp = (uintptr) p->kstack + KSTACK; + p->sched.sp = (uintptr) p; } void @@ -531,7 +531,7 @@ forkchild(Proc *p, Ureg *ureg) Ureg *cureg; p->sched.pc = (uintptr) forkret; - p->sched.sp = (uintptr) p->kstack + KSTACK - sizeof(Ureg); + p->sched.sp = (uintptr) p - sizeof(Ureg); cureg = (Ureg*) p->sched.sp; memmove(cureg, ureg, sizeof(Ureg)); |