diff options
author | Kanoj Sarcar <kanoj@engr.sgi.com> | 2000-03-16 21:32:21 +0000 |
---|---|---|
committer | Kanoj Sarcar <kanoj@engr.sgi.com> | 2000-03-16 21:32:21 +0000 |
commit | 8715f08b6d43c992ddd35ec941edac13b6515819 (patch) | |
tree | 21125166e006df52b325f031be66134033383bc1 /include/asm-mips64/pgalloc.h | |
parent | f91ca86d6e89dddf17baf2f79936ed3cf2feb5ac (diff) |
The pte quicklist and pmd quicklists need to be different. This is because
"empty" page tables and pmd tables are initialized to different values
(page tables are 0ed, pmd tables are made to point to invalid_pte_table),
hence these 2 different types of objects can not use the same list. Else
pmd_none and pte_none get confused.
Diffstat (limited to 'include/asm-mips64/pgalloc.h')
-rw-r--r-- | include/asm-mips64/pgalloc.h | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/include/asm-mips64/pgalloc.h b/include/asm-mips64/pgalloc.h index 54e95eaf0..f619b0661 100644 --- a/include/asm-mips64/pgalloc.h +++ b/include/asm-mips64/pgalloc.h @@ -1,4 +1,4 @@ -/* $Id: pgalloc.h,v 1.2 2000/02/23 00:41:38 ralf Exp $ +/* $Id: pgalloc.h,v 1.3 2000/02/24 00:13:20 ralf Exp $ * * This file is subject to the terms and conditions of the GNU General Public * License. See the file "COPYING" in the main directory of this archive @@ -109,8 +109,8 @@ extern inline pmd_t *get_pmd_fast(void) { unsigned long *ret; - if ((ret = (unsigned long *)pte_quicklist) != NULL) { - pte_quicklist = (unsigned long *)(*ret); + if ((ret = (unsigned long *)pmd_quicklist) != NULL) { + pmd_quicklist = (unsigned long *)(*ret); ret[0] = ret[1]; pgtable_cache_size--; return (pmd_t *)ret; @@ -121,8 +121,8 @@ extern inline pmd_t *get_pmd_fast(void) extern inline void free_pmd_fast(pmd_t *pmd) { - *(unsigned long *)pmd = (unsigned long) pte_quicklist; - pte_quicklist = (unsigned long *) pmd; + *(unsigned long *)pmd = (unsigned long) pmd_quicklist; + pmd_quicklist = (unsigned long *) pmd; pgtable_cache_size++; } |