patch-1.3.55 linux/include/asm-alpha/pgtable.h
Next file: linux/include/asm-i386/mmu_context.h
Previous file: linux/include/asm-alpha/mmu_context.h
Back to the patch index
Back to the overall index
- Lines: 38
- Date:
Sat Jan 6 14:30:11 1996
- Orig file:
v1.3.54/linux/include/asm-alpha/pgtable.h
- Orig date:
Thu Jan 4 21:54:58 1996
diff -u --recursive --new-file v1.3.54/linux/include/asm-alpha/pgtable.h linux/include/asm-alpha/pgtable.h
@@ -39,7 +39,10 @@
*/
static inline void invalidate_mm(struct mm_struct *mm)
{
- tbiap();
+ if (mm != current->mm)
+ mm->context = 0;
+ else
+ tbiap();
}
/*
@@ -53,7 +56,12 @@
static inline void invalidate_page(struct vm_area_struct *vma,
unsigned long addr)
{
- tbi(2 + ((vma->vm_flags & VM_EXEC) != 0), addr);
+ struct mm_struct * mm = vma->vm_mm;
+
+ if (mm != current->mm)
+ mm->context = 0;
+ else
+ tbi(2 + ((vma->vm_flags & VM_EXEC) != 0), addr);
}
/*
@@ -63,7 +71,10 @@
static inline void invalidate_range(struct mm_struct *mm,
unsigned long start, unsigned long end)
{
- tbiap();
+ if (mm != current->mm)
+ mm->context = 0;
+ else
+ tbiap();
}
/* Certain architectures need to do special things when pte's
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen, slshen@lbl.gov
with Sam's (original) version of this