linux/arch/mips
David Hildenbrand 83d3b2b46e mips/mm: support __HAVE_ARCH_PTE_SWP_EXCLUSIVE
Let's support __HAVE_ARCH_PTE_SWP_EXCLUSIVE.

On 64bit, steal one bit from the type.  Generic MM currently only uses 5
bits for the type (MAX_SWAPFILES_SHIFT), so the stolen bit is effectively
unused.

On 32bit we're able to locate unused bits.  As the PTE layout for 32 bit
is very confusing, document it a bit better.

While at it, mask the type in __swp_entry()/mk_swap_pte().

Link: https://lkml.kernel.org/r/20230113171026.582290-13-david@redhat.com
Signed-off-by: David Hildenbrand <david@redhat.com>
Cc: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
2023-02-02 22:33:08 -08:00
..
alchemy mips: alchemy: gpio: Include the right header 2022-11-11 15:45:37 +01:00
ar7
ath25
ath79 MIPS: ath79: Remove one of the identical args in early_printk 2022-07-08 15:13:26 +02:00
bcm47xx MIPS: BCM47XX: Cast memcmp() of function to (void *) 2022-09-19 16:46:01 +02:00
bcm63xx MIPS: BCM63xx: Add check for NULL for clk in clk_enable 2022-12-09 23:37:06 +01:00
bmips MIPS: BMIPS: Utilize cfe_die() for invalid DTB 2022-07-17 14:53:07 +02:00
boot MIPS: dts: bcm63268: Add missing properties to the TWD node 2022-12-21 10:46:10 +01:00
cavium-octeon MIPS: OCTEON: warn only once if deprecated link status is being used 2022-12-09 23:37:46 +01:00
cobalt
configs eth: fealnx: delete the driver for Myson MTD-800 2022-10-27 13:32:08 +02:00
crypto crypto: Kconfig - simplify cipher entries 2022-08-26 18:50:43 +08:00
dec
fw MIPS: CFE: Add cfe_die() 2022-07-17 14:52:47 +02:00
generic arch: mips: generic: Add missing of_node_put() in board-ranchu.c 2022-06-21 17:04:30 +02:00
include mips/mm: support __HAVE_ARCH_PTE_SWP_EXCLUSIVE 2023-02-02 22:33:08 -08:00
ingenic
jazz
kernel Non-MM patches for 6.2-rc1. 2022-12-12 17:28:58 -08:00
kvm MIPS&LoongArch&NIOS2: adjust prototypes of p?d_init() 2022-12-11 18:12:11 -08:00
lantiq - mainly cleanups 2022-10-03 09:31:55 -07:00
lib MIPS: Simplify __bswapdi2() and __bswapsi2() 2022-09-30 16:50:00 +02:00
loongson2ef MIPS: Loongson2ef: remove orphan sbx00_acpi_init() declaration 2022-09-19 16:34:31 +02:00
loongson32 MIPS: Loongson32: Fix PHY-mode being left unspecified 2022-09-19 16:31:32 +02:00
loongson64 MIPS: Loongson64: Add WARN_ON on kexec related kmalloc failed 2022-11-11 15:45:06 +01:00
math-emu MIPS: Fix comment typo 2022-09-12 15:33:24 +02:00
mm MIPS&LoongArch&NIOS2: adjust prototypes of p?d_init() 2022-12-11 18:12:11 -08:00
mti-malta mips: mti-malta: Fix refcount leak in malta-time.c 2022-06-21 17:04:30 +02:00
n64
net bpf, mips: No need to use min() to get MAX_TAIL_CALL_CNT 2022-08-29 15:38:14 +02:00
pci mips/pci: use devm_platform_ioremap_resource() 2022-12-02 16:48:52 +01:00
pic32 MIPS: pic32: treat port as signed integer 2022-11-11 15:53:58 +01:00
power
ralink of/fdt: run soc memory setup when early_init_dt_scan_memory fails 2023-01-03 18:41:01 -06:00
rb532
sgi-ip22 mips: sgi-ip22: Drop redundant check from .remove() 2022-07-05 11:10:17 +02:00
sgi-ip27 MIPS: SGI-IP27: Fix platform-device leak in bridge_platform_create() 2022-09-19 16:33:27 +02:00
sgi-ip30 MIPS: SGI-IP30: Fix platform-device leak in bridge_platform_create() 2022-09-19 16:32:54 +02:00
sgi-ip32
sibyte MIPS: remove orphan sb1250_time_init() declaration 2022-09-24 11:46:58 +02:00
sni
tools
txx9
vdso MIPS: Use "grep -E" instead of "egrep" 2022-11-21 17:56:53 +01:00
Kbuild
Kbuild.platforms MIPS: Remove VR41xx support 2022-07-14 11:52:29 +02:00
Kconfig mm: Rename GUP_GET_PTE_LOW_HIGH 2022-12-15 10:37:27 -08:00
Kconfig.debug
Makefile MIPS: Use "grep -E" instead of "egrep" 2022-11-21 17:56:53 +01:00
Makefile.postlink