Re: [hatari-devel] Hatari freeze on XaAES quit with 030 MMU + FPU + cache emulation

[ Thread Index | Date Index | More lists.tuxfamily.org/hatari-devel Archives ]


Hi,

To recap the findings so far:

* Issue is not recent, and could have been there since cache emulation started working with MMU

* No warnings with CPU core MMU debug, gcc ASAN or Valgrind

* Happens only with 030 + MMU + FPU + cache emulation

* Triggered after closing all apps in MiNT + XaAES, and quitting XaAES, with last OS call being VDI workstation close - After which Hatari's xconout vector interception stops working for EmuTOS

* Triggered only under EmuTOS, around v1.1.1:
  - After it switched from MFP polling to interrupt driven mode
- But before VDI workstation memory was fixed to be allocated from supervisor accessible memory


I.e. memory access rights handling / change is related to this (VDI wk close with its memory being non-supervisor accessible), which makes sense when trigger needs MMU + caching.

But can somebody explain how EmuTOS MFP driver interrupt handling, and FPU being present could relate to this / are needed for triggering the freeze?


Thomas' analysis of the hang on Hatari side:

"When the hang happens, it seems like the emulated code is looping through the whole cleared memory, only executing op_0000_35_ff() in cpuemu_35.c.

And this never seems to add any cycles anymore, thus Hatari completely hangs in the m68k_run_mmu030() loop, without ever generating an interrupt and thus not reacting to user input anymore."


My EmuTOS symbol address tracing showed program counter running also through EmuTOS code without taking branches. I assume ROM area could not have been cleared, but could it have been mapped somewhere else with MMU, so that it all looks fine from the CPU core point of view?

And if TOS is taken out of the picture that way, would that cause Hatari to freeze?


Note: I'm not sure how one would verify that with Hatari debugger. That uses physical addresses, not virtual MMU mapped ones, so maybe it would still see normal ROM content, not what the CPU would run for that address?


	- Eero



Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/