patch-2.3.13 linux/include/asm-alpha/pgtable.h
Next file: linux/include/asm-alpha/processor.h
Previous file: linux/include/asm-alpha/parport.h
Back to the patch index
Back to the overall index
- Lines: 47
- Date:
Thu Jul 29 13:37:22 1999
- Orig file:
v2.3.12/linux/include/asm-alpha/pgtable.h
- Orig date:
Wed Jul 21 15:46:48 1999
diff -u --recursive --new-file v2.3.12/linux/include/asm-alpha/pgtable.h linux/include/asm-alpha/pgtable.h
@@ -46,12 +46,7 @@
{
}
-__EXTERN_INLINE void
-ev5_flush_tlb_current(struct mm_struct *mm)
-{
- get_new_mmu_context(current, mm);
- reload_context(current);
-}
+extern void ev5_flush_tlb_current(struct mm_struct *mm);
__EXTERN_INLINE void
ev5_flush_tlb_other(struct mm_struct *mm)
@@ -394,22 +389,6 @@
extern inline pte_t pte_mkdirty(pte_t pte) { pte_val(pte) |= __DIRTY_BITS; return pte; }
extern inline pte_t pte_mkyoung(pte_t pte) { pte_val(pte) |= __ACCESS_BITS; return pte; }
-/*
- * To set the page-dir. Note the self-mapping in the last entry
- *
- * Also note that if we update the current process ptbr, we need to
- * update the PAL-cached ptbr value as well.. There doesn't seem to
- * be any "wrptbr" PAL-insn, but we can do a dummy swpctx to ourself
- * instead.
- */
-extern inline void SET_PAGE_DIR(struct task_struct * tsk, pgd_t * pgdir)
-{
- pgd_val(pgdir[PTRS_PER_PGD]) = pte_val(mk_pte((unsigned long) pgdir, PAGE_KERNEL));
- tsk->tss.ptbr = ((unsigned long) pgdir - PAGE_OFFSET) >> PAGE_SHIFT;
- if (tsk == current)
- reload_context(tsk);
-}
-
#define PAGE_DIR_OFFSET(tsk,address) pgd_offset((tsk),(address))
/* to find an entry in a kernel page-table-directory */
@@ -462,6 +441,9 @@
memset (ret, 0, USER_PTRS_PER_PGD * sizeof(pgd_t));
memcpy (ret + USER_PTRS_PER_PGD, init + USER_PTRS_PER_PGD,
(PTRS_PER_PGD - USER_PTRS_PER_PGD) * sizeof(pgd_t));
+
+ pgd_val(ret[PTRS_PER_PGD])
+ = pte_val(mk_pte((unsigned long)ret, PAGE_KERNEL));
}
return ret;
}
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)