generic, x86: fix __per_cpu_load relocation
This patch fixes this linker error: WARNING: Absolute relocations present Offset Info Type Sym.Value Sym.Name c0a4e07d 00e78001 R_386_32 c0ab0000 __per_cpu_load Now, __per_cpu_load is a section-relative symbol: c0aa4000 D __per_cpu_load c0aa4000 A __per_cpu_load_abs Signed-off-by: Brian Gerst <brgerst@gmail.com> Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
parent
99d0000f71
commit
5a611268b6
1 changed files with 4 additions and 3 deletions
|
@ -451,17 +451,18 @@
|
||||||
* end offset.
|
* end offset.
|
||||||
*/
|
*/
|
||||||
#define PERCPU_VADDR(vaddr, phdr) \
|
#define PERCPU_VADDR(vaddr, phdr) \
|
||||||
VMLINUX_SYMBOL(__per_cpu_load) = .; \
|
VMLINUX_SYMBOL(__per_cpu_load_abs) = .; \
|
||||||
.data.percpu vaddr : AT(VMLINUX_SYMBOL(__per_cpu_load) \
|
.data.percpu vaddr : AT(VMLINUX_SYMBOL(__per_cpu_load_abs) \
|
||||||
- LOAD_OFFSET) { \
|
- LOAD_OFFSET) { \
|
||||||
VMLINUX_SYMBOL(__per_cpu_start) = .; \
|
VMLINUX_SYMBOL(__per_cpu_start) = .; \
|
||||||
|
VMLINUX_SYMBOL(__per_cpu_load) = LOADADDR(.data.percpu) + LOAD_OFFSET;\
|
||||||
*(.data.percpu.first) \
|
*(.data.percpu.first) \
|
||||||
*(.data.percpu.page_aligned) \
|
*(.data.percpu.page_aligned) \
|
||||||
*(.data.percpu) \
|
*(.data.percpu) \
|
||||||
*(.data.percpu.shared_aligned) \
|
*(.data.percpu.shared_aligned) \
|
||||||
VMLINUX_SYMBOL(__per_cpu_end) = .; \
|
VMLINUX_SYMBOL(__per_cpu_end) = .; \
|
||||||
} phdr \
|
} phdr \
|
||||||
. = VMLINUX_SYMBOL(__per_cpu_load) + SIZEOF(.data.percpu);
|
. = VMLINUX_SYMBOL(__per_cpu_load_abs) + SIZEOF(.data.percpu);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* PERCPU - define output section for percpu area, simple version
|
* PERCPU - define output section for percpu area, simple version
|
||||||
|
|
Reference in a new issue