Subject: Re: crash in tmpfs_itimes since vmlocking2 merge
To: Antti Kantee <pooka@cs.hut.fi>
From: Bill Stouder-Studenmund <wrstuden@netbsd.org>
List: current-users
Date: 01/23/2008 12:49:09
--huq684BweRXVnRxX
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable
On Mon, Jan 21, 2008 at 11:50:20PM +0200, Antti Kantee wrote:
> On Mon Jan 21 2008 at 15:33:41 -0600, David Young wrote:
> > The following crash during shutdown is fairly repeatable. It began
> > to happen after I updated to -current from pre-vmlocking2 sources.
> > It may be necessary to reproduce my thicket of null mounts in order to
> > reproduce the crash,
> >=20
> > /dev/wd0a on / type ffs (read-only, local)
> > tmpfs on /dev type tmpfs (union, local)
> >
> > [snip]
> >=20
> > unmounting /dev (tmpfs)...
> >=20
> > unmounting / (/dev/wd0a)...uvm_fault(0xc0398760, 0xc6984000, 1) -> 0xe
> >=20
> > kernel: supervisor trap page fault, code=3D0
>=20
> You are trying to modify the vnode for /dev/wd0a to update the access time
> info, but tmpfs has been garbage collected already when unmounting /dev.
>=20
> This is the problem of forcibly unmounting a file system with device
> vnodes on it. There was a small discussion about splitting specfs
> into two layers: one for the "host" file system (tmpfs in this case)
> and one for the actual device info (specfs). Then you could rip the
> "host" part out without affecting the device part before the device goes
> inactive and can be safely put to rest.
I'd actually say this is a bug in deadfs or tmpfs. Since we know the
vnode's still in use, we should leave one around that doesn't cause the=20
kernel to crash.
Take care,
Bill
--huq684BweRXVnRxX
Content-Type: application/pgp-signature
Content-Disposition: inline
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.7 (NetBSD)
iD8DBQFHl6hFWz+3JHUci9cRAhY9AJ4kXG48YqQacar/39YlL7l35IBVnQCcCoSB
lB1VakGzFJ2PBCqCg0HVcHY=
=vXF0
-----END PGP SIGNATURE-----
--huq684BweRXVnRxX--