/* * PGD allocation/freeing * * Copyright (C) 2012 ARM Ltd. * Author: Catalin Marinas <catalin.marinas@arm.com> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 as * published by the Free Software Foundation. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see <http://www.gnu.org/licenses/>. */ #include <linux/mm.h> #include <linux/gfp.h> #include <linux/highmem.h> #include <linux/slab.h> #include <asm/pgalloc.h> #include <asm/page.h> #include <asm/tlbflush.h> static struct kmem_cache *pgd_cache;
pgd_t *pgd_alloc(struct mm_struct *mm) { if (PGD_SIZE == PAGE_SIZE) return (pgd_t *)__get_free_page(PGALLOC_GFP); else return kmem_cache_alloc(pgd_cache, PGALLOC_GFP); }Contributors
Person | Tokens | Prop | Commits | CommitProp |
Catalin Marinas | 29 | 80.56% | 2 | 50.00% |
Mark Rutland | 7 | 19.44% | 2 | 50.00% |
Total | 36 | 100.00% | 4 | 100.00% |
Person | Tokens | Prop | Commits | CommitProp |
Catalin Marinas | 37 | 100.00% | 2 | 100.00% |
Total | 37 | 100.00% | 2 | 100.00% |
Person | Tokens | Prop | Commits | CommitProp |
Catalin Marinas | 27 | 87.10% | 1 | 50.00% |
Will Deacon | 4 | 12.90% | 1 | 50.00% |
Total | 31 | 100.00% | 2 | 100.00% |
Person | Tokens | Prop | Commits | CommitProp |
Catalin Marinas | 121 | 91.67% | 2 | 40.00% |
Mark Rutland | 7 | 5.30% | 2 | 40.00% |
Will Deacon | 4 | 3.03% | 1 | 20.00% |
Total | 132 | 100.00% | 5 | 100.00% |