ppc64: Fix typo bug in iSeries hash code

From: David Gibson
Date: Thu Oct 20 2005 - 22:41:52 EST


Linus, please apply for 2.6.14 - this one-liner fixes a serious bug.

This patch fixes a stupid typo bug in the iSeries hash table code.
When we place a hash PTE in the secondary bucket, instead of setting
the SECONDARY flag bit, as we should, we (redundantly) set the VALID
flag. This was introduced with the patch abolishing bitfields from
the hash table code. Mea culpa, oops. It hasn't been noticed until
now because in practice we don't hit the secondary bucket terribly
often.

Signed-off-by: David Gibson <dwg@xxxxxxxxxxx>

Index: working-2.6/arch/ppc64/kernel/iSeries_htab.c
===================================================================
--- working-2.6.orig/arch/ppc64/kernel/iSeries_htab.c 2005-10-21 13:29:50.000000000 +1000
+++ working-2.6/arch/ppc64/kernel/iSeries_htab.c 2005-10-21 13:30:55.000000000 +1000
@@ -66,7 +66,7 @@
}

if (slot < 0) { /* MSB set means secondary group */
- vflags |= HPTE_V_VALID;
+ vflags |= HPTE_V_SECONDARY;
secondary = 1;
slot &= 0x7fffffffffffffff;
}


--
David Gibson | I'll have my music baroque, and my code
david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_
| _way_ _around_!
http://www.ozlabs.org/people/dgibson
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/