_PAGE_RO
return !(pte_val(pte) & _PAGE_RO);
return __pte(pte_val(pte) & ~_PAGE_RO);
pte_update(mm, addr, ptep, 0, _PAGE_RO, 0);
unsigned long clr = ~pte_val(entry) & _PAGE_RO;
#define _PAGE_ROX (_PAGE_RO | _PAGE_EXEC)
#define _PAGE_KERNEL_RO (_PAGE_SH | _PAGE_RO)
#define _PAGE_KERNEL_ROX (_PAGE_SH | _PAGE_RO | _PAGE_EXEC)
return __pte(pte_val(pte) | _PAGE_RO);
return (pte_val(pte) & _PAGE_RO) != _PAGE_NA;
#define _PAGE_KERNEL_RO _PAGE_RO
#define PAGE_COPY __pgprot(_PAGE_BASE | _PAGE_RO)
#define PAGE_READONLY __pgprot(_PAGE_BASE | _PAGE_RO)
.mask = _PAGE_RO | _PAGE_NA,
.mask = _PAGE_RO | _PAGE_NA,
.val = _PAGE_RO,
.mask = _PAGE_RO | _PAGE_NA,