Re: [PATCH] x86: avoid warning for zero-filling .bss

From: H. Peter Anvin
Date: Thu Nov 17 2016 - 19:08:14 EST


On 11/17/16 14:44, Josh Poimboeuf wrote:
> On Thu, Nov 17, 2016 at 11:32:30PM +0100, Arnd Bergmann wrote:
>> On Thursday, November 17, 2016 3:02:48 PM CET Josh Poimboeuf wrote:
>>> On Wed, Nov 16, 2016 at 03:17:09PM +0100, Arnd Bergmann wrote:
>>>> The latest binutils are warning about a .fill directive with an explicit
>>>> value in a .bss section:
>>>>
>>>> arch/x86/kernel/head_32.S: Assembler messages:
>>>> arch/x86/kernel/head_32.S:677: Warning: ignoring fill value in section `.bss..page_aligned'
>>>> arch/x86/kernel/head_32.S:679: Warning: ignoring fill value in section `.bss..page_aligned'
>>>>
>>>> This comes from the 'ENTRY()' macro padding the space between the symbols
>>>> with 'nop'. Open-coding the .globl directive without the padding
>>>> avoids that warning.
>>>
>>> How is there space between the symbols? Aren't they already aligned?
>>
>> My understanding is that they are aligned, it's just that gas complains
>> about the .align directive with a nonzero fill value.
>
> Ah, I see now. In that case your patch looks fine to me.
>

Yes, ENTRY() is for code.

-hpa