Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 28 Oct 2007 22:07:06 +0100
From:      Roman Divacky <rdivacky@freebsd.org>
To:        "Valery V.Chikalov" <valera@chikalov.dp.ua>
Cc:        freebsd-emulation@freebsd.org
Subject:   Re: Linux emulation on FreeBSD AMD64
Message-ID:  <20071028210706.GA60615@freebsd.org>
In-Reply-To: <4724F83F.30503@chikalov.dp.ua>
References:  <4721AB07.20708@novakom.com.ua> <fg05l9$n32$2@ger.gmane.org> <4723A8D6.6020002@chikalov.dp.ua> <20071028112910.GA84830@freebsd.org> <4724CBCA.30500@chikalov.dp.ua> <4724D99C.3080105@chikalov.dp.ua> <20071028184318.GA57240@freebsd.org> <4724EA7B.3010103@chikalov.dp.ua> <4724F83F.30503@chikalov.dp.ua>

next in thread | previous in thread | raw e-mail | index | archive | help
> >Just for the record: this make mprottect return success,
> >but oracle coredumps nevertheless. (Sorry for rhyme :-)
> >
> 
> But despite of this is a step forward!
> Oracle server itself is running!
> Only sqlplus(oracle control utility) and connected client oracle process 
> are coredumping. So now I can start oracle server and ever generate new 
> database.
> 
> Now I am trying to understand the reasons of this coredumps. They are 
> occurring rather accidental, and for example I must several times try to 
> start oracle to achieve the result. Moreover after some time successful 
> running and serving queries oracle server dump core and stop working too.
 
I think its quite obvious...  oracle expects some memory is executable
and tries to execute something in it but freebsd has non-exec bit set
on that memory hence core dump...

do you see any obvious flaw in this thought?

> To make things clear: on this hardware the same oracle and FreeBSD-7.0 
> (i386) are running perfectly stable. The Linux in both cases the same 
> RedHat-7 (from ports of FreeBSD-5.*).
> 
> Do I need to use some "linux version" of gdb?
> Gdb from the base saying me:
> 
> =====================
> bash-2.04$ gdb -c oracle.core `which oracle`
> GNU gdb 6.1.1 [FreeBSD]
> Copyright 2004 Free Software Foundation, Inc.
> GDB is free software, covered by the GNU General Public License, and you are
> welcome to change it and/or distribute copies of it under certain 
> conditions.
> Type "show copying" to see the conditions.
> There is absolutely no warranty for GDB.  Type "show warranty" for details.
> This GDB was configured as "amd64-marcel-freebsd"...
> warning: A handler for the OS ABI "GNU/Linux" is not built into this
> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> is this harmful? Is it possible to fix this?
 
the coredump should contain some memory dump of intstructions there
were executing when the coredump happened. those instructions are i386
maybe you need to set it somewhere/somehow

> configuration
> of GDB.  Attempting to continue with the default i386 settings.
> ========================
> 
> And "bt" are not looking reasonable.

try to "disas" memory before the IP when the coredump happened. you
might disas memory in the middle of instruction so try to increase/decrease
by 1 the memory location...

roman



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