Re: [patch] Cleaning up amd64 kernel optimization options

From: Alexander Best <arundel_at_freebsd.org>
Date: Fri, 23 Dec 2011 00:59:32 +0000
On Thu Dec 22 11, Benjamin Kaduk wrote:
> On Thu, 22 Dec 2011, Alexander Best wrote:
> 
> >On Thu Dec 22 11, Dimitry Andric wrote:
> >>Hi,
> >>
> >>I would like to ask some feedback on the attached patch, which cleans up
> >>the kernel optimization options for amd64.  This was touched upon
> >>earlier by Alexander Best in freebsd-toolchain, here:
> >
> >i've been using such settings for a few months now and haven't noticed any
> >problems.
> >
> >however bruce evans raised a good point (in a private mail). when you 
> >compile a
> >kernel without debugging enabled, -O2 is the default. if you experience 
> >issues,
> >and enable debugging, -O0 now becomes the default. in case the problems 
> >with
> >the kernel were caused by the -O2 option and aren't present with the -O0
> >option, the newly built kernel with debugging enabled will not help you 
> >fix the
> >problems. in that case you would need to set -O2 explicitly in CFLAGS. his
> >exact words were:
> >
> >"
> >I don't like -O2 for anything.  However, if it is only a default, it is
> >not a problem provided it can be canceled easily.  And for debugging, you
> >want the default to be the same as without debugging, so that (by default)
> >you debug the same code that caused the problem.
> >"
> >
> >however i don't think this is fixable. using -O0 for debuggable and
> >non-debuggable kernels will cause too much of a slowdown.
> >
> >having -O2 as the default flag for non-debuggable kernels and -O2 -g for
> >debuggable kernels might cause situations, where debugging isn't possible,
> >where with -O0 -g it would have been.
> >
> >so i guess although bruces concerns are valid, they are impossible to 
> >solve.
> 
> Where does -O0 come in?  I only see talk of -O (i.e. -O1) versus -O2.

sorry. of course i meant -O:

.if defined(DEBUG)
_MINUS_O=       -O
CTFFLAGS+=      -g
.else
[..]

> 
> -Ben Kaduk
Received on Thu Dec 22 2011 - 23:59:32 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:22 UTC