mirror_ubuntu-kernels/arch/powerpc/kernel
Christophe Leroy 48cf93bb16 powerpc/e500: Introduce _PAGE_READ and remove _PAGE_USER
e500 MMU has 6 page protection bits:
- R, W, X for supervisor
- R, W, X for user

It means that it can support X without R.

To do that, _PAGE_READ flag is needed.

With 32 bits PTE there is no bit available for it in PTE. On the
other hand the only real use of _PAGE_USER is to implement PAGE_NONE
by clearing _PAGE_USER. As _PAGE_NONE can also be implemented by
clearing _PAGE_READ, remove _PAGE_USER and add _PAGE_READ. Move
_PAGE_PRESENT into bit 30 so that _PAGE_READ can match SR bit.

With 64 bits PTE _PAGE_USER is already the combination of SR and UR
so all we need to do is to rename it _PAGE_READ.

Signed-off-by: Christophe Leroy <christophe.leroy@csgroup.eu>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://msgid.link/0849ab6bf7ae2af23f94b0457fa40d0ea3983fe4.1695659959.git.christophe.leroy@csgroup.eu
2023-10-19 17:12:46 +11:00
..
ptrace powerpc: Replace GPL 2.0+ README.legal boilerplate with SPDX 2023-09-19 20:05:58 +10:00
syscalls arch: Register fchmodat2, usually as syscall 452 2023-07-27 12:25:35 +02:00
trace powerpc updates for 6.6 2023-08-31 12:43:10 -07:00
vdso Kbuild updates for v6.5 2023-07-01 09:24:31 -07:00
.gitignore
85xx_entry_mapping.S
align.c
asm-offsets.c
audit_32.h powerpc: address missing-prototypes warnings 2023-08-02 22:22:19 +10:00
audit.c powerpc: address missing-prototypes warnings 2023-08-02 22:22:19 +10:00
btext.c powerpc: Use shared font data 2023-10-01 23:09:02 +11:00
cacheinfo.c
cacheinfo.h
compat_audit.c powerpc: address missing-prototypes warnings 2023-08-02 22:22:19 +10:00
cpu_setup_6xx.S
cpu_setup_44x.S
cpu_setup_e500.S
cpu_setup_pa6t.S
cpu_setup_power.c powerpc/dexcr: Add initial Dynamic Execution Control Register (DEXCR) support 2023-06-19 17:36:25 +10:00
cpu_setup_ppc970.S
cpu_specs_8xx.h
cpu_specs_40x.h
cpu_specs_44x.h
cpu_specs_47x.h
cpu_specs_85xx.h
cpu_specs_book3s_32.h
cpu_specs_book3s_64.h
cpu_specs_e500mc.h
cpu_specs.h
cputable.c powerpc/kuap: Use MMU_FTR_KUAP on all and refactor disabling kuap 2023-08-02 22:22:18 +10:00
crash_dump.c powerpc/fadump: make is_kdump_kernel() return false when fadump is active 2023-09-18 12:23:27 +10:00
dawr.c
dbell.c
dma-iommu.c powerpc/iommu: Incorrect DDW Table is referenced for SR-IOV device 2023-05-17 00:54:55 +10:00
dma-mask.c dma-mapping: move arch_dma_set_mask() declaration to header 2023-07-31 17:54:28 +02:00
dma-swiotlb.c
dt_cpu_ftrs.c
early_32.c
eeh_cache.c
eeh_driver.c
eeh_event.c
eeh_pe.c powerpc/eeh: Rely on dev->link_active_reporting 2023-06-14 17:58:12 -05:00
eeh_sysfs.c
eeh.c
entry_32.S powerpc/47x: Fix 47x syscall return crash 2023-10-11 09:31:26 +11:00
epapr_hcalls.S powerpc: replace #include <asm/export.h> with #include <linux/export.h> 2023-08-16 23:54:48 +10:00
epapr_paravirt.c
exceptions-64e.S powerpc/64e: Fix obtool warnings in exceptions-64e.S 2023-07-10 09:47:47 +10:00
exceptions-64s.S
fadump.c powerpc/fadump: reset dump area size if fadump memory reserve fails 2023-08-18 17:03:15 +10:00
firmware.c
fpu.S powerpc: replace #include <asm/export.h> with #include <linux/export.h> 2023-08-16 23:54:48 +10:00
head_8xx.S powerpc: remove unneeded #include <asm/export.h> 2023-08-16 23:54:48 +10:00
head_32.h
head_40x.S powerpc/nohash: Add _PAGE_WRITE to supplement _PAGE_RW 2023-10-19 17:12:46 +11:00
head_44x.S powerpc/nohash: Add _PAGE_WRITE to supplement _PAGE_RW 2023-10-19 17:12:46 +11:00
head_64.S powerpc updates for 6.6 2023-08-31 12:43:10 -07:00
head_85xx.S powerpc/e500: Introduce _PAGE_READ and remove _PAGE_USER 2023-10-19 17:12:46 +11:00
head_book3s_32.S powerpc: remove unneeded #include <asm/export.h> 2023-08-16 23:54:48 +10:00
head_booke.h
hw_breakpoint_constraints.c powerpc/watchpoint: Disable pagefaults when getting user instruction 2023-09-18 12:23:47 +10:00
hw_breakpoint.c powerpc/watchpoints: Annotate atomic context in more places 2023-09-18 12:23:47 +10:00
idle_6xx.S
idle_64e.S
idle_85xx.S
idle_book3s.S
idle.c
ima_arch.c integrity: Always reference the blacklist keyring with appraisal 2023-08-01 08:17:25 -04:00
interrupt_64.S powerpc: Fix merge conflict between pcrel and copy_thread changes 2023-04-26 16:20:16 +10:00
interrupt.c powerpc: Mark [h]ssr_valid accesses in check_return_regs_valid 2023-06-21 15:13:57 +10:00
io-workarounds.c
io.c
iomap.c
iommu.c powerpc/iommu: Fix notifiers being shared by PCI and VIO buses 2023-08-25 23:44:35 +10:00
irq_64.c
irq.c
isa-bridge.c powerpc/isa-bridge: Fix ISA mapping when "ranges" is not present 2023-05-08 22:57:10 +10:00
jump_label.c
kdebugfs.c
kgdb.c
kprobes-ftrace.c
kprobes.c
kvm_emul.S
kvm.c
l2cr_6xx.S
legacy_serial.c powerpc: Explicitly include correct DT includes 2023-08-02 22:22:19 +10:00
Makefile powerpc/64: Rename entry_64.S to prom_entry_64.S 2023-06-15 14:04:19 +10:00
mce_power.c
mce.c
misc_32.S powerpc: replace #include <asm/export.h> with #include <linux/export.h> 2023-08-16 23:54:48 +10:00
misc_64.S powerpc: replace #include <asm/export.h> with #include <linux/export.h> 2023-08-16 23:54:48 +10:00
misc.S powerpc: replace #include <asm/export.h> with #include <linux/export.h> 2023-08-16 23:54:48 +10:00
module_32.c
module_64.c powerpc/ftrace: Add support for -fpatchable-function-entry 2023-08-22 00:09:06 +10:00
module.c
msi.c
note.S
nvram_64.c
of_platform.c powerpc: Explicitly include correct DT includes 2023-08-02 22:22:19 +10:00
optprobes_head.S
optprobes.c
paca.c
pci_32.c
pci_64.c
pci_dn.c
pci_of_scan.c
pci-common.c powerpc: Drop zalloc_maybe_bootmem() 2023-08-24 22:33:16 +10:00
pci-hotplug.c
pmc.c powerpc/85xx: Mark some functions static and add missing includes to fix no previous prototype error 2023-08-23 15:55:21 +10:00
ppc_save_regs.S powerpc: update ppc_save_regs to save current r1 in pt_regs 2023-06-19 17:37:14 +10:00
proc_powerpc.c
process.c powerpc/dexcr: Support userspace ROP protection 2023-06-19 17:36:26 +10:00
prom_entry_64.S powerpc/64: Rename entry_64.S to prom_entry_64.S 2023-06-15 14:04:19 +10:00
prom_init_check.sh
prom_init.c
prom_parse.c
prom.c powerpc/dexcr: Add initial Dynamic Execution Control Register (DEXCR) support 2023-06-19 17:36:25 +10:00
reloc_32.S
reloc_64.S
rtas_entry.S
rtas_flash.c powerpc/rtas_flash: allow user copy to flash block cache objects 2023-08-17 09:46:14 +10:00
rtas_pci.c
rtas-proc.c
rtas-rtc.c
rtas.c powerpc/rtas: export rtas_error_rc() for reuse. 2023-08-18 23:28:57 +10:00
rtasd.c
secure_boot.c
security.c powerpc/security: Fix Speculation_Store_Bypass reporting on Power10 2023-07-10 09:47:47 +10:00
secvar-ops.c
secvar-sysfs.c
setup_32.c
setup_64.c
setup-common.c powerpc: Explicitly include correct DT includes 2023-08-02 22:22:19 +10:00
setup.h
signal_32.c powerpc/signal32: Force inlining of __unsafe_save_user_regs() and save_tm_user_regs_unsafe() 2023-06-09 23:29:51 +10:00
signal_64.c
signal.c powerpc: Replace GPL 2.0+ README.legal boilerplate with SPDX 2023-09-19 20:05:58 +10:00
signal.h powerpc: Replace GPL 2.0+ README.legal boilerplate with SPDX 2023-09-19 20:05:58 +10:00
smp-tbsync.c
smp.c Merge branch 'topic/cpu-smt' into next 2023-08-14 21:46:03 +10:00
stacktrace.c powerpc/stacktrace: Fix arch_stack_walk_reliable() 2023-09-22 20:29:27 +10:00
static_call.c
suspend.c
switch.S powerpc: merge 32-bit and 64-bit _switch implementation 2023-06-15 14:03:55 +10:00
swsusp_32.S
swsusp_64.c
swsusp_85xx.S
swsusp_asm64.S
swsusp.c
sys_ppc32.c
syscall.c powerpc/kuap: MMU_FTR_BOOK3S_KUAP becomes MMU_FTR_KUAP 2023-08-02 22:22:18 +10:00
syscalls.c
sysfs.c
systbl.c
tau_6xx.c powerpc, workqueue: Use alloc_ordered_workqueue() to create ordered workqueues 2023-05-08 13:52:27 -10:00
time.c
tm.S powerpc: replace #include <asm/export.h> with #include <linux/export.h> 2023-08-16 23:54:48 +10:00
traps.c Merge branch fixes into next 2023-10-18 22:26:42 +11:00
ucall.S powerpc: replace #include <asm/export.h> with #include <linux/export.h> 2023-08-16 23:54:48 +10:00
udbg_16550.c
udbg.c
uprobes.c
vdso32_wrapper.S
vdso64_wrapper.S
vdso.c
vecemu.c
vector.S powerpc: replace #include <asm/export.h> with #include <linux/export.h> 2023-08-16 23:54:48 +10:00
vmlinux.lds.S powerpc/ftrace: Extend ftrace support for large kernels to ppc32 2023-08-22 00:09:05 +10:00
watchdog.c nmi_backtrace: allow excluding an arbitrary CPU 2023-08-18 10:19:00 -07:00