From: Prasad Joshi <prasadjoshi124@gmail.com>
To: tony.luck@intel.com, fenghua.yu@intel.com,
linux-ia64@vger.kernel.org, linux-kernel@vger.kernel.org,
prasadjoshi124@gmail.com, mitra@kqinfotech.com
Subject: Re: [RFC][PATCH v3 17/22] mm, ia64: add gfp flags variant of pud,
Date: Fri, 18 Mar 2011 20:05:47 +0000 [thread overview]
Message-ID: <20110318200547.GR4746@prasad-kvm> (raw)
In-Reply-To: <20110318200452.GQ4746@prasad-kvm>
- Added __pud_alloc_one which allows caller to specify the gfp_t flag.
Like pud_alloc_one the function calls quicklist_alloc() and passes
the given allocation flag.
- Changed pud_alloc_one to call __pud_alloc_one using GFP_KERNEL.
- Added similar changes for pte and pmd allocation functions.
- Helps in fixing the Bug 30702.
Signed-off-by: Prasad Joshi <prasadjoshi124@gmail.com>
Signed-off-by: Anand Mitra <mitra@kqinfotech.com>
---
arch/ia64/include/asm/pgalloc.h | 24 +++++++++++++++++++++---
1 files changed, 21 insertions(+), 3 deletions(-)
diff --git a/arch/ia64/include/asm/pgalloc.h b/arch/ia64/include/asm/pgalloc.h
index 96a8d92..0e46e47 100644
--- a/arch/ia64/include/asm/pgalloc.h
+++ b/arch/ia64/include/asm/pgalloc.h
@@ -39,9 +39,15 @@ pgd_populate(struct mm_struct *mm, pgd_t * pgd_entry, pud_t * pud)
pgd_val(*pgd_entry) = __pa(pud);
}
+static inline pud_t *
+__pud_alloc_one(struct mm_struct *mm, unsigned long addr, gfp_t gfp_mask)
+{
+ return quicklist_alloc(0, gfp_mask, NULL);
+}
+
static inline pud_t *pud_alloc_one(struct mm_struct *mm, unsigned long addr)
{
- return quicklist_alloc(0, GFP_KERNEL, NULL);
+ return __pud_alloc_one(mm, addr, GFP_KERNEL);
}
static inline void pud_free(struct mm_struct *mm, pud_t *pud)
@@ -57,9 +63,15 @@ pud_populate(struct mm_struct *mm, pud_t * pud_entry, pmd_t * pmd)
pud_val(*pud_entry) = __pa(pmd);
}
+static inline pmd_t *
+__pmd_alloc_one(struct mm_struct *mm, unsigned long addr, gfp_t gfp_mask)
+{
+ return quicklist_alloc(0, gfp_mask, NULL);
+}
+
static inline pmd_t *pmd_alloc_one(struct mm_struct *mm, unsigned long addr)
{
- return quicklist_alloc(0, GFP_KERNEL, NULL);
+ return __pmd_alloc_one(mm, addr, GFP_KERNEL);
}
static inline void pmd_free(struct mm_struct *mm, pmd_t *pmd)
@@ -95,10 +107,16 @@ static inline pgtable_t pte_alloc_one(struct mm_struct *mm, unsigned long addr)
return page;
}
+static inline pte_t *__pte_alloc_one_kernel(struct mm_struct *mm,
+ unsigned long addr, gfp_t gfp_mask)
+{
+ return quicklist_alloc(0, gfp_mask, NULL);
+}
+
static inline pte_t *pte_alloc_one_kernel(struct mm_struct *mm,
unsigned long addr)
{
- return quicklist_alloc(0, GFP_KERNEL, NULL);
+ return __pte_alloc_one_kernel(mm, addr, GFP_KERNEL);
}
static inline void pte_free(struct mm_struct *mm, pgtable_t pte)
--
1.7.0.4
parent reply other threads:[~2011-03-18 20:05 UTC|newest]
Thread overview: expand[flat|nested] mbox.gz Atom feed
[parent not found: <20110318200452.GQ4746@prasad-kvm>]
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=20110318200547.GR4746@prasad-kvm \
--to=prasadjoshi124@gmail.com \
--cc=fenghua.yu@intel.com \
--cc=linux-ia64@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mitra@kqinfotech.com \
--cc=tony.luck@intel.com \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox