summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMark Rutland <mark.rutland@arm.com>2014-02-05 10:24:13 +0000
committerCatalin Marinas <catalin.marinas@arm.com>2014-02-05 10:45:07 +0000
commit883d50a0ed403446437444a495356ce31e1197a3 (patch)
tree6e2e6080ba260e114344cf25314c80e4439b2303
parentbfb67a5606376bb32cb6f93dc05cda2e8c2038a5 (diff)
downloadlinux-883d50a0ed403446437444a495356ce31e1197a3.tar.gz
linux-883d50a0ed403446437444a495356ce31e1197a3.tar.bz2
linux-883d50a0ed403446437444a495356ce31e1197a3.zip
arm64: simplify pgd_alloc
Currently pgd_alloc has a redundant NULL check in its return path that can be removed with no ill effects. With that removed it's also possible to return early and eliminate the new_pgd temporary variable. This patch applies said modifications, making the logic of pgd_alloc correspond 1-1 with that of pgd_free. Signed-off-by: Mark Rutland <mark.rutland@arm.com> Cc: Will Deacon <will.deacon@arm.com> Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
-rw-r--r--arch/arm64/mm/pgd.c11
1 files changed, 2 insertions, 9 deletions
diff --git a/arch/arm64/mm/pgd.c b/arch/arm64/mm/pgd.c
index 7083cdada657..62c6101df260 100644
--- a/arch/arm64/mm/pgd.c
+++ b/arch/arm64/mm/pgd.c
@@ -32,17 +32,10 @@
pgd_t *pgd_alloc(struct mm_struct *mm)
{
- pgd_t *new_pgd;
-
if (PGD_SIZE == PAGE_SIZE)
- new_pgd = (pgd_t *)get_zeroed_page(GFP_KERNEL);
+ return (pgd_t *)get_zeroed_page(GFP_KERNEL);
else
- new_pgd = kzalloc(PGD_SIZE, GFP_KERNEL);
-
- if (!new_pgd)
- return NULL;
-
- return new_pgd;
+ return kzalloc(PGD_SIZE, GFP_KERNEL);
}
void pgd_free(struct mm_struct *mm, pgd_t *pgd)