diff options
author | Michal Simek <monstr@monstr.eu> | 2010-05-14 01:40:46 -0400 |
---|---|---|
committer | Michal Simek <monstr@monstr.eu> | 2010-05-14 01:43:38 -0400 |
commit | a5e48b88da225580394f825ffe67e444b050074b (patch) | |
tree | 2be84a73c04e0226590a5f3af88efa99fd7471de /arch/microblaze/kernel/module.c | |
parent | ee4bcdf1d248c4ebe5f73e11631c3bd3f76d777b (diff) |
microblaze: Fix module loading on system with WB cache
There is necessary to flush whole dcache. Icache work should be
done in kernel/module.c.
Signed-off-by: Michal Simek <monstr@monstr.eu>
Diffstat (limited to 'arch/microblaze/kernel/module.c')
-rw-r--r-- | arch/microblaze/kernel/module.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/microblaze/kernel/module.c b/arch/microblaze/kernel/module.c index cbecf110dc30..0e73f6606547 100644 --- a/arch/microblaze/kernel/module.c +++ b/arch/microblaze/kernel/module.c | |||
@@ -16,6 +16,7 @@ | |||
16 | #include <linux/string.h> | 16 | #include <linux/string.h> |
17 | 17 | ||
18 | #include <asm/pgtable.h> | 18 | #include <asm/pgtable.h> |
19 | #include <asm/cacheflush.h> | ||
19 | 20 | ||
20 | void *module_alloc(unsigned long size) | 21 | void *module_alloc(unsigned long size) |
21 | { | 22 | { |
@@ -151,6 +152,7 @@ int apply_relocate_add(Elf32_Shdr *sechdrs, const char *strtab, | |||
151 | int module_finalize(const Elf32_Ehdr *hdr, const Elf_Shdr *sechdrs, | 152 | int module_finalize(const Elf32_Ehdr *hdr, const Elf_Shdr *sechdrs, |
152 | struct module *module) | 153 | struct module *module) |
153 | { | 154 | { |
155 | flush_dcache(); | ||
154 | return 0; | 156 | return 0; |
155 | } | 157 | } |
156 | 158 | ||