Re: [PATCH 59/74] lto: Handle LTO common symbols in moduleloader

From: Jan Beulich
Date: Sun Aug 19 2012 - 04:53:04 EST


>>> Andi Kleen <andi@xxxxxxxxxxxxxx> 08/19/12 4:59 AM >>>
>@@ -1904,6 +1904,10 @@ static int simplify_symbols(struct module *mod, const struct load_info *info)
>
> switch (sym[i].st_shndx) {
> case SHN_COMMON:
>+ /* Ignore common symbols */
>+ if (!strncmp(name, "__gnu_lto", 9))
>+ break;
>+
> /* We compiled with -fno-common. These are not
> supposed to happen. */
> pr_debug("Common symbol: %s\n", name);

I think it is dangerous to just match the start of the symbol name here -
this may in the future well lead to ignoring symbols we shouldn't be
ignoring.

Also I would think the added comment ought to say "Ignore LTO symbols."
Otherwise its sort of contradicting the purpose of the case being handled
here.

Jan

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/