Hi All, Sorry for the spam.. On Mon, 8 Jan 2024 at 18:56, Geert Uytterhoeven <geert@xxxxxxxxxxxxxx> wrote:
I think it would be better to use the classic m68k stack frame. That would pave the way for building a single nommu kernel for MC680[012346]0 that runs on e.g. any Amiga. MC68000 and Coldfire are incompatible anyway.
While looking at how to do this I realised that the addql #2,%sp in RESTORE_ALL in entry.h will now break the stack frames for those fancy 68010+ users. So that needs to be #ifdef'd to make it only compile for 68000. I saw an error email from the next build stuff so I guess the change has been queued somewhere? If so I should send a fix.. I'm not sure how to actually make that generic without patching the code at runtime (remove the 68000 specific bit, reserve enough extra space to rewrite the code..) but it's a macro so not so simple. Anyhow, and more importantly, it seems like there is another issue in 68000/entry.S that breaks syscalls (especially vfork). After fixing that I now have a working nommu 68000 system. I'll send a fix for that too. Cheers, Daniel