2004-04-15 05:44:11

by David Gibson

[permalink] [raw]
Subject: PPC64 hugepage cleanup

Andrew, please apply. This is a small cleanup to the PPC64 hugepage
code. It removes an unhelpful function, removing some studlyCaps in
the process. It was originally this way to match the normal page
path, but that has all been rewritten since.

Index: working-2.6/arch/ppc64/mm/hugetlbpage.c
===================================================================
--- working-2.6.orig/arch/ppc64/mm/hugetlbpage.c 2004-04-13 11:42:35.000000000 +1000
+++ working-2.6/arch/ppc64/mm/hugetlbpage.c 2004-04-14 15:04:28.512784264 +1000
@@ -609,15 +609,6 @@
}
}

-static inline unsigned long computeHugeHptePP(unsigned int hugepte)
-{
- unsigned long flags = 0x2;
-
- if (! (hugepte & _HUGEPAGE_RW))
- flags |= 0x1;
- return flags;
-}
-
int hash_huge_page(struct mm_struct *mm, unsigned long access,
unsigned long ea, unsigned long vsid, int local)
{
@@ -671,7 +662,7 @@
old_pte = *ptep;
new_pte = old_pte;

- hpteflags = computeHugeHptePP(hugepte_val(new_pte));
+ hpteflags = 0x2 | (! (hugepte_val(new_pte) & _HUGEPAGE_RW));

/* Check if pte already has an hpte (case 2) */
if (unlikely(hugepte_val(old_pte) & _HUGEPAGE_HASHPTE)) {



--
David Gibson | For every complex problem there is a
david AT gibson.dropbear.id.au | solution which is simple, neat and
| wrong.
http://www.ozlabs.org/people/dgibson