summaryrefslogtreecommitdiffstats
path: root/include/linux/moduleloader.h
diff options
context:
space:
mode:
authorHelge Deller <deller@gmx.de>2008-12-31 12:31:18 +0100
committerRusty Russell <rusty@rustcorp.com.au>2009-01-05 08:40:13 +1030
commit088af9a6e05d51e7c3dc85d45d8b7a52c3ee08d7 (patch)
tree86e2dd6be7fbc17cb01a42fc11f5eef794a824df /include/linux/moduleloader.h
parentd1e99d7ae4e6bbd1ebb5e81ecd3af2b8793efee0 (diff)
downloadlinux-088af9a6e05d51e7c3dc85d45d8b7a52c3ee08d7.tar.gz
linux-088af9a6e05d51e7c3dc85d45d8b7a52c3ee08d7.tar.bz2
linux-088af9a6e05d51e7c3dc85d45d8b7a52c3ee08d7.zip
module: fix module loading failure of large kernel modules for parisc
When creating the final layout of a kernel module in memory, allow the module loader to reserve some additional memory in front of a given section. This is currently only needed for the parisc port which needs to put the stub entries there to fulfill the 17/22bit PCREL relocations with large kernel modules like xfs. Signed-off-by: Helge Deller <deller@gmx.de> Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> (renamed fn)
Diffstat (limited to 'include/linux/moduleloader.h')
-rw-r--r--include/linux/moduleloader.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/include/linux/moduleloader.h b/include/linux/moduleloader.h
index eb1033957486..c1f40c2f7ffb 100644
--- a/include/linux/moduleloader.h
+++ b/include/linux/moduleloader.h
@@ -13,6 +13,9 @@ int module_frob_arch_sections(Elf_Ehdr *hdr,
char *secstrings,
struct module *mod);
+/* Additional bytes needed by arch in front of individual sections */
+unsigned int arch_mod_section_prepend(struct module *mod, unsigned int section);
+
/* Allocator used for allocating struct module, core sections and init
sections. Returns NULL on failure. */
void *module_alloc(unsigned long size);