mirror-linux/include/linux
Joey Gouly b507808ebc mm: implement memory-deny-write-execute as a prctl
Patch series "mm: In-kernel support for memory-deny-write-execute (MDWE)",
v2.

The background to this is that systemd has a configuration option called
MemoryDenyWriteExecute [2], implemented as a SECCOMP BPF filter.  Its aim
is to prevent a user task from inadvertently creating an executable
mapping that is (or was) writeable.  Since such BPF filter is stateless,
it cannot detect mappings that were previously writeable but subsequently
changed to read-only.  Therefore the filter simply rejects any
mprotect(PROT_EXEC).  The side-effect is that on arm64 with BTI support
(Branch Target Identification), the dynamic loader cannot change an ELF
section from PROT_EXEC to PROT_EXEC|PROT_BTI using mprotect().  For
libraries, it can resort to unmapping and re-mapping but for the main
executable it does not have a file descriptor.  The original bug report in
the Red Hat bugzilla - [3] - and subsequent glibc workaround for libraries
- [4].

This series adds in-kernel support for this feature as a prctl
PR_SET_MDWE, that is inherited on fork().  The prctl denies PROT_WRITE |
PROT_EXEC mappings.  Like the systemd BPF filter it also denies adding
PROT_EXEC to mappings.  However unlike the BPF filter it only denies it if
the mapping didn't previous have PROT_EXEC.  This allows to PROT_EXEC ->
PROT_EXEC | PROT_BTI with mprotect(), which is a problem with the BPF
filter.


This patch (of 2):

The aim of such policy is to prevent a user task from creating an
executable mapping that is also writeable.

An example of mmap() returning -EACCESS if the policy is enabled:

	mmap(0, size, PROT_READ | PROT_WRITE | PROT_EXEC, flags, 0, 0);

Similarly, mprotect() would return -EACCESS below:

	addr = mmap(0, size, PROT_READ | PROT_EXEC, flags, 0, 0);
	mprotect(addr, size, PROT_READ | PROT_WRITE | PROT_EXEC);

The BPF filter that systemd MDWE uses is stateless, and disallows
mprotect() with PROT_EXEC completely. This new prctl allows PROT_EXEC to
be enabled if it was already PROT_EXEC, which allows the following case:

	addr = mmap(0, size, PROT_READ | PROT_EXEC, flags, 0, 0);
	mprotect(addr, size, PROT_READ | PROT_EXEC | PROT_BTI);

where PROT_BTI enables branch tracking identification on arm64.

Link: https://lkml.kernel.org/r/20230119160344.54358-1-joey.gouly@arm.com
Link: https://lkml.kernel.org/r/20230119160344.54358-2-joey.gouly@arm.com
Signed-off-by: Joey Gouly <joey.gouly@arm.com>
Co-developed-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Cc: Alexander Viro <viro@zeniv.linux.org.uk>
Cc: Jeremy Linton <jeremy.linton@arm.com>
Cc: Kees Cook <keescook@chromium.org>
Cc: Lennart Poettering <lennart@poettering.net>
Cc: Mark Brown <broonie@kernel.org>
Cc: nd <nd@arm.com>
Cc: Shuah Khan <shuah@kernel.org>
Cc: Szabolcs Nagy <szabolcs.nagy@arm.com>
Cc: Topi Miettinen <toiwoton@gmail.com>
Cc: Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Cc: David Hildenbrand <david@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
2023-02-02 22:33:24 -08:00
..
amba
atomic
avf
bcma
byteorder
can
ceph
clk
comedi
crush
decompress
device
dma
dsa net: dsa: tag_qca: fix wrong MGMT_DATA2 size 2023-01-01 09:27:12 +00:00
extcon
firmware remoteproc updates for v6.2 2022-12-21 09:37:14 -08:00
fpga
fsl
gpio gpio: updates for v6.2 2022-12-15 09:45:51 -08:00
greybus
hsi
i3c i3c: export SETDASA method 2022-12-11 21:25:58 +01:00
iio
input
irqchip
isdn
lockd
mailbox
mdio
mfd - New Drivers 2022-12-21 09:19:24 -08:00
mlx4
mlx5 net/mlx5: Fix command stats access after free 2023-01-09 22:08:34 -08:00
mmc
mtd mtd: cfi: allow building spi-intel standalone 2023-01-02 12:08:53 +01:00
mux
net/intel
netfilter netfilter: ipset: Rework long task execution when adding/deleting entries 2023-01-02 15:10:05 +01:00
netfilter_arp
netfilter_bridge
netfilter_ipv4
netfilter_ipv6
pcs
perf Perf events updates for v6.2: 2022-12-12 15:19:38 -08:00
phy
pinctrl
platform_data platform/x86: simatic-ipc: add another model 2023-01-12 19:42:53 +01:00
power
pse-pd
qed
raid
regulator regulator: core: Use different devices for resource allocation and DT lookup 2022-12-08 13:02:37 +00:00
remoteproc
reset
rpmsg
rtc
sched mm: implement memory-deny-write-execute as a prctl 2023-02-02 22:33:24 -08:00
soc Networking changes for 6.2. 2022-12-13 15:47:48 -08:00
soundwire soundwire updates for 6.2 2022-12-19 08:47:33 -06:00
spi
ssb
sunrpc NFS client fixes for Linux 6.2 2023-01-07 10:38:11 -08:00
surface_aggregator
ulpi
unaligned
usb xhci: disable U3 suspended ports in S4 hibernate poweroff_late stage 2022-11-30 12:10:48 +01:00
8250_pci.h
acct.h
acpi.h Merge branches 'acpi-pm', 'acpi-processor', 'acpi-ec' and 'acpi-video' 2022-12-12 15:05:30 +01:00
acpi_agdi.h
acpi_apmt.h
acpi_dma.h
acpi_iort.h
acpi_mdio.h
acpi_pmtmr.h
acpi_viot.h
adb.h
adfs_fs.h
adreno-smmu-priv.h
adxl.h
aer.h
agp_backend.h
agpgart.h
ahci-remap.h
ahci_platform.h
aio.h
alarmtimer.h
alcor_pci.h
align.h
altera_jtaguart.h
altera_uart.h
amd-iommu.h
amd-pstate.h
anon_inodes.h
aperture.h
apm-emulation.h
apm_bios.h
apple-gmux.h
apple-mailbox.h
apple_bl.h
arch_topology.h
arm-cci.h
arm-smccc.h
arm_ffa.h firmware: arm_ffa: Move comment before the field it is documenting 2022-12-01 15:51:32 +00:00
arm_sdei.h
armada-37xx-rwtm-mailbox.h
ascii85.h
asn1.h
asn1_ber_bytecode.h
asn1_decoder.h
asn1_encoder.h
assoc_array.h
assoc_array_priv.h
async.h
async_tx.h
ata.h
ata_platform.h
atalk.h
ath9k_platform.h
atm.h
atm_tcp.h
atmdev.h
atmel-isc-media.h
atmel-mci.h
atmel-ssc.h
atmel_pdc.h
atomic.h
attribute_container.h
audit.h
audit_arch.h
auto_dev-ioctl.h
auto_fs.h
auxiliary_bus.h
auxvec.h
average.h
backing-dev-defs.h
backing-dev.h mm: add bdi_set_min_ratio_no_scale() function 2022-11-30 15:59:06 -08:00
backlight.h
badblocks.h
balloon_compaction.h
base64.h
bcd.h
bch.h
bcm47xx_nvram.h
bcm47xx_sprom.h
bcm47xx_wdt.h
bcm963xx_nvram.h
bcm963xx_tag.h
binfmts.h
bio.h Revert "block: bio_copy_data_iter" 2023-01-04 14:43:27 -07:00
bit_spinlock.h
bitfield.h
bitmap.h
bitops.h
bitrev.h
bits.h
blk-cgroup.h
blk-crypto-profile.h
blk-crypto.h for-6.2/block-2022-12-08 2022-12-13 10:43:59 -08:00
blk-integrity.h
blk-mq-pci.h
blk-mq-rdma.h
blk-mq-virtio.h
blk-mq.h for-6.2/block-2022-12-08 2022-12-13 10:43:59 -08:00
blk-pm.h
blk_types.h block: remove bio_set_op_attrs 2022-12-07 09:43:12 -07:00
blkdev.h Revert "block: remove devnode callback from struct block_device_operations" 2023-01-04 14:44:02 -07:00
blkpg.h
blktrace_api.h
blockgroup_lock.h
bma150.h
bootconfig.h
bootmem_info.h
bottom_half.h
bpf-cgroup-defs.h
bpf-cgroup.h
bpf-netns.h
bpf.h bpf: Rework process_dynptr_func 2022-12-08 18:25:31 -08:00
bpf_lirc.h
bpf_local_storage.h
bpf_lsm.h bpf: Do not mark certain LSM hook arguments as trusted 2022-12-04 12:59:58 -08:00
bpf_mem_alloc.h
bpf_trace.h
bpf_types.h
bpf_verifier.h bpf: states_equal() must build idmap for all function frames 2022-12-10 13:20:53 -08:00
bpfilter.h
bpfptr.h
brcmphy.h
bsearch.h
bsg-lib.h
bsg.h
btf.h for-alexei-2022120701 2022-12-07 13:49:21 -08:00
btf_ids.h bpf: Fix a compilation failure with clang lto build 2022-11-30 17:13:25 -08:00
btree-128.h
btree-type.h
btree.h
btrfs.h
buffer_head.h buffer: add b_folio as an alias of b_page 2023-01-18 17:12:39 -08:00
bug.h
build-salt.h
build_bug.h
buildid.h
bvec.h
c2port.h
cache.h
cacheflush.h
cacheinfo.h
capability.h
cb710.h
cc_platform.h
cciss_ioctl.h
ccp.h
cdev.h
cdrom.h
cfag12864b.h
cfi.h
cfi_types.h
cgroup-defs.h
cgroup.h cgroup changes for v6.2-rc1 2022-12-12 15:48:36 -08:00
cgroup_api.h
cgroup_rdma.h
cgroup_refcnt.h
cgroup_subsys.h
circ_buf.h
clk-provider.h clk: Store clk_core for clk_rate_request 2022-12-07 13:54:01 -08:00
clk.h
clkdev.h
clockchips.h
clocksource.h
clocksource_ids.h
cm4000_cs.h
cma.h
cn_proc.h
cnt32_to_63.h
coda.h
compaction.h
compat.h
compiler-clang.h
compiler-gcc.h
compiler-intel.h
compiler-version.h
compiler.h
compiler_attributes.h
compiler_types.h
completion.h
component.h
configfs.h configfs: remove mentions of committable items 2022-12-02 11:11:27 +01:00
connector.h
console.h printk, xen: fbfront: create/use safe function for forcing preferred 2022-12-02 11:25:02 +01:00
console_struct.h
consolemap.h
const.h
container.h
container_of.h container_of: add container_of_const() that preserves const-ness of the pointer 2022-12-06 16:55:18 +01:00
context_tracking.h
context_tracking_irq.h
context_tracking_state.h
cookie.h
cordic.h
coredump.h Unification of regset and non-regset sides of ELF coredump 2022-12-12 18:18:34 -08:00
coresight-pmu.h
coresight-stm.h
coresight.h
count_zeros.h
counter.h
cper.h
cpu.h
cpu_cooling.h
cpu_pm.h
cpu_rmap.h
cpufeature.h
cpufreq.h
cpuhotplug.h Networking changes for 6.2. 2022-12-13 15:47:48 -08:00
cpuidle.h
cpuidle_haltpoll.h
cpumask.h
cpumask_api.h
cpuset.h
crash_core.h
crash_dump.h
crc-ccitt.h
crc-itu-t.h
crc-t10dif.h
crc4.h
crc7.h
crc8.h
crc16.h
crc32.h
crc32c.h
crc32poly.h
crc64.h
cred.h
crypto.h crypto: api - Add crypto_tfm_ctx_dma 2022-12-02 18:12:40 +08:00
cs5535.h
ctype.h
cuda.h
cxl_err.h
damon.h mm/damon/core: update kernel-doc comments for DAMOS filters supports of each DAMON operations set 2023-02-02 22:32:51 -08:00
dasd_mod.h
davinci_emac.h
dax.h fsdax,xfs: port unshare to fsdax 2022-12-11 18:12:17 -08:00
dca.h
dcache.h
dccp.h
debug_locks.h
debugfs.h debugfs: fix error when writing negative value to atomic_t debugfs file 2022-11-30 16:13:16 -08:00
debugobjects.h
delay.h
delayacct.h
delayed_call.h
dev_printk.h
devcoredump.h
devfreq-event.h
devfreq.h
devfreq_cooling.h
device-mapper.h
device.h Driver Core changes for 6.2-rc1 2022-12-16 03:54:54 -08:00
device_cgroup.h
devm-helpers.h
devpts_fs.h
dfl.h
digsig.h
dim.h
dio.h
dirent.h
dlm.h
dlm_plock.h
dm-bufio.h
dm-dirty-log.h
dm-io.h
dm-kcopyd.h
dm-region-hash.h
dm-verity-loadpin.h
dm9000.h
dma-buf.h
dma-direct.h
dma-direction.h
dma-fence-array.h
dma-fence-chain.h
dma-fence-unwrap.h
dma-fence.h
dma-heap.h
dma-map-ops.h
dma-mapping.h
dma-resv.h
dmaengine.h
dmapool.h
dmar.h
dmi.h
dnotify.h
dns_resolver.h
dqblk_qtree.h
dqblk_v1.h
dqblk_v2.h
drbd.h
drbd_genl.h
drbd_genl_api.h
drbd_limits.h
ds2782_battery.h
dtlk.h
dtpm.h
dw_apb_timer.h
dynamic_debug.h
dynamic_queue_limits.h
earlycpio.h
ecryptfs.h
edac.h
edd.h
eeprom_93cx6.h
eeprom_93xx46.h
efi-bgrt.h
efi.h
efi_embedded_fw.h
efs_vh.h
eisa.h
elf-fdpic.h
elf-randomize.h
elf.h
elfcore-compat.h
elfcore.h elfcore: Add a cprm parameter to elf_core_extra_{phdrs,data_size} 2023-01-05 15:12:12 +00:00
elfnote-lto.h
elfnote.h
enclosure.h
energy_model.h
entry-common.h
entry-kvm.h
err.h
errname.h
errno.h
error-injection.h
errqueue.h
errseq.h
etherdevice.h
ethtool.h
ethtool_netlink.h
eventfd.h for-6.2/io_uring-2022-12-08 2022-12-13 10:33:08 -08:00
eventpoll.h
evm.h
export-internal.h
export.h
exportfs.h
ext2_fs.h
extable.h
extcon-provider.h
extcon.h
f2fs_fs.h
f75375s.h
falloc.h
fanotify.h
fault-inject-usercopy.h
fault-inject.h
fb.h Some deferred-io and damage worker reworks revert and make a fb function 2022-12-09 11:53:52 +10:00
fbcon.h
fcdevice.h
fcntl.h
fd.h
fddidevice.h
fdtable.h
fec.h
fiemap.h
file.h
fileattr.h
filter.h New Feature: 2022-12-17 14:06:53 -06:00
find.h
fips.h
firewire.h
firmware-map.h
firmware.h
fixp-arith.h
flat.h
flex_proportions.h
font.h
fortify-string.h hardening updates for v6.2-rc1 2022-12-14 12:20:00 -08:00
fprobe.h
freelist.h
freezer.h
frontswap.h
fs.h mm: support POSIX_FADV_NOREUSE 2023-01-18 17:12:57 -08:00
fs_api.h
fs_context.h lsm/stable-6.2 PR 20221212 2022-12-13 09:47:48 -08:00
fs_enet_pd.h
fs_parser.h ext4: journal_path mount options should follow links 2022-12-01 10:46:54 -05:00
fs_pin.h
fs_stack.h
fs_struct.h
fs_types.h
fs_uart_pd.h
fscache-cache.h
fscache.h
fscrypt.h
fsi-occ.h
fsi-sbefifo.h
fsi.h
fsl-diu-fb.h
fsl_devices.h
fsl_hypervisor.h
fsl_ifc.h
fsldma.h
fsnotify.h
fsnotify_backend.h
fsverity.h
ftrace.h
ftrace_irq.h
futex.h
fwnode.h
fwnode_mdio.h
gameport.h
gcd.h
genalloc.h
generic-radix-tree.h
genetlink.h
genl_magic_func.h
genl_magic_struct.h
getcpu.h
gfp.h mm: replace VM_WARN_ON to pr_warn if the node is offline with __GFP_THISNODE 2022-11-30 14:49:40 -08:00
gfp_api.h
gfp_types.h mm: discard __GFP_ATOMIC 2023-02-02 22:33:13 -08:00
glob.h
gnss.h
goldfish.h
gpio-pxa.h
gpio.h
gpio_keys.h
greybus.h
hardirq.h
hash.h
hashtable.h
hashtable_api.h
hdlc.h
hdlcdrv.h
hdmi.h
hid-debug.h
hid-roccat.h
hid-sensor-hub.h
hid-sensor-ids.h
hid.h
hidden.h
hiddev.h
hidraw.h
highmem-internal.h highmem: round down the address passed to kunmap_flush_on_unmap() 2023-01-31 16:44:09 -08:00
highmem.h mm: add vma_alloc_zeroed_movable_folio() 2023-02-02 22:33:18 -08:00
highuid.h
hil.h
hil_mlc.h
hippidevice.h
hisi_acc_qm.h
hmm.h
host1x.h
host1x_context_bus.h
hp_sdc.h
hpet.h hpet: Replace one-element array with flexible-array member 2022-12-02 13:10:36 -08:00
hrtimer.h
hrtimer_api.h
hrtimer_defs.h
hte.h
huge_mm.h mm: convert deferred_split_huge_page() to deferred_split_folio() 2023-02-02 22:33:00 -08:00
hugetlb.h mm/hugetlb: convert get_hwpoison_huge_page() to folios 2023-02-02 22:33:23 -08:00
hugetlb_cgroup.h mm,hugetlb: use folio fields in second tail page 2022-11-30 15:58:46 -08:00
hugetlb_inline.h
hw_breakpoint.h
hw_random.h
hwmon-sysfs.h hwmon: Include <linux/kstrtox.h> when appropriate 2022-12-04 16:45:02 -08:00
hwmon-vid.h
hwmon.h
hwspinlock.h
hyperv.h
hypervisor.h
i2c-algo-bit.h
i2c-algo-pca.h
i2c-algo-pcf.h
i2c-dev.h
i2c-mux.h
i2c-smbus.h
i2c.h
i8042.h
i8253.h
icmp.h
icmpv6.h
idle_inject.h
idr.h
ieee80211.h wifi: ieee80211: Do not open-code qos address offsets 2022-12-01 13:49:40 +01:00
ieee802154.h
if_arp.h
if_bridge.h
if_eql.h
if_ether.h
if_fddi.h
if_hsr.h
if_link.h
if_ltalk.h
if_macvlan.h
if_phonet.h
if_pppol2tp.h
if_pppox.h
if_rmnet.h
if_tap.h
if_team.h
if_tun.h
if_tunnel.h
if_vlan.h
igmp.h
ihex.h
ima.h
imx-media.h
in.h
in6.h
indirect_call_wrapper.h
inet.h
inet_diag.h
inetdevice.h
init.h linux/init.h: include <linux/build_bug.h> and <linux/stringify.h> 2022-11-30 16:13:18 -08:00
init_ohci1394_dma.h
init_syscalls.h
init_task.h
initrd.h
inotify.h
input.h
instruction_pointer.h
instrumentation.h
instrumented.h
integrity.h
intel-ish-client-if.h
intel-svm.h
intel_rapl.h
intel_th.h
interconnect-provider.h
interconnect.h
interrupt.h
interval_tree.h interval-tree: Add a utility to iterate over spans in an interval tree 2022-11-29 16:34:15 -04:00
interval_tree_generic.h
io-64-nonatomic-hi-lo.h
io-64-nonatomic-lo-hi.h
io-mapping.h io-mapping: move some code within the include guarded section 2022-12-11 19:30:19 -08:00
io-pgtable.h
io.h
io_uring.h io_uring: complete all requests in task context 2022-12-07 06:47:13 -07:00
io_uring_types.h io_uring: move 'poll_multi_queue' bool in io_ring_ctx 2023-01-04 13:49:54 -07:00
ioam6.h
ioam6_genl.h
ioam6_iptunnel.h
ioasid.h
iocontext.h
iomap.h
iommu-helper.h
iommu.h iommufd for 6.2 2022-12-14 09:15:43 -08:00
iommufd.h iommufd: Add kernel support for testing iommufd 2022-11-30 20:16:49 -04:00
iopoll.h
ioport.h Driver Core changes for 6.2-rc1 2022-12-16 03:54:54 -08:00
ioprio.h
iosys-map.h
iova.h
iova_bitmap.h
ip.h
ipack.h
ipc.h
ipc_namespace.h
ipmi.h
ipmi_smi.h
ipv6.h
ipv6_route.h
irq.h
irq_poll.h
irq_sim.h
irq_work.h
irqbypass.h
irqchip.h
irqdesc.h
irqdomain.h genirq/irqdomain: Add irq_domain:: Dev for per device MSI domains 2022-12-05 19:21:01 +01:00
irqdomain_defs.h genirq/msi: Provide constants for PCI/IMS support 2022-12-05 22:22:34 +01:00
irqflags.h
irqhandler.h
irqnr.h
irqreturn.h
isa-dma.h
isa.h
isapnp.h
iscsi_boot_sysfs.h
iscsi_ibft.h
iversion.h
jbd2.h jbd2,ocfs2: move jbd2_journal_submit_inode_data_buffers to ocfs2 2023-01-18 17:12:51 -08:00
jhash.h
jiffies.h
journal-head.h
joystick.h
jump_label.h jump_label: Prevent key->enabled int overflow 2022-12-01 15:53:05 -08:00
jump_label_ratelimit.h
jz4740-adc.h
jz4780-nemc.h
kallsyms.h
kasan-checks.h
kasan-enabled.h
kasan-tags.h
kasan.h mm/kasan: simplify and refine kasan_cache code 2023-01-18 17:12:55 -08:00
kbd_diacr.h
kbd_kern.h
kbuild.h
kconfig.h
kcore.h
kcov.h kcov: fix spelling typos in comments 2022-12-11 19:30:20 -08:00
kcsan-checks.h
kcsan.h
kdb.h
kdebug.h
kdev_t.h
kern_levels.h
kernel-page-flags.h
kernel.h
kernel_read_file.h
kernel_stat.h
kernelcapi.h
kernfs.h
kexec.h
key-type.h
key.h
keyboard.h
keyctl.h
kfence.h
kfifo.h
kgdb.h
khugepaged.h mm: vmscan: split khugepaged stats from direct reclaim stats 2022-11-30 15:58:41 -08:00
klist.h
kmemleak.h
kmod.h
kmsan-checks.h
kmsan.h
kmsan_string.h
kmsan_types.h
kmsg_dump.h
kobj_map.h
kobject.h
kobject_api.h
kobject_ns.h
kprobes.h
kref.h
kref_api.h
ks0108.h
ks8842.h
ks8851_mll.h
ksm.h
kstrtox.h
kthread.h
ktime.h
ktime_api.h
kvm_dirty_ring.h
kvm_host.h ARM64: 2022-12-15 11:12:21 -08:00
kvm_irqfd.h
kvm_para.h
kvm_types.h KVM: Store immutable gfn_to_pfn_cache properties 2022-11-30 19:25:23 +00:00
l2tp.h
lantiq.h
lapb.h
latencytop.h
lcd.h
lcm.h
led-class-flash.h
led-class-multicolor.h
led-lm3530.h
leds-bd2802.h
leds-lp3944.h
leds-lp3952.h
leds-pca9532.h
leds-regulator.h
leds-ti-lmu-common.h
leds.h
libata.h
libfdt.h
libfdt_env.h
libgcc.h
libnvdimm.h nvdimm/region: Move cache management to the region driver 2022-12-02 23:52:32 -08:00
libps2.h
license.h revert "kbuild: fix -Wimplicit-function-declaration in license_is_gpl_compatible" 2022-11-30 14:49:42 -08:00
limits.h
linear_range.h
linkage.h
linkmode.h
linux_logo.h
lis3lv02d.h
list.h Revert "i915: Move list_count() to list.h for broader use" 2022-11-30 12:06:51 +01:00
list_bl.h
list_lru.h
list_nulls.h
list_sort.h
litex.h
livepatch.h
llc.h
llist.h
llist_api.h
local_lock.h
local_lock_internal.h
lockdep.h
lockdep_api.h
lockdep_types.h
lockref.h
log2.h
logic_iomem.h
logic_pio.h
lp.h
lru_cache.h
lsm_audit.h
lsm_hook_defs.h lsm/stable-6.2 PR 20221212 2022-12-13 09:47:48 -08:00
lsm_hooks.h lsm/stable-6.2 PR 20221212 2022-12-13 09:47:48 -08:00
lz4.h
lzo.h
mISDNdsp.h
mISDNhw.h
mISDNif.h
mailbox_client.h
mailbox_controller.h
map_benchmark.h
maple.h
maple_tree.h maple_tree: remove the parameter entry of mas_preallocate 2023-02-02 22:32:52 -08:00
marvell_phy.h
math.h
math64.h
mbcache.h ext4: fix deadlock due to mbcache entry corruption 2022-12-08 21:49:25 -05:00
mbus.h
mc6821.h
mc146818rtc.h
mcb.h
mdev.h
mdio-bitbang.h
mdio-gpio.h
mdio-mux.h
mdio.h
mei_aux.h
mei_cl_bus.h
mem_encrypt.h
memblock.h
memcontrol.h mm: convert mem_cgroup_css_from_page() to mem_cgroup_css_from_folio() 2023-02-02 22:33:19 -08:00
memfd.h
memory-tiers.h
memory.h
memory_hotplug.h
mempolicy.h
mempool.h
memregion.h
memremap.h
memstick.h
mhi.h
mhi_ep.h
micrel_phy.h
microchipphy.h
migrate.h
migrate_mode.h
mii.h
mii_timestamper.h
min_heap.h
minmax.h
misc_cgroup.h
miscdevice.h
mm.h mm: convert set_compound_page_dtor() and set_compound_order() to folios 2023-02-02 22:32:58 -08:00
mm_api.h
mm_inline.h mm: support POSIX_FADV_NOREUSE 2023-01-18 17:12:57 -08:00
mm_types.h mm: remove the hugetlb field from struct page 2023-02-02 22:33:01 -08:00
mm_types_task.h mm: convert mm's rss stats into percpu_counter 2022-11-30 15:58:40 -08:00
mman.h mm: implement memory-deny-write-execute as a prctl 2023-02-02 22:33:24 -08:00
mmap_lock.h
mmdebug.h
mmiotrace.h
mmu_context.h
mmu_notifier.h mm/mmu_notifier: remove unused mmu_notifier_range_update_to_read_only export 2023-02-02 22:32:54 -08:00
mmzone.h mm: multi-gen LRU: per-node lru_gen_folio lists 2023-01-18 17:12:49 -08:00
mnt_idmapping.h mnt_idmapping: move ima-only helpers to ima 2022-12-13 12:28:51 +01:00
mnt_namespace.h
mod_devicetable.h
module.h Networking changes for 6.2. 2022-12-13 15:47:48 -08:00
module_signature.h
moduleloader.h module: add module_elf_check_arch for module-specific checks 2022-12-02 17:54:07 +11:00
moduleparam.h
most.h
mount.h
moxtet.h
mpage.h
mpi.h
mpls.h
mpls_iptunnel.h
mroute.h
mroute6.h
mroute_base.h
msdos_fs.h
msdos_partition.h
msg.h
msi.h genirq/msi: Provide constants for PCI/IMS support 2022-12-05 22:22:34 +01:00
msi_api.h genirq/msi: Provide constants for PCI/IMS support 2022-12-05 22:22:34 +01:00
mtio.h
mutex.h
mutex_api.h
mv643xx.h
mv643xx_eth.h
mv643xx_i2c.h
mvebu-pmsu.h
mxm-wmi.h
namei.h
nd.h
ndctl.h
net.h
netdev_features.h
netdevice.h net: add IFF_NO_ADDRCONF and use it in bonding to prevent ipv6 addrconf 2022-12-12 15:18:25 -08:00
netfilter.h
netfilter_bridge.h
netfilter_defs.h
netfilter_ipv4.h
netfilter_ipv6.h
netfilter_netdev.h
netfs.h fscache,cachefiles: add prepare_ondemand_read() callback 2022-12-07 10:56:29 +08:00
netlink.h
netpoll.h
nfs.h
nfs3.h
nfs4.h NFSD: add delegation reaper to react to low memory condition 2022-12-10 11:01:12 -05:00
nfs_fs.h
nfs_fs_i.h
nfs_fs_sb.h
nfs_iostat.h
nfs_page.h
nfs_ssc.h
nfs_xdr.h
nfsacl.h
nitro_enclaves.h
nl802154.h
nls.h
nmi.h
node.h
nodemask.h
nospec.h
notifier.h
ns_common.h
nsc_gpio.h
nsproxy.h
ntb.h
ntb_transport.h
nubus.h
numa.h
nvme-auth.h
nvme-fc-driver.h
nvme-fc.h
nvme-rdma.h
nvme-tcp.h
nvme.h nvme: consult the CSE log page for unprivileged passthrough 2022-12-28 06:26:31 -10:00
nvmem-consumer.h
nvmem-provider.h
nvram.h
objagg.h
objtool.h
of.h
of_address.h
of_clk.h
of_device.h
of_dma.h
of_fdt.h
of_gpio.h
of_graph.h
of_iommu.h
of_irq.h
of_mdio.h
of_net.h
of_pci.h
of_pdt.h
of_platform.h
of_reserved_mem.h
oid_registry.h
olpc-ec.h
omap-dma.h
omap-gpmc.h
omap-iommu.h
omap-mailbox.h
omapfb.h
once.h
once_lite.h
oom.h
openvswitch.h
osq_lock.h
overflow.h
packing.h
padata.h
page-flags-layout.h
page-flags.h ARM64: 2022-12-15 11:12:21 -08:00
page-isolation.h
page_counter.h
page_ext.h mm/page_ext: init page_ext early if there are no deferred struct pages 2023-02-02 22:33:22 -08:00
page_idle.h
page_owner.h
page_ref.h mm: update mmap_sem comments to refer to mmap_lock 2023-01-11 16:14:22 -08:00
page_reporting.h
page_table_check.h
pageblock-flags.h
pagemap.h filemap: remove find_get_pages_range_tag() 2023-02-02 22:33:18 -08:00
pagevec.h filemap: remove find_get_pages_range_tag() 2023-02-02 22:33:18 -08:00
pagewalk.h mm/hugetlb: make walk_hugetlb_range() safe to pmd unshare 2023-01-18 17:12:39 -08:00
panic.h panic: Consolidate open-coded panic_on_warn checks 2022-12-02 13:04:44 -08:00
panic_notifier.h
parman.h
parport.h
parport_pc.h
parser.h
part_stat.h
pata_arasan_cf_data.h
patchkey.h
path.h
pch_dma.h
pci-acpi.h
pci-ats.h
pci-doe.h
pci-ecam.h
pci-ep-cfs.h
pci-epc.h
pci-epf.h
pci-p2pdma.h
pci.h pci-v6.2-changes 2022-12-14 09:54:10 -08:00
pci_hotplug.h
pci_ids.h
pcs-altera-tse.h
pcs-lynx.h
pcs-rzn1-miic.h
pda_power.h
pe.h efi: Put Linux specific magic number in the DOS header 2022-12-05 09:31:46 +01:00
peci-cpu.h
peci.h
percpu-defs.h
percpu-refcount.h
percpu-rwsem.h
percpu.h Merge branch 'for-6.2' of git://git.kernel.org/pub/scm/linux/kernel/git/dennis/percpu 2022-12-12 16:07:04 -08:00
percpu_counter.h percpu_counter: add percpu_counter_sum_all interface 2022-11-30 15:58:40 -08:00
perf_event.h
perf_event_api.h
perf_regs.h
personality.h
pfn.h
pfn_t.h
pgtable.h mm: remove __HAVE_ARCH_PTE_SWP_EXCLUSIVE 2023-02-02 22:33:11 -08:00
pgtable_api.h
phonet.h
phy.h net: phy: Update documentation for get_rate_matching 2023-01-01 11:56:22 +00:00
phy_fixed.h
phy_led_triggers.h
phylink.h
pid.h
pid_namespace.h mm/memfd: add MFD_NOEXEC_SEAL and MFD_EXEC 2023-01-18 17:12:37 -08:00
pim.h
pipe_fs_i.h
pkeys.h
pktcdvd.h Revert "pktcdvd: remove driver." 2023-01-04 14:44:13 -07:00
pl320-ipc.h
platform_device.h
platform_profile.h
pldmfw.h
plist.h
pm-trace.h
pm.h
pm_clock.h
pm_domain.h
pm_opp.h
pm_qos.h
pm_runtime.h
pm_wakeirq.h
pm_wakeup.h
pmbus.h
pmu.h
pnp.h
poison.h
poll.h
polynomial.h
posix-clock.h
posix-timers.h
posix_acl.h
posix_acl_xattr.h
power_supply.h
powercap.h
ppp-comp.h
ppp_channel.h
ppp_defs.h
pps_kernel.h
pr.h
prandom.h prandom: remove prandom_u32_max() 2022-12-20 03:13:45 +01:00
preempt.h
prefetch.h
prime_numbers.h
printk.h
prmt.h
proc_fs.h
proc_ns.h
processor.h
profile.h
projid.h
property.h Driver Core changes for 6.2-rc1 2022-12-16 03:54:54 -08:00
pruss_driver.h
psci.h
pseudo_fs.h
psi.h
psi_types.h
psp-sev.h
psp-tee.h
pstore.h
pstore_blk.h
pstore_ram.h
pstore_zone.h
ptdump.h
pti.h
ptp_classify.h
ptp_clock_kernel.h
ptp_kvm.h
ptp_pch.h
ptr_ring.h
ptrace.h
ptrace_api.h
purgatory.h
pvclock_gtod.h
pwm.h pwm: Changes for v6.2-rc1 2022-12-21 09:41:28 -08:00
pwm_backlight.h
pxa2xx_ssp.h
pxa168_eth.h
qcom-geni-se.h
qcom_scm.h
qnx6_fs.h
quota.h
quotaops.h
radix-tree.h
raid_class.h
ramfs.h
random.h random: do not include <asm/archrandom.h> from random.h 2022-12-20 03:13:45 +01:00
randomize_kstack.h
range.h
ras.h
ratelimit.h
ratelimit_types.h
rational.h
rbtree.h
rbtree_augmented.h
rbtree_latch.h
rbtree_types.h
rcu_node_tree.h
rcu_segcblist.h
rcu_sync.h
rculist.h
rculist_bl.h
rculist_nulls.h
rcupdate.h Networking changes for 6.2. 2022-12-13 15:47:48 -08:00
rcupdate_trace.h
rcupdate_wait.h
rcutiny.h printk changes for 6.2 2022-12-12 09:01:36 -08:00
rcutree.h
rcuwait.h
rcuwait_api.h
reboot-mode.h
reboot.h
reciprocal_div.h
ref_tracker.h
refcount.h
refcount_api.h
regmap.h regmap-irq: Add handle_mask_sync() callback 2022-12-09 17:39:33 +00:00
regset.h
relay.h
remoteproc.h
resctrl.h
reset-controller.h
reset.h
resource.h
resource_ext.h
restart_block.h
resume_user_mode.h
rethook.h
rfkill.h
rhashtable-types.h
rhashtable.h rhashtable: Allow rhashtable to be used from irq-safe contexts 2022-12-09 10:42:56 +00:00
ring_buffer.h
rio.h
rio_drv.h
rio_ids.h
rio_regs.h
rmap.h mm: use entire_mapcount in __page_dup_rmap() 2023-02-02 22:32:57 -08:00
rmi.h
rndis.h
rodata_test.h
root_dev.h
rpmsg.h
rslib.h
rtc.h
rtmutex.h
rtnetlink.h
rtsx_common.h
rtsx_pci.h
rtsx_usb.h
rv.h
rwbase_rt.h
rwlock.h
rwlock_api_smp.h
rwlock_rt.h
rwlock_types.h
rwsem.h
s3c_adc_battery.h
sbitmap.h
scatterlist.h
scc.h
sched.h MM patches for 6.2-rc1. 2022-12-13 19:29:45 -08:00
sched_clock.h
scmi_protocol.h
scpi_protocol.h
screen_info.h
scs.h
sctp.h
scx200.h
scx200_gpio.h
seccomp.h seccomp: document the "filter_count" field 2022-12-02 11:33:48 -08:00
secretmem.h
securebits.h
security.h lsm/stable-6.2 PR 20221212 2022-12-13 09:47:48 -08:00
sed-opal.h block: sed-opal: Don't include <linux/kernel.h> 2022-12-08 09:18:58 -07:00
seg6.h
seg6_genl.h
seg6_hmac.h
seg6_iptunnel.h
seg6_local.h
selection.h
sem.h
semaphore.h
seq_buf.h
seq_file.h
seq_file_net.h
seqlock.h
seqlock_api.h
serdev.h
serial.h
serial_8250.h
serial_bcm63xx.h
serial_core.h TTY/Serial driver changes for 6.2-rc1 2022-12-16 03:31:56 -08:00
serial_max3100.h
serial_s3c.h
serial_sci.h
serio.h
set_memory.h x86/mm: Implement native set_memory_rox() 2022-12-15 10:37:27 -08:00
sfp.h
sh_clk.h
sh_dma.h
sh_eth.h
sh_intc.h
sh_timer.h
shdma-base.h
shm.h
shmem_fs.h mm: fix khugepaged with shmem_enabled=advise 2023-02-02 22:33:13 -08:00
shrinker.h mm: shrinkers: add missing includes for undeclared types 2022-11-30 15:58:55 -08:00
signal.h
signal_types.h
signalfd.h
siox.h
siphash.h
sizes.h
skb_array.h
skbuff.h skbuff: Introduce slab_build_skb() 2022-12-09 19:47:41 -08:00
skmsg.h bpf, sockmap: Fix missing BPF_F_INGRESS flag when using apply_bytes 2022-12-01 01:07:32 +01:00
slab.h slab updates for 6.2-rc1 2022-12-12 09:13:06 -08:00
slab_def.h mm/kasan: simplify and refine kasan_cache code 2023-01-18 17:12:55 -08:00
slimbus.h
slub_def.h mm/kasan: simplify and refine kasan_cache code 2023-01-18 17:12:55 -08:00
sm501-regs.h
sm501.h
smc91x.h
smp.h
smp_types.h
smpboot.h
smsc911x.h
smscphy.h
sock_diag.h
socket.h
sockptr.h
softirq.h
sonet.h
sony-laptop.h
sonypi.h
sort.h
sound.h
soundcard.h
spinlock.h
spinlock_api.h
spinlock_api_smp.h
spinlock_api_up.h
spinlock_rt.h
spinlock_types.h
spinlock_types_raw.h
spinlock_types_up.h
spinlock_up.h
splice.h
spmi.h
sram.h
srcu.h rcu: Make SRCU mandatory 2022-11-29 15:00:06 -08:00
srcutiny.h
srcutree.h
ssbi.h
stackdepot.h
stackleak.h
stackprotector.h
stacktrace.h
start_kernel.h
stat.h
statfs.h
static_call.h
static_call_types.h
static_key.h
stdarg.h
stddef.h
stm.h
stmmac.h net: stmmac: Power up SERDES after the PHY link 2022-12-05 09:44:42 +00:00
stmp3xxx_rtc_wdt.h
stmp_device.h
stop_machine.h
string.h mm: new primitive kvmemdup() 2023-01-18 17:12:47 -08:00
string_helpers.h
stringhash.h
stringify.h
sungem_phy.h
sunserialcore.h
sunxi-rsb.h
superhyway.h
surface_acpi_notify.h
suspend.h
svga.h
sw842.h
swab.h
swait.h
swait_api.h
swap.h Sync mm-stable with mm-hotfixes-stable to pick up dependent patches 2023-01-31 17:25:17 -08:00
swap_cgroup.h
swap_slots.h
swapfile.h
swapops.h mm/hugetlb: move swap entry handling into vma lock when faulted 2023-01-18 17:12:38 -08:00
swiotlb.h
switchtec.h
sxgbe_platform.h
sync_core.h
sync_file.h
synclink.h
sys.h
sys_soc.h
syscall_user_dispatch.h
syscalls.h
syscalls_api.h
syscore_ops.h
sysctl.h
sysfb.h
sysfs.h
syslog.h
sysrq.h
sysv_fs.h
t10-pi.h
task_io_accounting.h
task_io_accounting_ops.h
task_work.h
taskstats_kern.h
tboot.h
tc.h
tca6416_keypad.h
tcp.h
tee_drv.h
termios_internal.h
textsearch.h
textsearch_fsm.h
tfrc.h
thermal.h
thread_info.h
threads.h
thunderbolt.h
ti-emif-sram.h
ti_wilink_st.h
tick.h
tifm.h
timb_dma.h
timb_gpio.h
time.h
time32.h
time64.h
time_namespace.h vdso/timens: Refactor copy-pasted find_timens_vvar_page() helper into one copy 2022-12-01 11:35:40 +01:00
timecounter.h
timekeeper_internal.h
timekeeping.h
timer.h
timerfd.h
timeriomem-rng.h
timerqueue.h
timex.h
tnum.h
topology.h
torture.h
toshiba.h
tpm.h
tpm_command.h
tpm_eventlog.h efi: tpm: Avoid READ_ONCE() for accessing the event log 2023-01-13 17:15:17 +01:00
trace.h
trace_clock.h
trace_events.h tracing: Fix some checker warnings 2022-12-10 13:36:05 -05:00
trace_recursion.h
trace_seq.h tracing: Fix some checker warnings 2022-12-10 13:36:05 -05:00
tracefs.h
tracepoint-defs.h
tracepoint.h
transport_class.h
ts-nbus.h
tsacct_kern.h
tty.h
tty_buffer.h
tty_driver.h
tty_flip.h
tty_ldisc.h
tty_port.h
typecheck.h
types.h
u64_stats_sync.h
u64_stats_sync_api.h
uacce.h
uaccess.h
ucb1400.h
ucs2_string.h
udp.h
uidgid.h
uio.h for-6.2/block-2022-12-08 2022-12-13 10:43:59 -08:00
uio_driver.h
umh.h
unicode.h
units.h
uprobes.h
usb.h Driver Core changes for 6.2-rc1 2022-12-16 03:54:54 -08:00
usb_usual.h
usbdevice_fs.h
user-return-notifier.h
user.h
user_events.h
user_namespace.h
userfaultfd_k.h mm/uffd: detect pgtable allocation failures 2023-01-18 17:12:53 -08:00
usermode_driver.h
util_macros.h
uts.h
utsname.h
uuid.h
vbox_utils.h
vdpa.h
verification.h
vermagic.h
vexpress.h
vfio.h VFIO updates for v6.2-rc1 2022-12-15 13:12:15 -08:00
vfio_pci_core.h
vfs.h
vga_switcheroo.h
vgaarb.h
vhost_iotlb.h
via-core.h
via-gpio.h
via.h
via_i2c.h
videodev2.h
virtio.h
virtio_anchor.h
virtio_byteorder.h
virtio_caif.h
virtio_config.h
virtio_console.h
virtio_dma_buf.h
virtio_net.h linux/virtio_net.h: Support USO offload in vnet header. 2022-12-12 09:29:56 +00:00
virtio_pci_legacy.h
virtio_pci_modern.h
virtio_ring.h
virtio_vsock.h
vlynq.h
vm_event_item.h mm: vmscan: split khugepaged stats from direct reclaim stats 2022-11-30 15:58:41 -08:00
vmalloc.h
vmpressure.h
vmstat.h
vmw_vmci_api.h
vmw_vmci_defs.h
vringh.h
vt.h
vt_buffer.h
vt_kern.h
vtime.h
w1-gpio.h
w1.h
wait.h
wait_api.h
wait_bit.h
watch_queue.h
watchdog.h
win_minmax.h
wireless.h
wkup_m3_ipc.h
wm97xx.h
wmi.h
workqueue.h
workqueue_api.h
writeback.h mm/fs: convert inode_attach_wb() to take a folio 2023-02-02 22:33:19 -08:00
ww_mutex.h
wwan.h
xarray.h swap_state: update shadow_nodes for anonymous page 2023-02-02 22:33:24 -08:00
xattr.h fs.xattr.simple.rework.rbtree.rwlock.v6.2 2022-12-13 10:08:36 -08:00
xxhash.h
xz.h
yam.h
z2_battery.h
zconf.h
zlib.h
zorro.h
zpool.h
zsmalloc.h zram: add size class equals check into recompression 2022-11-30 15:58:52 -08:00
zstd.h
zstd_errors.h
zstd_lib.h
zutil.h