Explorar o código

[IA64] bugfix: nptcg breaks cpu-hotadd

If "max_purges" from PAL is 0, it actually means 1.

However it was not handled later when a hot-added cpu pass the
max_purges from PAL.  This makes systems easy to go BUG_ON().

Signed-off-by: Hidetoshi Seto <seto.hidetoshi@jp.fujitsu.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
Hidetoshi Seto %!s(int64=17) %!d(string=hai) anos
pai
achega
e617fce64e
Modificáronse 1 ficheiros con 4 adicións e 1 borrados
  1. 4 1
      arch/ia64/mm/tlb.c

+ 4 - 1
arch/ia64/mm/tlb.c

@@ -168,7 +168,10 @@ setup_ptcg_sem(int max_purges, int nptcg_from)
 	static int firstcpu = 1;
 	static int firstcpu = 1;
 
 
 	if (toolatetochangeptcgsem) {
 	if (toolatetochangeptcgsem) {
-		BUG_ON(max_purges < nptcg);
+		if (nptcg_from == NPTCG_FROM_PAL && max_purges == 0)
+			BUG_ON(1 < nptcg);
+		else
+			BUG_ON(max_purges < nptcg);
 		return;
 		return;
 	}
 	}