Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 30 Jan 2011 22:13:36 +0300
From:      Chagin Dmitry <dchagin@freebsd.org>
To:        Alexander Best <arundel@freebsd.org>
Cc:        oleg.ginzburg@nevosoft.ru, freebsd-emulation@freebsd.org
Subject:   Re: kern/145024: [linux] kernel crash by linux.ko module with nooptions COMPAT_FREEBSD32
Message-ID:  <20110130191336.GA34554@dchagin.static.corbina.ru>
In-Reply-To: <20110130185924.GA19604@freebsd.org>
References:  <201101301827.p0UIRrnk089915@freefall.freebsd.org> <20110130184157.GA11074@dchagin.static.corbina.ru> <20110130185924.GA19604@freebsd.org>

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

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

On Sun, Jan 30, 2011 at 06:59:24PM +0000, Alexander Best wrote:
> On Sun Jan 30 11, Chagin Dmitry wrote:
> > On Sun, Jan 30, 2011 at 06:27:53PM +0000, arundel@freebsd.org wrote:
> > > Old Synopsis: [linux] [panic] kernel crash by linux.ko module with no=
options COMPAT_FREEBSD32
> > > New Synopsis: [linux] kernel crash by linux.ko module with nooptions =
COMPAT_FREEBSD32
> > >=20
> > > State-Changed-From-To: open->analyzed
> > > State-Changed-By: arundel
> > > State-Changed-When: Sun Jan 30 18:13:13 UTC 2011
> > > State-Changed-Why:=20
> > > We have two possibilities in order to fix this issue:
> > >=20
> > > 1) Add something like the following somewhere in sys/amd/linux32:
> > >=20
> > >    #ifndef COMPAT_FREEBSD32
> > >    #error "linux emulation requires COMPAT_FREEBSD32 \
> > > 	   option for non 32 bit architectures"
> > >    #endif
> > >=20
> > > 2) Find a way to avoid the freebsd32_exec_copyin_args() call in
> > >    linux32_machdep.c. I believe this is the only place in the sys/amd=
/linux32
> > >    code that depends on sys/amd64/ia32 code.
> > >=20
> > > NB: I've removed the panic tag from this PR. I was able to reproduce =
the issue,
> > >     however a panic didn't occur. The problem is that
> > >     freebsd32_exec_copyin_args() wasn't compiled into the kernel and =
loading the
> > >     linux kernel module thus fails.
> > >=20
> >=20
> > hi, close report, see r205014.
>=20
> i verified the issue with a recent HEAD just a few minutes ago. the point=
 is
> that users should be informed, when they build the linuxulator on 64 bit
> architectures without the COMPAT_FREEBSD32, because that will give them a
> broken linuxulator. either that or remove the freebsd32_exec_copyin_args(=
) call
> from the linuxulator to make it independent from COMPAT_FREEBSD32 code.
>=20

ah, i see.. module Makefile. so, we should sync kernel and module build
options.


--=20
Have fun!
chd

--u3/rZRmxL6MmkK24
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.10 (FreeBSD)

iEYEARECAAYFAk1FuGAACgkQ0t2Tb3OO/O0nYwCg0VRrdwfASLl6sgQZm2x8QIGd
kLkAoKiz0Os/fqs+Mz/CJ+A3bWHhRmxo
=Ans7
-----END PGP SIGNATURE-----

--u3/rZRmxL6MmkK24--



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