From: Luming Yu <luyu@redhat.com> Date: Sat, 13 Sep 2008 00:52:38 +0800 Subject: [ia64] set default max_purges=1 regardless of PAL return Message-id: 48CA9E56.5070807@redhat.com O-Subject: [RHEL 5.3 PATCH 1/1] bz 451593: set max_purges=1 by default regardless what PAL returns Bugzilla: 451593 RH-Acked-by: Prarit Bhargava <prarit@redhat.com> Update the patch series against -105 kernel. And add one more patch to set max_purges=1 by default regardless what PAL returns to make sure no regressions. Please revew and ACKs. NOTE: to apply, please keep it in this order: 1. [RHEL 5.3 PATCH 1/2] bz 451593: Multiple outstanding ptc.g instruction support 2. [RHEL 5.3 PATCH 2/2] bz 451593: Kernel parameter for max number of concurrent global TLB purges 3. [RHEL 5.3 PATCH 1/1] bz 451593: set max_purges=1 by default regardless what PAL returns Test status: Boot fine on tiger4 and Cold fusion, and nothing unusual found. Please review and ACK. Thanks, Luming diff --git a/arch/ia64/kernel/setup.c b/arch/ia64/kernel/setup.c index 3e8b5f8..f96c41d 100644 --- a/arch/ia64/kernel/setup.c +++ b/arch/ia64/kernel/setup.c @@ -1069,6 +1069,11 @@ cpu_init (void) /* set ia64_ctx.max_rid to the maximum RID that is supported by all CPUs: */ if (ia64_pal_vm_summary(NULL, &vmi) == 0) { max_ctx = (1U << (vmi.pal_vm_info_2_s.rid_size - 3)) - 1; + if (vmi.pal_vm_info_2_s.max_purges!=1){ + printk(KERN_WARNING "cpu_init: PAL max_purges is overridden to 1 " + "PALO is required for multiple outsanding ptc.g \n"); + vmi.pal_vm_info_2_s.max_purges = 1; + } setup_ptcg_sem(vmi.pal_vm_info_2_s.max_purges, NPTCG_FROM_PAL); } else { printk(KERN_WARNING "cpu_init: PAL VM summary failed, assuming 18 RID bits\n");