]> Git Repo - linux.git/commitdiff
x86, relocs: Add jiffies and jiffies_64 to the relative whitelist
authorH. Peter Anvin <[email protected]>
Thu, 24 May 2012 14:01:38 +0000 (07:01 -0700)
committerH. Peter Anvin <[email protected]>
Thu, 24 May 2012 14:16:18 +0000 (07:16 -0700)
The symbol jiffies is created in the linker script as an alias to
jiffies_64.  Unfortunately this is done outside any section, and
apparently GNU ld 2.21 doesn't carry the section with it, so we end up
with an absolute symbol and therefore a broken kernel.

Add jiffies and jiffies_64 to the whitelist.

The most disturbing bit with this discovery is that it shows that we
have had multiple linker bugs in this area crossing multiple
generations, and have been silently building bad kernels for some time.

Link: http://lkml.kernel.org/r/[email protected]
Reported-by: Stephen Rothwell <[email protected]>
Signed-off-by: H. Peter Anvin <[email protected]>
Cc: <[email protected]> v3.4
arch/x86/tools/relocs.c

index b8f7c65fc40c8559fc3412ff0240c9573ece3196..b685296d44641b091f5d9c565e7e596914e97d39 100644 (file)
@@ -71,6 +71,7 @@ static const char * const sym_regex_kernel[S_NSYMTYPES] = {
        "__(start|stop)_notes|"
        "__end_rodata|"
        "__initramfs_start|"
+       "(jiffies|jiffies_64)|"
        "_end)$"
 };
 
This page took 0.058406 seconds and 4 git commands to generate.