Subject: Re: Panic: MMU fault :(
To: Leo Weppelman <leo@wau.mis.ah.nl>
From: Julian Coleman <J.D.Coleman@newcastle.ac.uk>
List: port-atari
Date: 01/05/1998 00:06:58
Leo Weppelman wrote:
> It looks like the same problem Benny had a while back. Making sure the
> kernel runs in ST-ram fixed the problem. The 1.3 kernels will no longer
> relocate by default, meaning that you have to force them out of ST-ram
> instead of TT-ram. I don't remember if this was already the case in the
> 1.3 alpha kernels. If you try to let the kernel _only_ use ST ram, it
> probably will lockup because it has not enough memory to do the fsck's.
>
Thanks. Yes. However, I'm slightly confused now! I compiled a kernel
and when I ran loadbsd.ttp, it couldn't load it because the kernel was
larger than the free ST-RAM. I configured loadbsd.ttp to allocate memory
from TT-RAM. I assume that this makes it load the kernel into TT-RAM.
Does that mean that when I had the MMU fault panics with the bootx kernel,
it was running in ST-RAM? (I had a look through the kernel initialisation
code, and I see that it doesn't relocate itself). Can I tell if the kernel
I'm running is in ST-RAM or TT-RAM?
> Maybe you should configure swap earlier?
>
Yes (again). I didn't realise that the machine was running out of memory,
although I gather (from current-users) that this isn't handled gracefully!
I haven't had a MMU fault since I compiled a kernel, but I haven't done a
large amount of compiling in one go yet. I've been trying to get a driver
for the Crazy Dots card to work :
I took the grfabs_et.c driver and tried to get a grfet attached to the
card. I couldn't get that to work. Then, I looked at the leo.c and
if_le_vme.c files and now have a device that is probed and attached at
boot time :
et0 at vme0 port 0xfebf000-0xfebfffff iomem 0xfec00000-0xfecfffff
I thought I should use the et4000 routines in the existing files, instead of
(more or less) duplicating them. For the moment, I put values into the
et_priv struct (apart from pci_tag (which doesn't seem to be used anywhere))
and just copied the routines from grfabs_et.c
Presumably to use the card, I need to attach a grfet to it? I'm not quite
sure how to do that. Also presumably, I should look at the XFree86 SVGA
server for X? I've seen some references to XFree86 - I take it that it is
the same source? Will there be an X distribution for 1.3, or should I just
grab Xdaniver (aka 1.2)?
Unrelated things -
I can't run gdb because of :
/usr/libexec/ld.so:gdb: libbfd.so.0.0: No such file or directory
I notice a libbfd directory in the gnu src, but I can't find it installed
anywhere.
I notice that date doesn't change the clock. Is there any way to set it
from NetBSD? My battery is dead and I noticed when I rebooted that the
date had gone back to 1989! BTW, the system freezes for about 40 secs
when you change the time 8.5 years!
> PS: I expect the atari 1.3 release to be in place early next week. This
> for those of you wondering...
Great news! Working bootblocks will make the edit, compile, reboot cycle
a bit faster (well the reboot bit anyway)! ;-)
Thanks again,
J
PS. Entropy - I was looking through your code, and I don't understand
why leoread() and leowrite() both call leomove() with the same parameters.
Also, I think the sc_dev in the *_softc struct is automatically filled in.
Other drivers (e.g. sun) appear to use sc_dev.dv_xname, without explicity
assigning anything to it.
--
1024/55A5BC19 0F 3F 62 56 18 10 8B 84 43 8F F4 94 93 37 76 AA
S.E.P.