x86/relocs: Make per_cpu_load_addr static

per_cpu_load_addr is only used for 64-bit relocations, but is
declared in both configurations of relocs.c - with different
types.  This has undefined behaviour in general.  GNU ld is
documented to use the larger size in this case, but other tools
may differ and some warn about this.

References: https://bugs.debian.org/748577
Reported-by: Michael Tautschnig <mt@debian.org>
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Cc: 748577@bugs.debian.org
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Link: http://lkml.kernel.org/r/1411561812.3659.23.camel@decadent.org.uk
Signed-off-by: Ingo Molnar <mingo@kernel.org>
This commit is contained in:
Ben Hutchings 2014-09-24 13:30:12 +01:00 коммит произвёл Ingo Molnar
Родитель ce4b1b1650
Коммит eeeda4cd06
1 изменённых файлов: 1 добавлений и 1 удалений

Просмотреть файл

@ -695,7 +695,7 @@ static void walk_relocs(int (*process)(struct section *sec, Elf_Rel *rel,
*
*/
static int per_cpu_shndx = -1;
Elf_Addr per_cpu_load_addr;
static Elf_Addr per_cpu_load_addr;
static void percpu_init(void)
{