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? Isn't the warning really about the fact that it's unnecessarily filling a .bss section with zeros? Would it make sense to use .align instead? > --- > arch/x86/kernel/head_32.S | 9 ++++++--- > 1 file changed, 6 insertions(+), 3 deletions(-) > > diff --git a/arch/x86/kernel/head_32.S b/arch/x86/kernel/head_32.S > index df541ac2071e..4e8577d03372 100644 > --- a/arch/x86/kernel/head_32.S > +++ b/arch/x86/kernel/head_32.S > @@ -669,14 +669,17 @@ __PAGE_ALIGNED_BSS > initial_pg_pmd: > .fill 1024*KPMDS,4,0 > #else > -ENTRY(initial_page_table) > +.globl initial_page_table > +initial_page_table: > .fill 1024,4,0 > #endif > initial_pg_fixmap: > .fill 1024,4,0 > -ENTRY(empty_zero_page) > +.globl empty_zero_page > +empty_zero_page: > .fill 4096,1,0 > -ENTRY(swapper_pg_dir) > +.globl swapper_pg_dir > +swapper_pg_dir: > .fill 1024,4,0 > EXPORT_SYMBOL(empty_zero_page) > > -- > 2.9.0 > -- Josh