From: Pete P. <pp...@us...> - 2002-07-15 17:24:50
|
Update of /cvsroot/linux-mips/linux/include/asm-mips In directory usw-pr-cvs1:/tmp/cvs-serv27986/include/asm-mips Modified Files: pgtable.h Log Message: __pte macro does not do the right thing when pte_t is a 64 bit type. sys_mprotect is broken due to this, when 36 bit physical address support is turned on. Index: pgtable.h =================================================================== RCS file: /cvsroot/linux-mips/linux/include/asm-mips/pgtable.h,v retrieving revision 1.17 retrieving revision 1.18 diff -u -d -r1.17 -r1.18 --- pgtable.h 21 Apr 2002 20:34:31 -0000 1.17 +++ pgtable.h 15 Jul 2002 17:24:39 -0000 1.18 @@ -332,7 +332,9 @@ static inline pte_t pte_modify(pte_t pte, pgprot_t newprot) { - return __pte(((pte).pte_low & _PAGE_CHG_MASK) | pgprot_val(newprot)); + pte.pte_low &= _PAGE_CHG_MASK; + pte.pte_low |= pgprot_val(newprot); + return pte; } /* |