Commit ea17e741 authored by H. Peter Anvin's avatar H. Peter Anvin

x86, relocs: Add jiffies and jiffies_64 to the relative whitelist

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/20120524171604.0d98284f3affc643e9714470@canb.auug.org.auReported-by: default avatarStephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: default avatarH. Peter Anvin <hpa@zytor.com>
Cc: <stable@vger.kernel.org> v3.4
parent fd952815
...@@ -71,6 +71,7 @@ static const char * const sym_regex_kernel[S_NSYMTYPES] = { ...@@ -71,6 +71,7 @@ static const char * const sym_regex_kernel[S_NSYMTYPES] = {
"__(start|stop)_notes|" "__(start|stop)_notes|"
"__end_rodata|" "__end_rodata|"
"__initramfs_start|" "__initramfs_start|"
"(jiffies|jiffies_64)|"
"_end)$" "_end)$"
}; };
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment