diff options
author | H. Peter Anvin <hpa@linux.intel.com> | 2012-05-08 14:22:31 -0400 |
---|---|---|
committer | H. Peter Anvin <hpa@linux.intel.com> | 2012-05-08 14:47:11 -0400 |
commit | 2a6de3148cfd1a0240a85ea4a1cad34d250d882f (patch) | |
tree | 5cdd4655fcb16fe035a1507c0be824748a270c57 | |
parent | f156ffc439951b63cfa9f4d999a8d54267f13282 (diff) |
x86, realmode: Allow absolute pa_* symbols in the realmode code
Allow pa_* symbols to be absolute (outside any section) in the
realmode linker script. Some versions of GNU ld are known to be
unhappy about symbols defined in a section that is otherwise empty.
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
Link: http://lkml.kernel.org/r/1336501366-28617-9-git-send-email-jarkko.sakkinen@intel.com
-rw-r--r-- | scripts/x86-relocs.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/scripts/x86-relocs.c b/scripts/x86-relocs.c index 02914706e5b9..74e16bb15dc4 100644 --- a/scripts/x86-relocs.c +++ b/scripts/x86-relocs.c | |||
@@ -62,6 +62,13 @@ static const char * const sym_regex_kernel[S_NSYMTYPES] = { | |||
62 | 62 | ||
63 | static const char * const sym_regex_realmode[S_NSYMTYPES] = { | 63 | static const char * const sym_regex_realmode[S_NSYMTYPES] = { |
64 | /* | 64 | /* |
65 | * These symbols are known to be relative, even if the linker marks them | ||
66 | * as absolute (typically defined outside any section in the linker script.) | ||
67 | */ | ||
68 | [S_REL] = | ||
69 | "^pa_", | ||
70 | |||
71 | /* | ||
65 | * These are 16-bit segment symbols when compiling 16-bit code. | 72 | * These are 16-bit segment symbols when compiling 16-bit code. |
66 | */ | 73 | */ |
67 | [S_SEG] = | 74 | [S_SEG] = |