From: "Aneesh Kumar K.V" <aneesh.kumar@linux.vnet.ibm.com>
To: benh@kernel.crashing.org, paulus@samba.org
Cc: Andrea Arcangeli <aarcange@redhat.com>,
linuxppc-dev@lists.ozlabs.org,
"Aneesh Kumar K.V" <aneesh.kumar@linux.vnet.ibm.com>
Subject: [PATCH -V3 14/25] mm/THP: HPAGE_SHIFT is not a #define on some arch
Date: Fri, 15 Mar 2013 15:09:56 +0530 [thread overview]
Message-ID: <1363340407-22619-15-git-send-email-aneesh.kumar@linux.vnet.ibm.com> (raw)
In-Reply-To: <1363340407-22619-1-git-send-email-aneesh.kumar@linux.vnet.ibm.com>
From: "Aneesh Kumar K.V" <aneesh.kumar@linux.vnet.ibm.com>
On archs like powerpc that support different hugepage sizes, HPAGE_SHIFT
and other derived values like HPAGE_PMD_ORDER are not constants. So move
that to hugepage_init
Cc: Andrea Arcangeli <aarcange@redhat.com>
Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
---
include/linux/huge_mm.h | 3 ---
mm/huge_memory.c | 9 ++++++---
2 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/include/linux/huge_mm.h b/include/linux/huge_mm.h
index 1d76f8c..0022b70 100644
--- a/include/linux/huge_mm.h
+++ b/include/linux/huge_mm.h
@@ -119,9 +119,6 @@ extern void __split_huge_page_pmd(struct vm_area_struct *vma,
} while (0)
extern void split_huge_page_pmd_mm(struct mm_struct *mm, unsigned long address,
pmd_t *pmd);
-#if HPAGE_PMD_ORDER > MAX_ORDER
-#error "hugepages can't be allocated by the buddy allocator"
-#endif
extern int hugepage_madvise(struct vm_area_struct *vma,
unsigned long *vm_flags, int advice);
extern void __vma_adjust_trans_huge(struct vm_area_struct *vma,
diff --git a/mm/huge_memory.c b/mm/huge_memory.c
index b5783d8..1940ee0 100644
--- a/mm/huge_memory.c
+++ b/mm/huge_memory.c
@@ -44,7 +44,7 @@ unsigned long transparent_hugepage_flags __read_mostly =
(1<<TRANSPARENT_HUGEPAGE_USE_ZERO_PAGE_FLAG);
/* default scan 8*512 pte (or vmas) every 30 second */
-static unsigned int khugepaged_pages_to_scan __read_mostly = HPAGE_PMD_NR*8;
+static unsigned int khugepaged_pages_to_scan __read_mostly;
static unsigned int khugepaged_pages_collapsed;
static unsigned int khugepaged_full_scans;
static unsigned int khugepaged_scan_sleep_millisecs __read_mostly = 10000;
@@ -59,7 +59,7 @@ static DECLARE_WAIT_QUEUE_HEAD(khugepaged_wait);
* it would have happened if the vma was large enough during page
* fault.
*/
-static unsigned int khugepaged_max_ptes_none __read_mostly = HPAGE_PMD_NR-1;
+static unsigned int khugepaged_max_ptes_none __read_mostly;
static int khugepaged(void *none);
static int mm_slots_hash_init(void);
@@ -621,11 +621,14 @@ static int __init hugepage_init(void)
int err;
struct kobject *hugepage_kobj;
- if (!has_transparent_hugepage()) {
+ if (!has_transparent_hugepage() || (HPAGE_PMD_ORDER > MAX_ORDER)) {
transparent_hugepage_flags = 0;
return -EINVAL;
}
+ khugepaged_pages_to_scan = HPAGE_PMD_NR*8;
+ khugepaged_max_ptes_none = HPAGE_PMD_NR-1;
+
err = hugepage_init_sysfs(&hugepage_kobj);
if (err)
return err;
--
1.7.10
next prev parent reply other threads:[~2013-03-15 9:41 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-03-15 9:39 [PATCH -V3 00/25] THP support for PPC64 Aneesh Kumar K.V
2013-03-15 9:39 ` [PATCH -V3 01/25] powerpc: Use signed formatting when printing error Aneesh Kumar K.V
2013-03-15 9:39 ` [PATCH -V3 02/25] powerpc: Save DAR and DSISR in pt_regs on MCE Aneesh Kumar K.V
2013-03-15 9:39 ` [PATCH -V3 03/25] powerpc: Don't hard code the size of pte page Aneesh Kumar K.V
2013-03-15 9:39 ` [PATCH -V3 04/25] powerpc: Reduce the PTE_INDEX_SIZE Aneesh Kumar K.V
2013-03-15 9:39 ` [PATCH -V3 05/25] powerpc: Move the pte free routines from common header Aneesh Kumar K.V
2013-03-15 9:39 ` [PATCH -V3 06/25] powerpc: Reduce PTE table memory wastage Aneesh Kumar K.V
2013-03-15 9:39 ` [PATCH -V3 07/25] powerpc: Use encode avpn where we need only avpn values Aneesh Kumar K.V
2013-03-15 9:39 ` [PATCH -V3 08/25] powerpc: Decode the pte-lp-encoding bits correctly Aneesh Kumar K.V
2013-03-15 9:39 ` [PATCH -V3 09/25] powerpc: Fix hpte_decode to use the correct decoding for page sizes Aneesh Kumar K.V
2013-03-15 9:39 ` [PATCH -V3 10/25] powerpc: Return all the valid pte ecndoing in KVM_PPC_GET_SMMU_INFO ioctl Aneesh Kumar K.V
2013-03-15 9:39 ` [PATCH -V3 11/25] powerpc: Update tlbie/tlbiel as per ISA doc Aneesh Kumar K.V
2013-03-15 9:39 ` [PATCH -V3 12/25] powerpc: print both base and actual page size on hash failure Aneesh Kumar K.V
2013-03-15 9:39 ` [PATCH -V3 13/25] powerpc: Print page size info during boot Aneesh Kumar K.V
2013-03-15 9:39 ` Aneesh Kumar K.V [this message]
2013-03-15 9:39 ` [PATCH -V3 15/25] mm/THP: Add pmd args to pgtable deposit and withdraw APIs Aneesh Kumar K.V
2013-03-15 9:39 ` [PATCH -V3 16/25] mm/THP: withdraw the pgtable after pmdp related operations Aneesh Kumar K.V
2013-03-15 9:39 ` [PATCH -V3 17/25] powerpc/THP: Implement transparent hugepages for ppc64 Aneesh Kumar K.V
2013-03-15 9:40 ` [PATCH -V3 18/25] powerpc/THP: Double the PMD table size for THP Aneesh Kumar K.V
2013-03-15 9:40 ` [PATCH -V3 19/25] powerpc/THP: Differentiate THP PMD entries from HUGETLB PMD entries Aneesh Kumar K.V
2013-03-15 9:40 ` [PATCH -V3 20/25] powerpc/THP: Add code to handle HPTE faults for large pages Aneesh Kumar K.V
2013-03-15 9:40 ` [PATCH -V3 21/25] powerpc: Handle hugepage in perf callchain Aneesh Kumar K.V
2013-03-15 9:40 ` [PATCH -V3 22/25] powerpc/THP: get_user_pages_fast changes Aneesh Kumar K.V
2013-03-15 9:40 ` [PATCH -V3 23/25] powerpc/THP: Enable THP on PPC64 Aneesh Kumar K.V
2013-03-15 9:40 ` [PATCH -V3 24/25] powerpc: Optimize hugepage invalidate Aneesh Kumar K.V
2013-03-15 9:40 ` [PATCH -V3 25/25] powerpc: Handle hugepages in kvm Aneesh Kumar K.V
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1363340407-22619-15-git-send-email-aneesh.kumar@linux.vnet.ibm.com \
--to=aneesh.kumar@linux.vnet.ibm.com \
--cc=aarcange@redhat.com \
--cc=benh@kernel.crashing.org \
--cc=linuxppc-dev@lists.ozlabs.org \
--cc=paulus@samba.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.