[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <51815BA0.1090209@ti.com>
Date: Wed, 1 May 2013 14:14:56 -0400
From: Tom Rini <trini@...com>
To: Rusty Russell <rusty@...tcorp.com.au>
CC: <linux-kernel@...r.kernel.org>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
<linux-kbuild@...r.kernel.org>
Subject: Re: [PATCH] modpost.c: Add .text.unlikely to TEXT_SECTIONS
On 05/01/2013 07:18 AM, Tom Rini wrote:
> On 04/30/2013 10:19 PM, Rusty Russell wrote:
>> Tom Rini <trini@...com> writes:
>>> On 04/28/2013 10:59 PM, Rusty Russell wrote:
>>>> Tom Rini <trini@...com> writes:
>>>>
>>>>> Recent gcc's may place functions into the .text.unlikely section and we
>>>>> need to check this section as well for section mismatches now otherwise
>>>>> we may have false negatives for this test.
>>>>
>>>> Hmm, I don't think it's all that recent, is it? I can find it back to
>>>> gcc 4.0.4:
>>>>
>>>> `-freorder-functions'
>>>> Reorder functions in the object file in order to improve code
>>>> locality. This is implemented by using special subsections
>>>> `.text.hot' for most frequently executed functions and
>>>> `.text.unlikely' for unlikely executed functions. Reordering is
>>>> done by the linker so object file format must support named
>>>> sections and linker must place them in a reasonable way.
>>>>
>>>> Also profile feedback must be available in to make this option
>>>> effective. See `-fprofile-arcs' for details.
>>>>
>>>> Enabled at levels `-O2', `-O3', `-Os'.
>>>>
>>>> The comment is the same in in gcc 4.7.
>>>>
>>>> So is your real issue that this section is generated with
>>>> -fprofile-arcs, or has something changed with gcc 4.8, or...?
>>>
>>> I've started seeing this with Linaro based 4.7 toolchains. I can go
>>> back through their releases and see when it starts showing up there if
>>> it helps. I didn't add .text.hot as I didn't have that section at all,
>>> fwiw.
>>
>> Weird, did you turn on CONFIG_GCOV_KERNEL? AFAICT you shouldn't see
>> this section without that.
>
> Nope, CONFIG_GCOV_KERNEL is off. Must be related to whatever flags the
> Linaro folks set as default on -O2 (at least in their 2013.03 release),
> after reading over one of the .o.cmd files in the build.
>
> Do you want me to re-word the commit message a bit or ? Thanks!
I poked around, and every Linaro binary I can grab (2012.01 and gcc 4.6
to 2013.04 and gcc 4.8) has this behaviour.
--
Tom
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists