X-Git-Url: http://git.cascardo.info/?a=blobdiff_plain;f=arch%2Ftile%2Fkernel%2Fmodule.c;fp=arch%2Ftile%2Fkernel%2Fmodule.c;h=f68df69f1f67bcc20ab6e90708014240887a7c50;hb=229f4df1fb84e5d3306b4fc49b41f7847340092d;hp=e2ab82b7c7e7122fcc2c8d48cd1ac0f2f7fa61c3;hpb=7194988fb5add6341b95f4501f6778bf27b4d3de;p=cascardo%2Flinux.git diff --git a/arch/tile/kernel/module.c b/arch/tile/kernel/module.c index e2ab82b7c7e7..f68df69f1f67 100644 --- a/arch/tile/kernel/module.c +++ b/arch/tile/kernel/module.c @@ -22,6 +22,7 @@ #include #include #include +#include #ifdef __tilegx__ # define Elf_Rela Elf64_Rela @@ -86,8 +87,13 @@ error: void module_free(struct module *mod, void *module_region) { vfree(module_region); + + /* Globally flush the L1 icache. */ + flush_remote(0, HV_FLUSH_EVICT_L1I, cpu_online_mask, + 0, 0, 0, NULL, NULL, 0); + /* - * FIXME: If module_region == mod->init_region, trim exception + * FIXME: If module_region == mod->module_init, trim exception * table entries. */ }