diff options
| author | Russell King <rmk@flint.arm.linux.org.uk> | 2002-11-21 00:04:45 +0000 |
|---|---|---|
| committer | Russell King <rmk@flint.arm.linux.org.uk> | 2002-11-21 00:04:45 +0000 |
| commit | fbbe4a70f169cdaebe48fc9bd0d5594605ebb4ac (patch) | |
| tree | af2a81cca6be343a912be0d27ce9fa0631415b27 /include/linux/elf.h | |
| parent | 93eb95edc7d268945d10969f8e5e9f0ac35e86ce (diff) | |
[ARM] Fix ARM module support
This cset allows ARM modules to work again. The solution was
suggested by Andi Kleen.
We shrink the available user space size by 16MB, thereby opening up
a window in virtual memory space between user space and the kernel
direct mapped RAM. We place modules into this space, and, since the
kernel image is always at the bottom of kernel direct mapped RAM, we
can be assured that any 24-bit PC relocations (which have a range
of +/- 32MB) will always be able to reach the kernel.
Diffstat (limited to 'include/linux/elf.h')
| -rw-r--r-- | include/linux/elf.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/include/linux/elf.h b/include/linux/elf.h index 0fc8629ac459..04a7ae9a30a2 100644 --- a/include/linux/elf.h +++ b/include/linux/elf.h @@ -200,6 +200,10 @@ typedef struct { #define ELF64_R_SYM(i) ((i) >> 32) #define ELF64_R_TYPE(i) ((i) & 0xffffffff) +#define R_ARM_NONE 0 +#define R_ARM_PC24 1 +#define R_ARM_ABS32 2 + #define R_386_NONE 0 #define R_386_32 1 #define R_386_PC32 2 |
