hc
2024-05-10 37f49e37ab4cb5d0bc4c60eb5c6d4dd57db767bb
kernel/arch/m68k/mm/cache.c
....@@ -8,7 +8,7 @@
88 */
99
1010 #include <linux/module.h>
11
-#include <asm/pgalloc.h>
11
+#include <asm/cacheflush.h>
1212 #include <asm/traps.h>
1313
1414
....@@ -73,7 +73,7 @@
7373
7474 /* Push n pages at kernel virtual address and clear the icache */
7575 /* RZ: use cpush %bc instead of cpush %dc, cinv %ic */
76
-void flush_icache_range(unsigned long address, unsigned long endaddr)
76
+void flush_icache_user_range(unsigned long address, unsigned long endaddr)
7777 {
7878 if (CPU_IS_COLDFIRE) {
7979 unsigned long start, end;
....@@ -104,9 +104,18 @@
104104 : "di" (FLUSH_I));
105105 }
106106 }
107
+
108
+void flush_icache_range(unsigned long address, unsigned long endaddr)
109
+{
110
+ mm_segment_t old_fs = get_fs();
111
+
112
+ set_fs(KERNEL_DS);
113
+ flush_icache_user_range(address, endaddr);
114
+ set_fs(old_fs);
115
+}
107116 EXPORT_SYMBOL(flush_icache_range);
108117
109
-void flush_icache_user_range(struct vm_area_struct *vma, struct page *page,
118
+void flush_icache_user_page(struct vm_area_struct *vma, struct page *page,
110119 unsigned long addr, int len)
111120 {
112121 if (CPU_IS_COLDFIRE) {