Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 18 Aug 2005 09:24:58 -0400
From:      John Nielsen <john@jnielsen.net>
To:        Marius Strobl <marius@alchemy.franken.de>
Cc:        freebsd-sparc64@freebsd.org
Subject:   Re: "fast data access mmu miss" on kernels w/o "makeoptions DEBUG=-g"
Message-ID:  <200508180924.59562.john@jnielsen.net>
In-Reply-To: <20050817225954.A89970@newtrinity.zeist.de>
References:  <200508110931.13802.john@jnielsen.net> <200508151042.37130.john@jnielsen.net> <20050817225954.A89970@newtrinity.zeist.de>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wednesday 17 August 2005 16:59, Marius Strobl wrote:
> On Mon, Aug 15, 2005 at 10:42:36AM -0400, John Nielsen wrote:
> > On Friday 12 August 2005 00:53, Andrew Belashov wrote:
> > > John Nielsen wrote:
> > > > Can anyone say why removing "makeoptions DEBUG=-g" from a kernel
> > > > would make it unreliable?  I'm on an Ultra 5, and it's quite stable
> > > > with either GENERIC or the kernel specified below.  However,
> > > > commenting out the "makeoptions DEBUG=-g" line builds a kernel that
> > > > boots but then panics right after mounting /:
> > > >
> > > > Entropy harvesting: interrupts ethernet point_to_pointpanic: trap:
> > > > fast data access mmu miss
> > > > Uptime:2s
> > > > Dumping 512 MB (2 chunks)
> > >
> > > Try to clean rebuild kernel (remove build directory
> > > /usr/obj/usr/src/sys/KERNCONF or /sys/compile/KERNCONF).
> >
> > No change even after a fresh buildworld (using RELENG_6):
> >
> > cvsup /etc/supfile-src && rm -r /usr/obj/* && cd /usr/src && make make
> > && make clean && make cleandir && make cleandir && make buildworld &&
> > make buildkernel && make installkernel && make installworld &&
> > mergemaster
> >
> > I don't mind leaving the option in the kernel, but it does seem like a
> > strange bug.  Let me know if anyone has any other ideas.  Thanks,
>
> When the DEBUG make option is defined the compiler optimization
> flags (COPTFLAGS) default to '-O -pipe' whereas without DEBUG the
> default is '-O2 -pipe' ('-O2' can cause bogus stack traces so it's
> not the default for debugging kernels). So in case you also get a
> panic with a kernel having both:
> makeoptions	DEBUG=-g
> and:
> makeoptions	COPTFLAGS="-O2 -pipe"
> this probably means that there's bogus code that breaks at higher
> optimization levels or a compiler bug. A stack trace from such a
> panic might help to track this down in case it's not screwed due
> to the '-O2'.

That's what it was.  A kernel with only
makeoptions COPTFLAGS="-O -pipe"
builds and runs just fine.

JN



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