12 #include <linux/module.h>
14 #include <linux/kernel.h>
16 #include <linux/elf.h>
19 #include <linux/string.h>
22 #include <asm/pgtable.h>
23 #include <asm/sections.h>
59 "section %d reloc %d\n",
60 module->
name, relindex,
i);
69 "section %d reloc %d offset %d size %d\n",
89 offset = (*(
u32 *)loc & 0x00ffffff) << 2;
90 if (offset & 0x02000000)
95 offset <= (
s32)0xfe000000 ||
96 offset >= (
s32)0x02000000) {
98 "%s: relocation out of range, section "
99 "%d reloc %d sym '%s'\n", module->
name,
100 relindex,
i, strtab + sym->
st_name);
106 *(
u32 *)loc &= 0xff000000;
107 *(
u32 *)loc |= offset & 0x00ffffff;