[PATCH] RM9000 icache problem

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



The code to work around the RM9000 icache problems is wrong and
ineffective. The patch below fixes that.

Signed-off-by: Thomas Koeller  <thomas.koeller@xxxxxxxxxxxxx>

--- linux.git/arch/mips/kernel/signal-common.h	2005-11-02 13:21:29.000000000 +0100
+++ linux-2.6.14-5/arch/mips/kernel/signal-common.h	2006-02-10 12:48:50.000000000 +0100
@@ -176,7 +176,7 @@
 	if ((ka->sa.sa_flags & SA_ONSTACK) && (sas_ss_flags (sp) == 0))
 		sp = current->sas_ss_sp + current->sas_ss_size;
 
-	return (void *)((sp - frame_size) & (ICACHE_REFILLS_WORKAROUND_WAR ? 32 : ALMASK));
+	return (void *)((sp - frame_size) & (ICACHE_REFILLS_WORKAROUND_WAR ? ~(cpu_icache_line_size()-1) : ALMASK));
 }
 
 static inline int install_sigtramp(unsigned int __user *tramp,



-- 
--------------------------------------------------

Thomas Koeller, Software Development
Basler Vision Technologies

thomas dot koeller at baslerweb dot com
http://www.baslerweb.com

==============================



[Index of Archives]     [Linux MIPS Home]     [LKML Archive]     [Linux ARM Kernel]     [Linux ARM]     [Linux]     [Git]     [Yosemite News]     [Linux SCSI]     [Linux Hams]

  Powered by Linux