linux/include/linux
Alistair Popple e778406b40 mm/migrate_device.c: add migrate_device_range()
Device drivers can use the migrate_vma family of functions to migrate
existing private anonymous mappings to device private pages.  These pages
are backed by memory on the device with drivers being responsible for
copying data to and from device memory.

Device private pages are freed via the pgmap->page_free() callback when
they are unmapped and their refcount drops to zero.  Alternatively they
may be freed indirectly via migration back to CPU memory in response to a
pgmap->migrate_to_ram() callback called whenever the CPU accesses an
address mapped to a device private page.

In other words drivers cannot control the lifetime of data allocated on
the devices and must wait until these pages are freed from userspace. 
This causes issues when memory needs to reclaimed on the device, either
because the device is going away due to a ->release() callback or because
another user needs to use the memory.

Drivers could use the existing migrate_vma functions to migrate data off
the device.  However this would require them to track the mappings of each
page which is both complicated and not always possible.  Instead drivers
need to be able to migrate device pages directly so they can free up
device memory.

To allow that this patch introduces the migrate_device family of functions
which are functionally similar to migrate_vma but which skips the initial
lookup based on mapping.

Link: https://lkml.kernel.org/r/868116aab70b0c8ee467d62498bb2cf0ef907295.1664366292.git-series.apopple@nvidia.com
Signed-off-by: Alistair Popple <apopple@nvidia.com>
Cc: "Huang, Ying" <ying.huang@intel.com>
Cc: Zi Yan <ziy@nvidia.com>
Cc: Matthew Wilcox <willy@infradead.org>
Cc: Yang Shi <shy828301@gmail.com>
Cc: David Hildenbrand <david@redhat.com>
Cc: Ralph Campbell <rcampbell@nvidia.com>
Cc: John Hubbard <jhubbard@nvidia.com>
Cc: Alex Deucher <alexander.deucher@amd.com>
Cc: Alex Sierra <alex.sierra@amd.com>
Cc: Ben Skeggs <bskeggs@redhat.com>
Cc: Christian König <christian.koenig@amd.com>
Cc: Dan Williams <dan.j.williams@intel.com>
Cc: Felix Kuehling <Felix.Kuehling@amd.com>
Cc: Jason Gunthorpe <jgg@nvidia.com>
Cc: Lyude Paul <lyude@redhat.com>
Cc: Michael Ellerman <mpe@ellerman.id.au>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
2022-10-12 18:51:49 -07:00
..
amba
atomic
avf
bcma
byteorder
can
ceph
clk
comedi
crush
decompress
device
dma
dsa
extcon
firmware
fpga
fsl
gpio
greybus
hsi
i3c
iio
input
irqchip
isdn
lockd
mailbox
mdio
mfd
mlx4
mlx5 net/mlx5: Avoid false positive lockdep warning by adding lock_class_key 2022-08-22 12:57:08 -07:00
mmc
mtd
mux
net/intel
netfilter
netfilter_arp
netfilter_bridge netfilter: ebtables: reject blobs that don't provide all entry points 2022-08-23 18:23:15 +02:00
netfilter_ipv4
netfilter_ipv6
pcs
perf
phy
pinctrl
platform_data
power
qed
raid
regulator
remoteproc
reset
rpmsg
rtc
sched mm: delete unused MMF_OOM_VICTIM flag 2022-09-26 19:46:27 -07:00
soc
soundwire
spi
ssb
sunrpc
surface_aggregator
ulpi
unaligned
usb
8250_pci.h
a.out.h
acct.h
acpi_agdi.h
acpi_dma.h
acpi_iort.h
acpi_mdio.h
acpi_pmtmr.h
acpi_viot.h
acpi.h
adb.h
adfs_fs.h
adreno-smmu-priv.h
adxl.h
aer.h
agp_backend.h
agpgart.h
ahci_platform.h
ahci-remap.h
aio.h
alarmtimer.h
alcor_pci.h
align.h
altera_jtaguart.h
altera_uart.h
amd-iommu.h
anon_inodes.h
aperture.h
apm_bios.h
apm-emulation.h
apple_bl.h
apple-gmux.h
apple-mailbox.h
arch_topology.h
arm_ffa.h
arm_sdei.h
arm-cci.h
arm-smccc.h
armada-37xx-rwtm-mailbox.h
ascii85.h
asn1_ber_bytecode.h
asn1_decoder.h
asn1_encoder.h
asn1.h
assoc_array_priv.h
assoc_array.h
async_tx.h
async.h
ata_platform.h
ata.h
atalk.h
ath9k_platform.h
atm_tcp.h
atm.h
atmdev.h
atmel_pdc.h
atmel-isc-media.h
atmel-mci.h
atmel-ssc.h
atomic.h
attribute_container.h
audit_arch.h
audit.h
auto_dev-ioctl.h
auto_fs.h
auxiliary_bus.h
auxvec.h
average.h
backing-dev-defs.h
backing-dev.h
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
bit_spinlock.h
bitfield.h
bitmap.h
bitops.h wait_on_bit: add an acquire memory barrier 2022-08-26 09:30:25 -07:00
bitrev.h
bits.h
blk_types.h
blk-cgroup.h
blk-crypto-profile.h
blk-crypto.h
blk-integrity.h
blk-mq-pci.h
blk-mq-rdma.h
blk-mq-virtio.h
blk-mq.h blk-mq: remove unused function blk_mq_queue_stopped() 2022-08-18 07:38:10 -06:00
blk-pm.h
blkdev.h
blkpg.h
blktrace_api.h
blockgroup_lock.h
bma150.h
bootconfig.h
bootmem_info.h
bottom_half.h
bpf_lirc.h
bpf_local_storage.h
bpf_lsm.h
bpf_trace.h
bpf_types.h
bpf_verifier.h
bpf-cgroup-defs.h
bpf-cgroup.h
bpf-netns.h
bpf.h
bpfilter.h
bpfptr.h
brcmphy.h
bsearch.h
bsg-lib.h
bsg.h
btf_ids.h
btf.h
btree-128.h
btree-type.h
btree.h
btrfs.h
buffer_head.h fs/buffer: remove bh_submit_read() helper 2022-09-11 20:26:08 -07:00
bug.h
build_bug.h
build-salt.h
buildid.h
bvec.h
c2port.h
cache.h mm: deduplicate cacheline padding code 2022-09-26 19:46:29 -07:00
cacheflush.h
cacheinfo.h
capability.h
cb710.h
cc_platform.h
cciss_ioctl.h
ccp.h
cdev.h
cdrom.h
cfag12864b.h
cfi.h
cgroup_api.h
cgroup_rdma.h
cgroup_subsys.h
cgroup-defs.h
cgroup.h mm: multi-gen LRU: kill switch 2022-09-26 19:46:10 -07:00
circ_buf.h
clk-provider.h
clk.h
clkdev.h
clockchips.h
clocksource_ids.h
clocksource.h
cm4000_cs.h
cma.h
cn_proc.h
cnt32_to_63.h
coda.h
compaction.h
compat.h
compiler_attributes.h
compiler_types.h kmsan: mark noinstr as __no_sanitize_memory 2022-10-03 14:03:19 -07:00
compiler-clang.h kmsan: introduce __no_sanitize_memory and __no_kmsan_checks 2022-10-03 14:03:19 -07:00
compiler-gcc.h kmsan: introduce __no_sanitize_memory and __no_kmsan_checks 2022-10-03 14:03:19 -07:00
compiler-intel.h
compiler-version.h
compiler.h
completion.h
component.h
configfs.h
connector.h
console_struct.h
console.h
consolemap.h
const.h
container_of.h
container.h
context_tracking_irq.h
context_tracking_state.h
context_tracking.h
cookie.h
cordic.h
coredump.h
coresight-pmu.h
coresight-stm.h
coresight.h
count_zeros.h
counter.h
cper.h
cpu_cooling.h
cpu_pm.h
cpu_rmap.h
cpu.h
cpufeature.h
cpufreq.h
cpuhotplug.h
cpuidle_haltpoll.h
cpuidle.h
cpumask_api.h
cpumask.h lib/cpumask: add inline cpumask_next_wrap() for UP 2022-08-15 11:00:44 -07:00
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
cs5535.h
ctype.h
cuda.h
damon.h mm/damon: move sz_damon_region to damon_sz_region 2022-10-12 18:51:49 -07:00
dasd_mod.h
davinci_emac.h
dax.h
dca.h
dcache.h
dccp.h
debug_locks.h
debugfs.h
debugobjects.h
delay.h
delayacct.h delayacct: support re-entrance detection of thrashing accounting 2022-09-26 19:46:07 -07:00
delayed_call.h
dev_printk.h
devcoredump.h
devfreq_cooling.h
devfreq-event.h
devfreq.h
device_cgroup.h
device-mapper.h
device.h
devm-helpers.h
devpts_fs.h
dfl.h
digsig.h
dim.h
dio.h
dirent.h
dlm_plock.h
dlm.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-iommu.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_genl_api.h
drbd_genl.h
drbd_limits.h
drbd.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_embedded_fw.h
efi-bgrt.h
efi.h
efs_vh.h
eisa.h
elf-fdpic.h
elf-randomize.h
elf.h
elfcore-compat.h
elfcore.h
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_netlink.h
ethtool.h
eventfd.h
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
fbcon.h
fcdevice.h
fcntl.h
fd.h
fddidevice.h
fdtable.h
fec.h
fiemap.h
file.h
fileattr.h
filter.h
find.h
fips.h
firewire.h
firmware-map.h
firmware.h
fixp-arith.h
flat.h
flex_proportions.h
font.h
fortify-string.h x86: kmsan: use __msan_ string functions where possible. 2022-10-03 14:03:24 -07:00
fprobe.h
freelist.h
freezer.h
frontswap.h
fs_api.h
fs_context.h
fs_enet_pd.h
fs_parser.h
fs_pin.h
fs_stack.h
fs_struct.h
fs_types.h
fs_uart_pd.h
fs.h io_uring-6.0-2022-08-13 2022-08-13 13:28:54 -07:00
fscache-cache.h
fscache.h
fscrypt.h
fsi-occ.h
fsi-sbefifo.h
fsi.h
fsl_devices.h
fsl_hypervisor.h
fsl_ifc.h
fsl-diu-fb.h
fsldma.h
fsnotify_backend.h
fsnotify.h
fsverity.h
ftrace_irq.h
ftrace.h
futex.h
fwnode_mdio.h
fwnode.h
gameport.h
gcd.h
genalloc.h
generic-radix-tree.h
genetlink.h
genl_magic_func.h
genl_magic_struct.h
getcpu.h
gfp_api.h
gfp_types.h
gfp.h mm/page_alloc: remove obsolete gfpflags_normal_context() 2022-10-03 14:03:30 -07:00
glob.h
gnss.h
goldfish.h
gpio_keys.h
gpio-pxa.h
gpio.h
greybus.h
hardirq.h
hash.h
hashtable_api.h
hashtable.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.h mm: kmsan: maintain KMSAN metadata for page operations 2022-10-03 14:03:20 -07:00
highuid.h
hil_mlc.h
hil.h
hippidevice.h
hisi_acc_qm.h
hmm.h
host1x_context_bus.h
host1x.h
hp_sdc.h
hpet.h
hrtimer_api.h
hrtimer_defs.h
hrtimer.h
htcpld.h
hte.h
huge_mm.h mm: add split_folio() 2022-10-03 14:02:45 -07:00
hugetlb_cgroup.h hugetlb_cgroup: remove unneeded return value 2022-09-11 20:25:53 -07:00
hugetlb_inline.h
hugetlb.h hugetlb: add vma based lock for pmd sharing 2022-10-03 14:03:17 -07:00
hw_breakpoint.h
hw_random.h
hwmon-sysfs.h
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
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_diag.h
inet.h
inetdevice.h
init_ohci1394_dma.h
init_syscalls.h
init_task.h
init.h
initrd.h
inotify.h
input.h
instruction_pointer.h
instrumentation.h
instrumented.h instrumented.h: add KMSAN support 2022-10-03 14:03:21 -07:00
integrity.h
intel_rapl.h
intel_th.h
intel-ish-client-if.h
intel-svm.h
interconnect-provider.h
interconnect.h
interrupt.h
interval_tree_generic.h
interval_tree.h
io_uring_types.h io_uring: make io_kiocb_to_cmd() typesafe 2022-08-12 17:01:00 -06:00
io_uring.h
io-64-nonatomic-hi-lo.h
io-64-nonatomic-lo-hi.h
io-mapping.h
io-pgtable.h
io.h
ioam6_genl.h
ioam6_iptunnel.h
ioam6.h
ioasid.h
iocontext.h
iomap.h
iommu-helper.h
iommu.h
iopoll.h
ioport.h
ioprio.h
iosys-map.h
iova.h
ip.h
ipack.h
ipc_namespace.h
ipc.h
ipmi_smi.h
ipmi.h
ipv6_route.h
ipv6.h
irq_poll.h
irq_sim.h
irq_work.h
irq.h
irqbypass.h
irqchip.h
irqdesc.h
irqdomain.h
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
jhash.h
jiffies.h
journal-head.h
joystick.h
jump_label_ratelimit.h
jump_label.h
jz4740-adc.h
jz4780-nemc.h
kallsyms.h
kasan-checks.h
kasan-enabled.h
kasan-tags.h
kasan.h kasan: only define kasan_cache_create for Generic mode 2022-10-03 14:02:59 -07:00
kbd_diacr.h
kbd_kern.h
kbuild.h
kconfig.h
kcore.h
kcov.h
kcsan-checks.h
kcsan.h
kdb.h
kdebug.h
kdev_t.h
kern_levels.h
kernel_read_file.h
kernel_stat.h
kernel-page-flags.h
kernel.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/madvise: add file and shmem support to MADV_COLLAPSE 2022-10-03 14:03:33 -07:00
klist.h
kmemleak.h
kmod.h
kmsan_types.h kmsan: add KMSAN runtime core 2022-10-03 14:03:19 -07:00
kmsan-checks.h instrumented.h: add KMSAN support 2022-10-03 14:03:21 -07:00
kmsan.h entry: kmsan: introduce kmsan_unpoison_entry_regs() 2022-10-03 14:03:25 -07:00
kmsg_dump.h
kobj_map.h
kobject_api.h
kobject_ns.h
kobject.h
kprobes.h
kref_api.h
kref.h
ks0108.h
ks8842.h
ks8851_mll.h
ksm.h ksm: remove redundant declarations in ksm.h 2022-10-03 14:02:43 -07:00
kstrtox.h
kthread.h
ktime_api.h
ktime.h
kvm_dirty_ring.h
kvm_host.h KVM: Rename mmu_notifier_* to mmu_invalidate_* 2022-08-19 04:05:41 -04:00
kvm_irqfd.h
kvm_para.h
kvm_types.h
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 ata: libata: Set __ATA_BASE_SHT max_sectors 2022-08-21 01:29:50 +09:00
libfdt_env.h
libfdt.h
libgcc.h
libnvdimm.h
libps2.h
license.h
limits.h
linear_range.h
linkage.h
linkmode.h
linux_logo.h
lis3lv02d.h
list_bl.h
list_lru.h
list_nulls.h
list_sort.h
list.h
litex.h
livepatch.h
llc.h
llist_api.h
llist.h
local_lock_internal.h
local_lock.h
lockdep_api.h
lockdep_types.h
lockdep.h
lockref.h
log2.h
logic_iomem.h
logic_pio.h
lp.h
lru_cache.h
lsm_audit.h
lsm_hook_defs.h
lsm_hooks.h
lz4.h
lzo.h
mailbox_client.h
mailbox_controller.h
map_benchmark.h
maple_tree.h Maple Tree: add new data structure 2022-09-26 19:46:13 -07:00
maple.h
marvell_phy.h
math.h
math64.h
mbcache.h
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: memcontrol: use memcg_kmem_enabled in count_objcg_event 2022-10-03 14:03:32 -07:00
memfd.h
memory_hotplug.h mm, memory_hotplug: remove obsolete generic_free_nodedata() 2022-10-03 14:03:29 -07:00
memory-tiers.h mm/demotion: update node_is_toptier to work with memory tiers 2022-09-26 19:46:12 -07:00
memory.h
mempolicy.h mm/hugetlb: add dedicated func to get 'allowed' nodemask for current process 2022-09-11 20:25:50 -07:00
mempool.h
memregion.h
memremap.h mm: free device private pages have zero refcount 2022-10-12 18:51:49 -07:00
memstick.h
mhi_ep.h
mhi.h
micrel_phy.h
microchipphy.h
migrate_mode.h
migrate.h mm/migrate_device.c: add migrate_device_range() 2022-10-12 18:51:49 -07:00
mii_timestamper.h
mii.h
min_heap.h
minmax.h
misc_cgroup.h
miscdevice.h
mISDNdsp.h
mISDNhw.h
mISDNif.h
mm_api.h
mm_inline.h mm: remove unused inline functions from include/linux/mm_inline.h 2022-10-03 14:03:35 -07:00
mm_types_task.h mm: remove vmacache 2022-09-26 19:46:18 -07:00
mm_types.h kmsan: add KMSAN runtime core 2022-10-03 14:03:19 -07:00
mm.h mm/page_alloc: add __init annotations to init_mem_debugging_and_hardening() 2022-10-03 14:03:28 -07:00
mman.h
mmap_lock.h
mmdebug.h
mmiotrace.h
mmu_context.h
mmu_notifier.h
mmzone.h mm: remove obsolete pgdat_is_empty() 2022-10-03 14:03:29 -07:00
mnt_idmapping.h
mnt_namespace.h
mod_devicetable.h
module_signature.h
module.h
moduleloader.h
moduleparam.h
most.h
mount.h
moxtet.h
mpage.h
mpi.h
mpls_iptunnel.h
mpls.h
mroute_base.h
mroute.h
mroute6.h
msdos_fs.h
msdos_partition.h
msg.h
msi.h
mtio.h
mutex_api.h
mutex.h
mv643xx_eth.h
mv643xx_i2c.h
mv643xx.h
mvebu-pmsu.h
mxm-wmi.h
namei.h
nd.h
ndctl.h
net.h
netdev_features.h
netdevice.h net: Fix data-races around sysctl_devconf_inherit_init_net. 2022-08-24 13:46:58 +01:00
netfilter_bridge.h
netfilter_defs.h
netfilter_ipv4.h
netfilter_ipv6.h
netfilter_netdev.h
netfilter.h
netfs.h
netlink.h
netpoll.h
nfs_fs_i.h
nfs_fs_sb.h
nfs_fs.h NFS: Cleanup to remove unused flag NFS_CONTEXT_RESEND_WRITES 2022-08-13 13:02:14 -04:00
nfs_iostat.h
nfs_page.h
nfs_ssc.h
nfs_xdr.h
nfs.h
nfs3.h
nfs4.h
nfsacl.h
nitro_enclaves.h
nl802154.h
nls.h
nmi.h
node.h mm: hugetlb: simplify per-node sysfs creation and removal 2022-10-03 14:03:15 -07:00
nodemask.h lib/nodemask: optimize node_random for nodemask with single NUMA node 2022-09-26 19:46:13 -07:00
nospec.h
notifier.h
ns_common.h
nsc_gpio.h
nsproxy.h
ntb_transport.h
ntb.h
nubus.h
numa.h
nvme-auth.h
nvme-fc-driver.h
nvme-fc.h
nvme-rdma.h
nvme-tcp.h
nvme.h
nvmem-consumer.h
nvmem-provider.h
nvram.h
objagg.h
objtool.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
of.h
oid_registry.h
olpc-ec.h
omap-dma.h
omap-gpmc.h
omap-iommu.h
omap-mailbox.h
omapfb.h
once_lite.h
once.h
oom.h mm: delete unused MMF_OOM_VICTIM flag 2022-09-26 19:46:27 -07:00
openvswitch.h
osq_lock.h
overflow.h
packing.h
padata.h
page_counter.h mm: deduplicate cacheline padding code 2022-09-26 19:46:29 -07:00
page_ext.h page_ext: introduce boot parameter 'early_page_ext' 2022-09-11 20:26:02 -07:00
page_idle.h mm: fix use-after free of page_ext after race with memory-offline 2022-09-11 20:25:57 -07:00
page_owner.h
page_ref.h
page_reporting.h
page_table_check.h
page-flags-layout.h mm: multi-gen LRU: minimal implementation 2022-09-26 19:46:09 -07:00
page-flags.h mm: multi-gen LRU: groundwork 2022-09-26 19:46:09 -07:00
page-isolation.h
pageblock-flags.h mm: add pageblock_aligned() macro 2022-10-03 14:03:04 -07:00
pagemap.h mm/filemap: make folio_put_wait_locked static 2022-10-03 14:03:15 -07:00
pagevec.h
pagewalk.h mm: pagewalk: fix documentation of PTE hole handling 2022-09-11 20:26:00 -07:00
panic_notifier.h
panic.h
parman.h
parport_pc.h
parport.h
parser.h
part_stat.h
pata_arasan_cf_data.h
patchkey.h
path.h
pch_dma.h
pci_hotplug.h
pci_ids.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
pcs-lynx.h
pcs-rzn1-miic.h
pda_power.h
pe.h
peci-cpu.h
peci.h
percpu_counter.h
percpu-defs.h
percpu-refcount.h
percpu-rwsem.h
percpu.h
perf_event_api.h
perf_event.h
perf_regs.h
personality.h
pfn_t.h
pfn.h
pgtable_api.h
pgtable.h mm: x86: add CONFIG_ARCH_HAS_NONLEAF_PMD_YOUNG 2022-09-26 19:46:08 -07:00
phonet.h
phy_fixed.h
phy_led_triggers.h
phy.h
phylink.h
pid_namespace.h
pid.h
pim.h
pipe_fs_i.h
pkeys.h
pktcdvd.h
pl320-ipc.h
platform_device.h
platform_profile.h
pldmfw.h
plist.h
pm_clock.h
pm_domain.h
pm_opp.h
pm_qos.h
pm_runtime.h
pm_wakeirq.h
pm_wakeup.h
pm-trace.h
pm.h
pmbus.h
pmu.h
pnp.h
poison.h
poll.h
polynomial.h
posix_acl_xattr.h
posix_acl.h
posix-clock.h
posix-timers.h
power_supply.h
powercap.h
ppp_channel.h
ppp_defs.h
ppp-comp.h
pps_kernel.h
pr.h
prandom.h
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
pruss_driver.h
psci.h
pseudo_fs.h
psi_types.h
psi.h sched/psi: Remove unused parameter nbytes of psi_trigger_create() 2022-08-15 12:35:25 -10:00
psp-sev.h
psp-tee.h
pstore_blk.h
pstore_ram.h
pstore_zone.h
pstore.h
ptdump.h
pti.h
ptp_classify.h
ptp_clock_kernel.h
ptp_kvm.h
ptp_pch.h
ptr_ring.h
ptrace_api.h
ptrace.h
purgatory.h
pvclock_gtod.h
pwm_backlight.h
pwm.h
pxa2xx_ssp.h
pxa168_eth.h
qcom_scm.h
qcom-geni-se.h
qnx6_fs.h
quota.h
quotaops.h
radix-tree.h radix-tree: replace gfp.h inclusion with gfp_types.h 2022-08-14 13:31:03 -07:00
raid_class.h
ramfs.h
random.h
randomize_kstack.h
range.h
ras.h
ratelimit_types.h
ratelimit.h
rational.h
rbtree_augmented.h
rbtree_latch.h
rbtree_types.h
rbtree.h
rcu_node_tree.h
rcu_segcblist.h
rcu_sync.h
rculist_bl.h
rculist_nulls.h
rculist.h
rcupdate_trace.h
rcupdate_wait.h
rcupdate.h
rcutiny.h
rcutree.h
rcuwait_api.h
rcuwait.h
reboot-mode.h
reboot.h
reciprocal_div.h
ref_tracker.h
refcount_api.h
refcount.h
regmap.h
regset.h
relay.h
remoteproc.h
resctrl.h
reset-controller.h
reset.h
resource_ext.h
resource.h
restart_block.h
resume_user_mode.h
rethook.h
rfkill.h
rhashtable-types.h
rhashtable.h
ring_buffer.h
rio_drv.h
rio_ids.h
rio_regs.h
rio.h
rmap.h rmap: remove page_unlock_anon_vma_read() 2022-10-03 14:02:54 -07: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_api_smp.h
rwlock_rt.h
rwlock_types.h
rwlock.h
rwsem.h
s3c_adc_battery.h
sbitmap.h
scatterlist.h
scc.h
sched_clock.h
sched.h mm: more vma cache removal 2022-10-12 15:56:46 -07:00
scmi_protocol.h
scpi_protocol.h
screen_info.h
scs.h
sctp.h
scx200_gpio.h
scx200.h
seccomp.h
secretmem.h
securebits.h
security.h
sed-opal.h
seg6_genl.h
seg6_hmac.h
seg6_iptunnel.h
seg6_local.h
seg6.h
selection.h
sem.h
semaphore.h
seq_buf.h
seq_file_net.h
seq_file.h
seqlock_api.h
seqlock.h
serdev.h
serial_8250.h
serial_bcm63xx.h
serial_core.h
serial_max3100.h
serial_s3c.h
serial_sci.h
serial.h
serio.h
set_memory.h
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/shmem: add flag to enforce shmem THP in hugepage_vma_check() 2022-10-03 14:03:33 -07:00
shrinker.h
signal_types.h
signal.h
signalfd.h
siox.h
siphash.h
sizes.h
skb_array.h
skbuff.h
skmsg.h
slab_def.h
slab.h kasan: only define kasan_cache_create for Generic mode 2022-10-03 14:02:59 -07:00
slimbus.h
slub_def.h
sm501-regs.h
sm501.h
smc91x.h
smc911x.h
smp_types.h
smp.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_api_smp.h
spinlock_api_up.h
spinlock_api.h
spinlock_rt.h
spinlock_types_raw.h
spinlock_types_up.h
spinlock_types.h
spinlock_up.h
spinlock.h
splice.h
spmi.h
sram.h
srcu.h
srcutiny.h
srcutree.h
ssbi.h
stackdepot.h stackdepot: reserve 5 extra bits in depot_stack_handle_t 2022-10-03 14:03:18 -07:00
stackleak.h
stackprotector.h
stacktrace.h
start_kernel.h
stat.h
statfs.h
static_call_types.h
static_call.h
static_key.h
stdarg.h
stddef.h
stm.h
stmmac.h
stmp_device.h
stmp3xxx_rtc_wdt.h
stop_machine.h
string_helpers.h
string.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_api.h
swait.h
swap_cgroup.h mm: memcontrol: drop dead CONFIG_MEMCG_SWAP config symbol 2022-10-03 14:03:36 -07:00
swap_slots.h
swap.h mm: memcontrol: drop dead CONFIG_MEMCG_SWAP config symbol 2022-10-03 14:03:36 -07:00
swapfile.h mm/swap: cache swap migration A/D bits support 2022-09-26 19:46:05 -07:00
swapops.h mm/swap: cache swap migration A/D bits support 2022-09-26 19:46:05 -07:00
swiotlb.h
switchtec.h
sxgbe_platform.h
sync_core.h
sync_file.h
synclink.h
sys_soc.h
sys.h
syscall_user_dispatch.h
syscalls_api.h
syscalls.h
syscore_ops.h
sysctl.h
sysfb.h
sysfs.h
syslog.h
sysrq.h
sysv_fs.h
t10-pi.h
task_io_accounting_ops.h
task_io_accounting.h
task_work.h
taskstats_kern.h
tboot.h
tc.h
tca6416_keypad.h
tcp.h
tee_drv.h
textsearch_fsm.h
textsearch.h
tfrc.h
thermal.h
thread_info.h
threads.h
thunderbolt.h
ti_wilink_st.h
ti-emif-sram.h
tick.h
tifm.h
timb_dma.h
timb_gpio.h
time_namespace.h
time.h
time32.h
time64.h
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_command.h
tpm_eventlog.h
tpm.h
trace_clock.h
trace_events.h
trace_recursion.h
trace_seq.h
trace.h
tracefs.h
tracepoint-defs.h
tracepoint.h
transport_class.h
ts-nbus.h
tsacct_kern.h
tty_buffer.h
tty_driver.h
tty_flip.h
tty_ldisc.h
tty_port.h
tty.h
typecheck.h
types.h
u64_stats_sync_api.h
u64_stats_sync.h
uacce.h
uaccess.h instrumented.h: allow instrumenting both sides of copy_from_user() 2022-10-03 14:03:18 -07:00
ucb1400.h
ucs2_string.h
udp.h
uidgid.h
uio_driver.h
uio.h
umh.h
unicode.h
units.h
uprobes.h
usb_usual.h
usb.h
usbdevice_fs.h
user_events.h
user_namespace.h
user-return-notifier.h
user.h
userfaultfd_k.h userfaultfd: use maple tree iterator to iterate VMAs 2022-09-26 19:46:21 -07: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_pci_core.h
vfio.h
vfs.h
vga_switcheroo.h
vgaarb.h
vhost_iotlb.h
via_i2c.h
via-core.h
via-gpio.h
via.h
videodev2.h
virtio_anchor.h
virtio_byteorder.h
virtio_caif.h
virtio_config.h virtio: kerneldocs fixes and enhancements 2022-08-16 01:40:24 -04:00
virtio_console.h
virtio_dma_buf.h
virtio_net.h
virtio_pci_legacy.h
virtio_pci_modern.h
virtio_ring.h
virtio_vsock.h
virtio.h virtio: kerneldocs fixes and enhancements 2022-08-16 01:40:24 -04:00
vlynq.h
vm_event_item.h mm: remove vmacache 2022-09-26 19:46:18 -07:00
vmalloc.h
vmpressure.h
vmstat.h mm: remove vmacache 2022-09-26 19:46:18 -07:00
vmw_vmci_api.h
vmw_vmci_defs.h
vringh.h
vt_buffer.h
vt_kern.h
vt.h
vtime.h
w1-gpio.h
w1.h
wait_api.h
wait_bit.h wait_on_bit: add an acquire memory barrier 2022-08-26 09:30:25 -07:00
wait.h
watch_queue.h
watchdog.h
win_minmax.h
wireless.h
wkup_m3_ipc.h
wl12xx.h
wm97xx.h
wmi.h
workqueue_api.h
workqueue.h
writeback.h writeback: remove unused macro DIRTY_FULL_SCOPE 2022-10-03 14:03:08 -07:00
ww_mutex.h
wwan.h
xarray.h
xattr.h
xxhash.h
xz.h
yam.h
z2_battery.h
zconf.h
zlib.h
zorro.h
zpool.h
zsmalloc.h
zstd_errors.h
zstd_lib.h
zstd.h
zutil.h