Subject: Re: Big problem with a new kernel and panics
To: Bernd Ernesti <bernd@arresum.inka.de>
From: Michael L. Hitch <osymh@gemini.oscs.montana.edu>
List: amiga-dev
Date: 10/22/1995 21:34:22
On Oct 23,  1:47am, Bernd Ernesti wrote:
> and all works fine till I made a new kernel, logged in and typ startx
> and got a kernel panic:
> 
> vm_faul(13c00, 5000000, 3, 0) -> 1
>  type 8, code [mmu,,ssw]: 4a5
> pid = 190, pc = 000A5F90, ps = 2010, sfx = 0001, dfc = 0001

  What is the procedure and offset that pc = 000A5F90 corresponds to?
I'd guess it's _cv_load_mon+???.

> And later I got panics during the boot of netbsd at the point where mountd
> is started:
> 
> vm_fault
> [..]
> _addrerr(?)
> _cfs_mountedon
> _vfs_export
> _adosfs_mount
> _sys_mount
> _syscall
> 
> I think this has to do with the changes to the 040.

  What makes you think this?  I'd say it has nothing to do with the 040 or
the MMU changes.

  I'd bet it's because the NFS export fields for an ados file system
mount isn't being properly initialized and when mountd tries to delete
the export information for the file system, it uses bogus export information
and crashes.

diff -c /usr/src/sys/adosfs/advfsops.c sys/adosfs/advfsops.c
*** /usr/src/sys/adosfs/advfsops.c	Fri Oct 13 19:36:34 1995
--- sys/adosfs/advfsops.c	Sun Oct 22 20:56:39 1995
***************
*** 165,170 ****
--- 165,171 ----
  
  	parp = &dl.d_partitions[part];
  	amp = malloc(sizeof(struct adosfsmount), M_ADOSFSMNT, M_WAITOK);
+ 	bzero((char *)amp, (u_long)sizeof(struct adosfsmount));
  	amp->mp = mp;
  	amp->startb = parp->p_offset;
  	amp->endb = parp->p_offset + parp->p_size;

Michael

-- 
Michael L. Hitch			INTERNET:  osymh@montana.edu
Computer Consultant
Information Technology Center
Montana State University	Bozeman, MT	USA