Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 25 Mar 2013 02:03:40 +0200
From:      Ivan Klymenko <fidaj@ukr.net>
To:        Konstantin Belousov <kostikbel@gmail.com>
Cc:        freebsd-current@freebsd.org, freebsd-ports@freebsd.org
Subject:   Re: Kernel panic CURRENT r248596 at virtualbox-ose-kmod module load
Message-ID:  <20130325020340.02c5ace0@nonamehost>
In-Reply-To: <20130324120507.GX3794@kib.kiev.ua>
References:  <20130323132627.04bf7ef4@nonamehost> <20130324120507.GX3794@kib.kiev.ua>

next in thread | previous in thread | raw e-mail | index | archive | help
=D0=92 Sun, 24 Mar 2013 14:05:07 +0200
Konstantin Belousov <kostikbel@gmail.com> =D0=BF=D0=B8=D1=88=D0=B5=D1=82:

> On Sat, Mar 23, 2013 at 01:26:27PM +0200, Ivan Klymenko wrote:
> > I have
> > uname -a
> > FreeBSD nonamehost 10.0-CURRENT FreeBSD 10.0-CURRENT #0 r248596: Fri
> > Mar 22 01:17:08 EET 2013
> > ivan@nonamehost:/usr/obj/usr/src/sys/GENERIC  amd64
> >=20
> > I updated the ports tree to r314921 and recompiled
> > virtualbox-ose-kmod
> >=20
> > After load the module a have kernel panic.
> >=20
> > Panic  String:  Lock  vm  object  not  exclusively   locked   @
> > /usr/src/sys/vm/vm_page.c:1396
> >=20
> > http://pkgupdate.nevosoft.ru/backtrace.txt
>=20
> This looks like a vbox issue, the driver did not properly locked
> the object passed to the vm_page_alloc_contig().
>=20
> If you want this fixed, you probably need to look up the code
> yourself, compiling the vbox kld with debugging, finding the
> offending call to vm_page_alloc_contig() and looking around it to see
> which object is passed and why it is not locked.

The problem is that port commiter did not listen your advice:
http://docs.freebsd.org/cgi/mid.cgi?20130312151751.GJ3794

and used in the patch is not the functions that need
http://svnweb.freebsd.org/ports/head/emulators/virtualbox-ose-kmod/files/pa=
tch-src-VBox-Runtime-r0drv-freebsd-memobj-r0drv-freebsd_VM_OBJECT_RENAME.c?=
r1=3D314794&r2=3D314796

I replaced the all function "VM_OBJECT_RLOCK" on "VM_OBJECT_WLOCK"
and
"VM_OBJECT_RUNLOCK" on "VM_OBJECT_WUNLOCK"

and the kernel panic ceased.

Thanks. This problem is solved.



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