Hi Finn,
On Thu, Sep 16, 2021 at 11:03 AM Finn Thain <fthain@xxxxxxxxxxxxxx> wrote:
On Sun, 25 Jul 2021, Al Viro wrote:
...
PS: FWIW, ifdefs in arch/m68k/kernel/signal.c are wrong - it's not !MMU
vs. coldfire/MMU vs. classic/MMU. It's actually 68000 vs. coldfire vs.
everything else. These days it's nearly correct, but only because on
MMU variants of coldfire we never see exception stack frames with type
other than 4 - it's controlled by alignment of kernel stack pointer on
those, and it's under the kernel control, so it's always 32bit-aligned.
It used to be more serious back when we had 68360 support - that's !MMU
and exception stack frames are like those on 68020, unless I'm
misreading their manual...
I don't claim to understand this code but CPU32 cores appear to be
unsupported on either #ifdef branch: the MMU branch due to CACR and CAAR
used in push_cache(), and the !MMU branch due to frame format $4 used in
adjust_format().
The CPU32 Reference Manual appendix says these chips only supports control
registers SFC, DFC, VBR and stack frame formats $0, $2, $C.
https://www.nxp.com/files-static/microcontrollers/doc/ref_manual/CPU32RM.pdf
As of commit a3595962d82495f5 ("m68knommu: remove obsolete 68360
support"), nothing selects MCPU32 anymore.
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds