Thread (37 messages) 37 messages, 7 authors, 2021-08-26

Re: [PATCH v4 0/3] m68k: Improved switch stack handling

From: Michael Schmitz <schmitzmic@gmail.com>
Date: 2021-07-26 02:00:08
Also in: linux-m68k

Thanks Brad, Andreas,

I won't rely on ARAnyM for these tests any longer then.

I would be much obliged if one of the m68k kernel crowd with access to a 
68040 could apply the two attached patches, on top of Eric's 
'refactoring exit' series for preference, and check that any program 
attempting a simple sin() or exp() operation exits with SEGV.

If you know of a way to trace said program and set a breakpoint in 
do_exit(), please also try to inspect saved registers at that point 
(though I'm not sure how to create a dump of the actual registers from 
inside the exception handler to compare with).

Cheers,

     Michael


On 25/07/21 10:12 pm, Brad Boyer wrote:
On Sun, Jul 25, 2021 at 07:44:11PM +1200, Michael Schmitz wrote:
quoted
Am 25.07.2021 um 00:05 schrieb Andreas Schwab:
quoted
On Jul 24 2021, Michael Schmitz wrote:
quoted
According to my understanding, you can't get a F-line exception on
68040.
The F-line exception vector is used for all FPU illegal and
unimplemented insns.
Thanks - now from my reading of the fpsp040 code (which has mislead me in
the past), it would seem that operations like sin() and exp() ought to raise
that exception then. I don't see that in ARAnyM.
Yes, according to the 68040 user's manual, unimplemented and illegal F-line
instructions trigger the standard F-line exception vector (11) but have
separate stack frame formats so the fpsp040 code gets some extra data.
The CPU does a bunch of the prep work so that part doesn't need to be
emulated in software.

The ARAnyM docs appear to claim a strange combination that wouldn't
exist in hardware by implementing a full 68882 instead of the limited
subset found on a real 68040. Strangely, that might have been easier to
implement. However, it would also completely bypass any use of fpsp040.

	Brad Boyer
	flar@allandria.com

Attachments

Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help