_PAGE_EXEC
#ifndef _PAGE_EXEC
#define PAGE_READONLY_X __pgprot(_PAGE_BASE | _PAGE_USER | _PAGE_EXEC)
__pgprot(_PAGE_BASE | _PAGE_USER | _PAGE_RW | _PAGE_EXEC)
#define PAGE_COPY_X __pgprot(_PAGE_BASE | _PAGE_USER | _PAGE_EXEC)
static inline int pte_exec(pte_t pte) { return pte_val(pte) & _PAGE_EXEC; }
{ pte_val(pte) &= ~_PAGE_EXEC; return pte; }
{ pte_val(pte) |= _PAGE_USER | _PAGE_EXEC; return pte; }
const unsigned long mask = _PAGE_READ | _PAGE_WRITE | _PAGE_EXEC;
((x) ? _PAGE_EXEC : 0) | \
_PAGE_WRITE | _PAGE_EXEC | _PAGE_GLOBAL)
(tlbacc & _PAGE_EXEC ? 'x' : '-'),
#define PAGE_READONLY_X __pgprot(_PAGE_ALL | _PAGE_URE | _PAGE_SRE | _PAGE_EXEC)
| _PAGE_SHARED | _PAGE_EXEC)
#define PAGE_COPY_X __pgprot(_PAGE_ALL | _PAGE_URE | _PAGE_SRE | _PAGE_EXEC)
| _PAGE_SHARED | _PAGE_DIRTY | _PAGE_EXEC)
| _PAGE_SHARED | _PAGE_DIRTY | _PAGE_EXEC)
| _PAGE_SHARED | _PAGE_DIRTY | _PAGE_EXEC | _PAGE_CI)
static inline int pte_exec(pte_t pte) { return pte_val(pte) & _PAGE_EXEC; }
pte_val(pte) &= ~(_PAGE_EXEC);
pte_val(pte) |= _PAGE_EXEC;
if ((vector == 0x400) && !(vma->vm_page_prot.pgprot & _PAGE_EXEC))
#define _PAGE_KERNEL_EXEC (_PAGE_KERNEL_RO | _PAGE_EXEC)
#define PAGE_EXECREAD __pgprot(_PAGE_PRESENT | _PAGE_USER | _PAGE_READ | _PAGE_EXEC)
#define PAGE_RWX __pgprot(_PAGE_PRESENT | _PAGE_USER | _PAGE_READ | _PAGE_WRITE | _PAGE_EXEC)
(_PAGE_DIRTY | _PAGE_ACCESSED | _PAGE_RW | _PAGE_EXEC);
static inline bool pte_exec(pte_t pte) { return pte_val(pte) & _PAGE_EXEC; }
return __pte(pte_val(pte) & ~_PAGE_EXEC);
return __pte(pte_val(pte) | _PAGE_EXEC);
_PAGE_EXEC | _PAGE_SOFT_DIRTY);
#define _PAGE_KERNEL_ROX (_PAGE_PRIVILEGED | _PAGE_READ | _PAGE_EXEC)
#define _PAGE_KERNEL_RWX (_PAGE_PRIVILEGED | _PAGE_DIRTY | _PAGE_RW | _PAGE_EXEC)
return !!(pte_raw(pte) & cpu_to_be64(_PAGE_EXEC));
return __pte_raw(pte_raw(pte) & cpu_to_be64(~_PAGE_EXEC));
return __pte_raw(pte_raw(pte) | cpu_to_be64(_PAGE_EXEC));
unsigned long set = pte_val(entry) & (_PAGE_DIRTY | _PAGE_ACCESSED | _PAGE_EXEC);
#define _PAGE_NAX (_PAGE_NA | _PAGE_EXEC)
#define _PAGE_ROX (_PAGE_RO | _PAGE_EXEC)
#define _PAGE_RWX _PAGE_EXEC
#define _PAGE_KERNEL_ROX (_PAGE_SH | _PAGE_RO | _PAGE_EXEC)
#define _PAGE_KERNEL_RWX (_PAGE_SH | _PAGE_DIRTY | _PAGE_EXEC)
(_PAGE_DIRTY | _PAGE_ACCESSED | _PAGE_RW | _PAGE_EXEC);
return __pte(pte_val(pte) | _PAGE_EXEC);
static inline bool pte_exec(pte_t pte) { return pte_val(pte) & _PAGE_EXEC; }
return __pte(pte_val(pte) & ~_PAGE_EXEC);
if (IS_ENABLED(CONFIG_44x) && !is_kernel_addr(addr) && (old & _PAGE_EXEC))
#define _PAGE_RWX (_PAGE_READ | _PAGE_WRITE | _PAGE_EXEC)
#define _PAGE_NAX _PAGE_EXEC
#define _PAGE_ROX (_PAGE_READ | _PAGE_EXEC)
gpte->may_execute = !!(pte & _PAGE_EXEC);
pte = __pte(pte_val(pte) | _PAGE_EXEC | _PAGE_ACCESSED);
perm |= gpte.may_execute ? 0UL : _PAGE_EXEC;
wimgxpp = (flags & _PAGE_COHERENT) | (_PAGE_EXEC ? BPP_RX : BPP_XX);
flags &= ~_PAGE_EXEC;
access |= _PAGE_EXEC;
unsigned long access = _PAGE_PRESENT | _PAGE_READ | (is_exec ? _PAGE_EXEC : 0);
if ((pteflags & _PAGE_EXEC) == 0)
_PAGE_ACCESSED | _PAGE_RW | _PAGE_EXEC);
radix__change_memory_range(start, end, _PAGE_EXEC);
TLBCAM[index].MAS3 |= (flags & _PAGE_EXEC) ? MAS3_UX : 0;
TLBCAM[index].MAS3 |= (flags & _PAGE_EXEC) ? MAS3_SX : 0;
.mask = _PAGE_EXEC,
.val = _PAGE_EXEC,
.mask = _PAGE_EXEC,
.val = _PAGE_EXEC,
.mask = _PAGE_EXEC,
.val = _PAGE_EXEC,
_PAGE_WRITE | _PAGE_EXEC | \
_PAGE_WRITE | _PAGE_EXEC | \
_PAGE_EXEC : 0)
#define _PAGE_LEAF (_PAGE_READ | _PAGE_WRITE | _PAGE_EXEC)
#define PAGE_EXEC __pgprot(_PAGE_BASE | _PAGE_EXEC)
#define PAGE_READ_EXEC __pgprot(_PAGE_BASE | _PAGE_READ | _PAGE_EXEC)
_PAGE_EXEC | _PAGE_WRITE)
#define PAGE_KERNEL_EXEC __pgprot(_PAGE_KERNEL | _PAGE_EXEC)
| _PAGE_EXEC)
return pte_val(pte) & _PAGE_EXEC;
return __pgprot(pgprot_val(_prot) & ~_PAGE_EXEC);
val = pte_val(pte) & ~_PAGE_EXEC;
ret = temp_pgtable_mapping(resume_pg_dir, start, end, __pgprot(_PAGE_WRITE | _PAGE_EXEC));
(pte_val(*(__ptep)) & (_PAGE_READ | _PAGE_WRITE | _PAGE_EXEC))
__pgprot(_PAGE_EXEC));
return __set_memory(addr, numpages, __pgprot(_PAGE_EXEC), __pgprot(0));
return __set_memory(addr, numpages, __pgprot(0), __pgprot(_PAGE_EXEC));
PAGE_KERNEL, __pgprot(_PAGE_EXEC));
clear = __pgprot(_PAGE_EXEC);
.mask = _PAGE_EXEC,
if ((st->current_prot & (_PAGE_WRITE | _PAGE_EXEC)) !=
(_PAGE_WRITE | _PAGE_EXEC))