Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 22 Feb 2005 11:45:18 +0000
From:      Coleman Kane <cokane@cokane.org>
To:        Peter Grehan <grehan@freebsd.org>
Cc:        freebsd-ppc@freebsd.org
Subject:   Re: panic: mutex vm object not owned ...
Message-ID:  <20050222114518.GC27871@ramen>
In-Reply-To: <421A5169.8050904@freebsd.org>
References:  <4219D4FE.8080501@freebsd.org> <346a802205022108344070cf79@mail.gmail.com> <421A5169.8050904@freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help

--raC6veAxrt5nqIoY
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Tue, Feb 22, 2005 at 07:23:53AM +1000, Peter Grehan wrote, and it was pr=
oclaimed:
> Coleman Kane wrote:
>=20
> > panic: mutex vm object not owned at /usr/src/sys/vm/vm_page.c:608
> >0xd7cc1ac8: at panic+0x134
> >0xd7cc1b68: at _mtx_assert+0x74
> >0xd7cc1b88: at vm_page_remove+0x5c
> >0xd7cc1ba8: at vm_page_free_toq+0xcc
> >0xd7cc1bc8: at vm_page_free+0x28
> >0xd7cc1be8: at uma_small_free+0x60
> >0xd7cc1c18: at zone_drain+0x2e8
> >0xd7cc1c58: at zone_foreach+0x64
> >0xd7cc1c78: at uma_reclaim+0x20
> >0xd7cc1c98: at vm_pageout_scan+0x200
> >0xd7cc1d58: at vm_pageout+0x39c
> >0xd7cc1d98: at fork_exit+0x118
> >0xd7cc1dc8: at fork_trampoline+0xc
>  ...
> >Yeah, I've been seeing this as well (on my AMD64 machine) lately. Any
> >idea where it is from?
>=20
>  Yes - it's rev 1.114 of uma_core.c. The comment "as the page(s)=20
> undoubtedly came from kmem_map for those two." isn't true for the
> UMD_MD_SMALL_ALLOC case.
>=20
>  It was assumed pre-1.114 that non-UMA_SLAB_KMEM were allocated with=20
> NULL backing objects, which can be seen from amd64/amd64/uma_machdep.c:
>=20
> void *
> uma_small_alloc(uma_zone_t zone, int bytes, u_int8_t *flags, int wait)
> {
>    ...
>         *flags =3D UMA_SLAB_PRIV;
>=20
>    ...
>                  m =3D vm_page_alloc(NULL, colour++, pflags |=20
> VM_ALLOC_NOOBJ);
>    ...
>=20
>=20
>  Try backing out the couple of lines from that rev and see how it goes.
>=20
> later,
>=20
> Peter.

I pulled out the line 1939:
 if ((zone !=3D slabzone) && (zone !=3D slabrefzone))

Which undoes the patch. I still have the kernel panics though. I have a
good test: OOo-2.0 will always trigger the panic.

--
coleman kane

--raC6veAxrt5nqIoY
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (FreeBSD)

iD8DBQFCGxtOuDFwFZcwSdoRAkhpAJ4hXZdrNIbCDd1L3YM/WDrHlX/v+gCeLc2X
bwf5t89ceEBqmalhMKGVK+Y=
=VJS5
-----END PGP SIGNATURE-----

--raC6veAxrt5nqIoY--


Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20050222114518.GC27871>