kbuild, modpost: Check the section flags, to catch missing "ax"/"aw"
authorAnders Kaseorg <andersk@mit.edu>
Thu, 23 Apr 2009 20:49:33 +0000 (16:49 -0400)
committerSam Ravnborg <sam@ravnborg.org>
Fri, 1 May 2009 08:54:05 +0000 (10:54 +0200)
commitb614a697dc17dff82f140d72d21a095f810fa7fb
treeb16edfeaddf7e808d6fa4b71ee11e497968476b2
parentc993971f4a7dc7ae43963aecb958395353c109ae
kbuild, modpost: Check the section flags, to catch missing "ax"/"aw"

When you put
  .section ".foo"
in an assembly file instead of
  .section "foo", "ax"
, one of the possible symptoms is that modpost will see an
ld-generated section name ".foo.1" in section_rel() or section_rela().
But this heuristic has two problems: it will miss a bad section that
has no relocations, and it will incorrectly flag many gcc-generated
sections as bad when compiling with -ffunction-sections
-fdata-sections.

On mips it fixes a lot of bogus warnings with gcc 4.4.0 lije this one:
WARNING: crypto/cryptd.o (.text.T.349): unexpected section name.

So instead of checking whether the section name matches a particular
pattern, we directly check for a missing SHF_ALLOC in the section
flags.

Signed-off-by: Anders Kaseorg <andersk@mit.edu>
Tested-by: Ralf Baechle <ralf@linux-mips.org>
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
scripts/mod/modpost.c