All of lore.kernel.org
 help / color / mirror / Atom feed
* [patch] ip27's _flush_cache_all uninitialized
@ 2003-02-13  6:00 Andrew Clausen
  2003-02-14  1:58 ` Ralf Baechle
  0 siblings, 1 reply; 4+ messages in thread
From: Andrew Clausen @ 2003-02-13  6:00 UTC (permalink / raw)
  To: Linux-MIPS; +Cc: ralf, mg, gnb

Hi all,

_flush_cache_all() and ___flush_cache_all() were uninitialized
(i.e. NULL).  Someone probably assumed (incorrectly) that this
was ok, since flush_cache_all() doesn't use _flush_cache_all()
(or so they thought...).

End result: anything that called flush_cache_all() (a macro)
tried to call a function at 0x0, and died.  This includes vmalloc().

I'm not sure what the best solution is, but this makes things work:

--- arch/mips64/mm/c-andes.c	9 Feb 2003 22:03:23 -0000	1.1.2.2
+++ arch/mips64/mm/c-andes.c	13 Feb 2003 05:50:54 -0000
@@ -48,6 +48,12 @@
 	}
 }
 
+static void andes_flush_cache_all(void)
+{
+	andes_flush_cache_l1();
+	andes_flush_cache_l2();
+}
+
 void andes_flush_icache_page(unsigned long page)
 {
 	if (scache_lsz64)
@@ -80,6 +86,7 @@
 	_clear_page = andes_clear_page;
 	_copy_page = andes_copy_page;
 
+	_flush_cache_all = ___flush_cache_all = andes_flush_cache_all;
 	_flush_cache_l1 = andes_flush_cache_l1;
 	_flush_cache_l2 = andes_flush_cache_l2;
 	_flush_cache_sigtramp = andes_flush_cache_sigtramp;


Cheers,
Andrew

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2003-02-14  2:36 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2003-02-13  6:00 [patch] ip27's _flush_cache_all uninitialized Andrew Clausen
2003-02-14  1:58 ` Ralf Baechle
2003-02-14  2:21   ` Andrew Clausen
2003-02-14  2:36     ` Ralf Baechle

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.