Subject: removing double mapping of kstack.
To: None <port-m68k@NetBSD.ORG>
From: Christian E. Hopps <chopps@water.emich.edu>
List: port-m68k
Date: 05/07/1995 23:07:32
I think I have all but a single crucial point worked out in
removing the m68k (amiga) double mapping of the kernel stack.

Basically I am seeing a jump to zero panic when the child returns
from cpu_switch (after having the savectx hack work its magic).

I pretty sure this is becuase I am not walking the child stack and
converting the frame pointers correctly (i.e. for the 5 or
so ulnk's back to trap0 and user mode.)  I will probably do this
but it sure is ugly.  E.g. it means that one cannot compile
the kernel with -fomit-frame-pointer.  Of course I could just
force -fomit-frame-pointer for compiles...

Both of these solutions seem pretty ugly.  Anyone have a
different approach?

I glanced at the alpha port and saw something going on with
what looked like a direct return to rei. Which would work
except syscall() wants to do stuff after the child returns
from fork() so I don't think that will work with m68k.
But then I only glanced at the alpha port, it may be doing
something completely different.

Chris.