mirror-linux/include/uapi/linux
Gregory Price fa3bea4e1f mm/mempolicy: introduce MPOL_WEIGHTED_INTERLEAVE for weighted interleaving
When a system has multiple NUMA nodes and it becomes bandwidth hungry,
using the current MPOL_INTERLEAVE could be an wise option.

However, if those NUMA nodes consist of different types of memory such as
socket-attached DRAM and CXL/PCIe attached DRAM, the round-robin based
interleave policy does not optimally distribute data to make use of their
different bandwidth characteristics.

Instead, interleave is more effective when the allocation policy follows
each NUMA nodes' bandwidth weight rather than a simple 1:1 distribution.

This patch introduces a new memory policy, MPOL_WEIGHTED_INTERLEAVE,
enabling weighted interleave between NUMA nodes.  Weighted interleave
allows for proportional distribution of memory across multiple numa nodes,
preferably apportioned to match the bandwidth of each node.

For example, if a system has 1 CPU node (0), and 2 memory nodes (0,1),
with bandwidth of (100GB/s, 50GB/s) respectively, the appropriate weight
distribution is (2:1).

Weights for each node can be assigned via the new sysfs extension:
/sys/kernel/mm/mempolicy/weighted_interleave/

For now, the default value of all nodes will be `1`, which matches the
behavior of standard 1:1 round-robin interleave.  An extension will be
added in the future to allow default values to be registered at kernel and
device bringup time.

The policy allocates a number of pages equal to the set weights.  For
example, if the weights are (2,1), then 2 pages will be allocated on node0
for every 1 page allocated on node1.

The new flag MPOL_WEIGHTED_INTERLEAVE can be used in set_mempolicy(2)
and mbind(2).

Some high level notes about the pieces of weighted interleave:

current->il_prev:
    Tracks the node previously allocated from.

current->il_weight:
    The active weight of the current node (current->il_prev)
    When this reaches 0, current->il_prev is set to the next node
    and current->il_weight is set to the next weight.

weighted_interleave_nodes:
    Counts the number of allocations as they occur, and applies the
    weight for the current node.  When the weight reaches 0, switch
    to the next node.  Operates only on task->mempolicy.

weighted_interleave_nid:
    Gets the total weight of the nodemask as well as each individual
    node weight, then calculates the node based on the given index.
    Operates on VMA policies.

bulk_array_weighted_interleave:
    Gets the total weight of the nodemask as well as each individual
    node weight, then calculates the number of "interleave rounds" as
    well as any delta ("partial round").  Calculates the number of
    pages for each node and allocates them.

    If a node was scheduled for interleave via interleave_nodes, the
    current weight will be allocated first.

    Operates only on the task->mempolicy.

One piece of complexity is the interaction between a recent refactor which
split the logic to acquire the "ilx" (interleave index) of an allocation
and the actually application of the interleave.  If a call to
alloc_pages_mpol() were made with a weighted-interleave policy and ilx set
to NO_INTERLEAVE_INDEX, weighted_interleave_nodes() would operate on a VMA
policy - violating the description above.

An inspection of all callers of alloc_pages_mpol() shows that all external
callers set ilx to `0`, an index value, or will call get_vma_policy() to
acquire the ilx.

For example, mm/shmem.c may call into alloc_pages_mpol.  The call stacks
all set (pgoff_t ilx) or end up in `get_vma_policy()`.  This enforces the
`weighted_interleave_nodes()` and `weighted_interleave_nid()` policy
requirements (task/vma respectively).

Link: https://lkml.kernel.org/r/20240202170238.90004-4-gregory.price@memverge.com
Suggested-by: Hasan Al Maruf <Hasan.Maruf@amd.com>
Signed-off-by: Gregory Price <gregory.price@memverge.com>
Co-developed-by: Rakie Kim <rakie.kim@sk.com>
Signed-off-by: Rakie Kim <rakie.kim@sk.com>
Co-developed-by: Honggyu Kim <honggyu.kim@sk.com>
Signed-off-by: Honggyu Kim <honggyu.kim@sk.com>
Co-developed-by: Hyeongtak Ji <hyeongtak.ji@sk.com>
Signed-off-by: Hyeongtak Ji <hyeongtak.ji@sk.com>
Co-developed-by: Srinivasulu Thanneeru <sthanneeru.opensrc@micron.com>
Signed-off-by: Srinivasulu Thanneeru <sthanneeru.opensrc@micron.com>
Co-developed-by: Ravi Jonnalagadda <ravis.opensrc@micron.com>
Signed-off-by: Ravi Jonnalagadda <ravis.opensrc@micron.com>
Reviewed-by: "Huang, Ying" <ying.huang@intel.com>
Cc: Dan Williams <dan.j.williams@intel.com>
Cc: Johannes Weiner <hannes@cmpxchg.org>
Cc: Jonathan Corbet <corbet@lwn.net>
Cc: Michal Hocko <mhocko@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
2024-02-22 10:24:46 -08:00
..
android binder: use enum for binder ioctls 2023-12-15 17:06:45 +01:00
byteorder
caif
can can: uapi: move CAN_RAW_FILTER_MAX definition to raw.h 2023-06-22 09:44:28 +02:00
cifs
dvb media: dvb: bump DVB API version 2023-05-14 16:05:28 +01:00
genwqe
hdlc
hsi
iio iio: move LIGHT_UVA and LIGHT_UVB to the end of iio_modifier 2024-01-28 13:40:19 +00:00
isdn
misc
mmc
netfilter netfilter: nft_compat: reject unused compat flag 2024-02-07 22:02:51 +01:00
netfilter_arp
netfilter_bridge netfilter: ebtables: replace zero-length array members 2023-08-22 15:13:20 +02:00
netfilter_ipv4
netfilter_ipv6
nfsd NFSD: Handle new xprtsec= export option 2023-04-27 18:49:24 -04:00
raid md: Remove deprecated CONFIG_MD_FAULTY 2023-12-19 10:37:50 -08:00
sched sched/headers: Move 'struct sched_param' out of uapi, to work around glibc/musl breakage 2023-10-02 20:48:16 +02:00
spi spi: add SPI_MOSI_IDLE_LOW mode bit 2023-05-30 15:20:08 +01:00
sunrpc
surface_aggregator
tc_act net/sched: Retire ipt action 2024-01-02 12:41:16 +00:00
tc_ematch
usb usb: gadget: f_fs: fix fortify warning 2023-12-15 13:55:45 +01:00
a.out.h
acct.h
acrn.h
adb.h
adfs_fs.h
affs_hardblocks.h block: change all __u32 annotations to __be32 in affs_hardblocks.h 2023-06-20 14:28:17 -06:00
agpgart.h
aio_abi.h
am437x-vpfe.h
amt.h
apm_bios.h
arcfb.h
arm_sdei.h
aspeed-lpc-ctrl.h
aspeed-p2a-ctrl.h
aspeed-video.h
atalk.h
atm.h
atm_eni.h
atm_he.h
atm_idt77105.h
atm_nicstar.h
atm_tcp.h
atm_zatm.h
atmapi.h
atmarp.h
atmbr2684.h
atmclip.h
atmdev.h Move COMPAT_ATM_ADDPARTY to net/atm/svc.c 2023-03-10 21:05:16 +01:00
atmioc.h
atmlec.h
atmmpc.h
atmppp.h
atmsap.h
atmsvc.h
audit.h
auto_dev-ioctl.h autofs: use flexible array in ioctl structure 2023-05-30 16:42:00 -07:00
auto_fs.h
auto_fs4.h
auxvec.h
ax25.h
batadv_packet.h batman-adv: mcast: implement multicast packet reception and forwarding 2023-11-14 08:16:34 +01:00
batman_adv.h
baycom.h
bcm933xx_hcs.h
bfs_fs.h
binfmts.h
blkpg.h
blktrace_api.h
blkzoned.h block: Fix a source code comment in include/uapi/linux/blkzoned.h 2023-07-24 20:11:54 -06:00
bpf.h Revert BPF token-related functionality 2023-12-19 08:23:03 -08:00
bpf_common.h
bpf_perf_event.h
bpqether.h
bsg.h
bt-bmc.h
btf.h
btrfs.h btrfs: defrag: reject unknown flags of btrfs_ioctl_defrag_range_args 2024-01-12 02:04:19 +01:00
btrfs_tree.h btrfs: make OWNER_REF_KEY type value smallest among inline refs 2023-11-09 14:02:12 +01:00
cachefiles.h
can.h can: uapi: move CAN_RAW_FILTER_MAX definition to raw.h 2023-06-22 09:44:28 +02:00
capability.h capability: erase checker warnings about struct __user_cap_data_struct 2023-06-06 17:05:54 -04:00
capi.h
cciss_defs.h
cciss_ioctl.h
ccs.h
cdrom.h
cec-funcs.h
cec.h
cfm_bridge.h
cgroupstats.h cgroup: remove obsolete comment above struct cgroupstats 2023-07-14 08:43:49 -10:00
chio.h
close_range.h
cn_proc.h connector/cn_proc: Performance improvements 2023-07-23 11:34:22 +01:00
coda.h
coff.h
comedi.h
connector.h
const.h uapi/linux/const.h: prefer ISO-friendly __typeof__ 2023-04-18 16:39:34 -07:00
coresight-stm.h
counter.h counter: chrdev: remove a typo in header file comment 2023-10-16 11:38:56 -04:00
cramfs_fs.h
cryptouser.h
cuda.h
cxl_mem.h cxl: Add Support for Get Timestamp 2023-12-07 12:44:19 -08:00
cyclades.h
cycx_cfm.h
dcbnl.h
dccp.h
devlink.h devlink: add a command to set notification filter and use it for multicasts 2023-12-19 15:31:40 +01:00
dlm.h fs: dlm: remove deprecated code parts 2023-03-06 15:49:07 -06:00
dlm_device.h
dlm_plock.h fs: dlm: allow to F_SETLKW getting interrupted 2023-07-20 17:24:57 -05:00
dlmconstants.h fs: dlm: remove deprecated code parts 2023-03-06 15:49:07 -06:00
dm-ioctl.h dm: split discards further if target sets max_discard_granularity 2023-03-30 15:57:50 -04:00
dm-log-userspace.h
dma-buf.h
dma-heap.h
dns_resolver.h
dpll.h dpll: expose fractional frequency offset value to user 2024-01-05 07:58:19 -08:00
dqblk_xfs.h
dw100.h
edd.h
efs_fs_sb.h
elf-em.h
elf-fdpic.h binfmt_elf_fdpic: support 64-bit systems 2023-08-23 14:17:42 -07:00
elf.h elf, uapi: Remove struct tag 'dynamic' 2023-09-24 18:17:31 -07:00
errno.h
errqueue.h
erspan.h
ethtool.h Revert "Introduce PHY listing and link_topology tracking" 2024-01-04 16:05:47 -08:00
ethtool_netlink.h Revert "Introduce PHY listing and link_topology tracking" 2024-01-04 16:05:47 -08:00
eventfd.h eventfd: add a uapi header for eventfd userspace APIs 2023-06-15 14:55:15 +02:00
eventpoll.h Move ep_take_care_of_epollwakeup() to fs/eventpoll.c 2023-03-10 21:05:16 +01:00
ext4.h ext4: Add a uapi header for ext4 userspace APIs 2023-04-19 23:39:42 -04:00
f2fs.h
fadvise.h
falloc.h
fanotify.h fanotify: define struct members to hold response decision context 2023-02-07 12:53:53 +01:00
fb.h
fcntl.h fs: Pass AT_GETATTR_NOSEC flag to getattr interface function 2023-11-18 14:54:07 +01:00
fd.h
fdreg.h
fib_rules.h
fiemap.h
filter.h
firewire-cdev.h firewire: fix warnings to generate UAPI documentation 2023-06-06 07:54:00 +09:00
firewire-constants.h
fou.h ynl: broaden the license even more 2023-03-16 21:20:32 -07:00
fpga-dfl.h
fs.h fs/proc/task_mmu: report SOFT_DIRTY bits through the PAGEMAP_SCAN ioctl 2023-12-10 16:51:35 -08:00
fscrypt.h fscrypt: support crypto data unit size less than filesystem block size 2023-09-25 22:34:33 -07:00
fsi.h fsi: sbefifo: Add configurable in-command timeout 2023-08-09 15:43:27 +09:30
fsl_hypervisor.h
fsl_mc.h
fsmap.h
fsverity.h
fuse.h fuse: Rename DIRECT_IO_RELAX to DIRECT_IO_ALLOW_MMAP 2023-12-04 10:14:39 +01:00
futex.h futex: Extend the FUTEX2 flags 2023-09-21 19:22:05 +02:00
gameport.h
gen_stats.h
genetlink.h
gfs2_ondisk.h
gpio.h
gsmmux.h tty: n_gsm: add copyright Siemens Mobility GmbH 2023-10-27 09:21:13 +02:00
gtp.h gtp: uapi: fix GTPA_MAX 2023-10-24 12:02:02 +02:00
handshake.h net/handshake: Enable the SNI extension to work properly 2023-05-24 22:05:24 -07:00
hash_info.h crypto: FIPS 202 SHA-3 register in hash info for IMA 2023-10-27 18:04:30 +08:00
hdlc.h
hdlcdrv.h
hdreg.h
hid.h
hiddev.h
hidraw.h
hpet.h
hsr_netlink.h
hw_breakpoint.h Move bp_type_idx to include/linux/hw_breakpoint.h 2023-03-10 21:05:16 +01:00
hyperv.h
i2c-dev.h
i2c.h
i2o-dev.h
i8k.h
icmp.h
icmpv6.h
idxd.h dmaengine: idxd: add wq driver name support for accel-config user tool 2023-10-04 13:00:34 +05:30
if.h
if_addr.h
if_addrlabel.h
if_alg.h
if_arcnet.h
if_arp.h
if_bonding.h
if_bridge.h bridge: add MDB state mask uAPI attribute 2023-12-20 11:27:20 +00:00
if_cablemodem.h
if_eql.h
if_ether.h
if_fc.h
if_fddi.h
if_hippi.h
if_infiniband.h
if_link.h net: bridge: add document for IFLA_BRPORT enum 2023-12-05 10:48:00 +01:00
if_ltalk.h
if_macsec.h
if_packet.h af_packet: Fix fortified memcpy() without flex array. 2023-10-12 09:15:15 +02:00
if_phonet.h
if_plip.h
if_ppp.h
if_pppol2tp.h
if_pppox.h
if_slip.h
if_team.h
if_tun.h
if_tunnel.h
if_vlan.h
if_x25.h
if_xdp.h xsk: Add option to calculate TX checksum in SW 2023-11-29 14:59:40 -08:00
ife.h
igmp.h
ila.h
in.h ipv{4,6}/raw: fix output xfrm lookup wrt protocol 2023-05-23 15:38:59 +02:00
in6.h
in_route.h
inet_diag.h
inotify.h
input-event-codes.h
input.h
io_uring.h io_uring/kbuf: add method for returning provided buffer ring head 2023-12-21 09:47:06 -07:00
ioam6.h
ioam6_genl.h
ioam6_iptunnel.h
ioctl.h
iommu.h
iommufd.h iommufd: Add data structure for Intel VT-d stage-1 cache invalidation 2024-01-11 13:01:25 -04:00
ioprio.h block: uapi: Fix compilation errors using ioprio.h with C++ 2023-08-15 10:06:49 -06:00
ip.h uapi: add missing ip/ipv6 header dependencies for linux/stddef.h 2023-02-06 09:01:00 +00:00
ip6_tunnel.h
ip_vs.h
ipc.h
ipmi.h
ipmi_bmc.h
ipmi_msgdefs.h
ipmi_ssif_bmc.h
ipsec.h
ipv6.h net: change accept_ra_min_rtr_lft to affect all RA lifetimes 2023-07-28 13:30:51 -07:00
ipv6_route.h
irqnr.h
iso_fs.h
isst_if.h platform/x86: ISST: Add SST-TF support via TPMI 2023-03-16 15:18:02 +01:00
ivtv.h
ivtvfb.h
jffs2.h
joystick.h
kcm.h
kcmp.h
kcov.h
kd.h
kdev_t.h
kernel-page-flags.h
kernel.h
kernelcapi.h
kexec.h kexec_file: add kexec_file flag to control debug printing 2023-12-20 15:02:57 -08:00
keyboard.h
keyctl.h
kfd_ioctl.h drm/amdgpu: Add EXT_COHERENT memory allocation flags 2023-09-20 16:24:06 -04:00
kfd_sysfs.h drm/amdkfd: display debug capabilities 2023-06-09 12:34:45 -04:00
kvm.h KVM Xen change for 6.8: 2024-01-08 08:10:20 -05:00
kvm_para.h
l2tp.h
landlock.h landlock: Support network rules with TCP bind and connect 2023-10-26 21:07:15 +02:00
libc-compat.h
limits.h
lirc.h
llc.h
loadpin.h
loop.h
lp.h
lsm.h lsm: Add a __counted_by() annotation to lsm_ctx.ctx 2023-12-22 18:00:37 -05:00
lwtunnel.h
magic.h
major.h
map_to_7segment.h
map_to_14segment.h
matroxfb.h
max2175.h
mctp.h
mdio.h net: phy: add registers to support 1000BASE-T1 2023-07-20 12:24:06 +02:00
media-bus-format.h media: uapi: Add MEDIA_BUS_FMT_RGB666_2X9_BE format 2023-10-16 11:47:43 +02:00
media.h media: uapi: Use unsigned int values for assigning bits in u32 fields 2023-05-25 16:21:22 +02:00
mei.h mei: fix spellos in mei.h 2023-12-15 17:01:30 +01:00
mei_uuid.h mei: Move uuid.h to the MEI namespace 2023-03-23 17:25:46 +01:00
membarrier.h
memfd.h
mempolicy.h mm/mempolicy: introduce MPOL_WEIGHTED_INTERLEAVE for weighted interleaving 2024-02-22 10:24:46 -08:00
mii.h
minix_fs.h
mman.h cachestat: implement cachestat syscall 2023-06-09 16:25:16 -07:00
mmtimer.h
module.h
mount.h fs: keep struct mnt_id_req extensible 2023-12-14 11:49:17 +01:00
mpls.h
mpls_iptunnel.h
mptcp.h mptcp: add mptcpi_subflows_total counter 2023-11-29 20:06:17 -08:00
mptcp_pm.h netlink: specs: mptcp: rename the MPTCP path management spec 2023-12-15 12:17:16 +00:00
mqueue.h
mroute.h
mroute6.h
mrp_bridge.h
msdos_fs.h
msg.h
mtio.h
nbd-netlink.h
nbd.h uapi nbd: add cookie alias to handle 2023-04-27 19:15:11 -06:00
ncsi.h
ndctl.h
neighbour.h
net.h
net_dropmon.h
net_namespace.h
net_tstamp.h net: partial revert of the "Make timestamping selectable: series 2023-11-18 18:42:37 -08:00
netconf.h
netdev.h netdev 2023-12-18 16:46:08 -08:00
netdevice.h
netfilter.h
netfilter_arp.h
netfilter_bridge.h
netfilter_ipv4.h
netfilter_ipv6.h
netlink.h netlink: add variable-length / auto integers 2023-10-20 11:43:35 +01:00
netlink_diag.h
netrom.h
nexthop.h
nfc.h
nfs.h
nfs2.h
nfs3.h
nfs4.h
nfs4_mount.h
nfs_fs.h
nfs_idmap.h
nfs_mount.h
nfsacl.h
nfsd_netlink.h nfsd: regenerate user space parsers after ynl-gen changes 2023-11-06 09:03:46 +00:00
nilfs2_api.h
nilfs2_ondisk.h
nitro_enclaves.h
nl80211-vnd-intel.h
nl80211.h wifi: cfg80211: handle UHB AP and STA power type 2023-12-21 20:35:14 +01:00
npcm-video.h media: uapi: Add controls for NPCM video driver 2023-09-27 09:40:02 +02:00
nsfs.h
nsm.h misc: Add Nitro Secure Module driver 2023-11-28 19:05:16 +00:00
nubus.h
nvme_ioctl.h
nvram.h
omap3isp.h
omapfb.h
oom.h
openat2.h
openvswitch.h net: openvswitch: add explicit drop action 2023-08-14 08:01:06 +01:00
packet_diag.h
param.h
parport.h ata: parport_pc: add 16-bit and 8-bit fast EPP transfer flags 2023-03-23 12:22:19 +09:00
patchkey.h
pci.h
pci_regs.h Merge branch 'pci/field-get' 2023-10-28 13:31:05 -05:00
pcitest.h misc: pci_endpoint_test: Use INTX instead of LEGACY 2023-12-18 11:55:56 +01:00
perf_event.h perf/x86/intel: Support branch counters logging 2023-10-27 15:05:11 +02:00
personality.h
pfkeyv2.h
pfrut.h
pg.h
phantom.h
phonet.h
pidfd.h
pkt_cls.h net/sched: Remove uapi support for tcindex classifier 2024-01-02 14:25:51 +00:00
pkt_sched.h net/sched: Remove uapi support for CBQ qdisc 2024-01-02 14:25:51 +00:00
pktcdvd.h pktcdvd: Get rid of custom printing macros 2023-06-07 14:26:09 -06:00
pmu.h
poll.h
posix_acl.h
posix_acl_xattr.h
posix_types.h
ppdev.h
ppp-comp.h
ppp-ioctl.h
ppp_defs.h
pps.h
pr.h
prctl.h mm: add a NO_INHERIT flag to the PR_SET_MDWE prctl 2023-10-06 14:44:11 -07:00
psample.h
psci.h
psp-dbc.h crypto: ccp - Add support for getting and setting DBC parameters 2023-07-20 22:14:21 +12:00
psp-sev.h virt: sevguest: Add TSM_REPORTS support for SNP_GET_EXT_REPORT 2023-10-19 18:11:49 -07:00
ptp_clock.h ptp: support event queue reader channel masks 2023-10-15 20:07:52 +01:00
ptrace.h ptrace: Provide set/get interface for syscall user dispatch 2023-04-16 14:23:07 +02:00
qemu_fw_cfg.h
qnx4_fs.h
qnxtypes.h
qrtr.h
quota.h shmem: prepare shmem quota infrastructure 2023-08-09 09:15:39 +02:00
radeonfb.h
random.h
rds.h
reboot.h
reiserfs_fs.h
reiserfs_xattr.h
remoteproc_cdev.h
resource.h uapi/linux/resource.h: fix include 2023-12-20 19:26:31 -05:00
rfkill.h
rio_cm_cdev.h
rio_mport_cdev.h
rkisp1-config.h
romfs_fs.h
rose.h
route.h
rpl.h
rpl_iptunnel.h
rpmsg.h rpmsg: char: Add RPMSG GET/SET FLOWCONTROL IOCTL support 2023-07-15 11:35:02 -07:00
rpmsg_types.h
rseq.h
rtc.h
rtnetlink.h ipv6: drop feature RTAX_FEATURE_ALLFRAG 2023-10-25 18:04:29 -07:00
rxrpc.h
scc.h
sched.h
scif_ioctl.h
screen_info.h
sctp.h sctp: add weighted fair queueing stream scheduler 2023-03-09 11:31:44 +01:00
seccomp.h seccomp: add the synchronous mode for seccomp_unotify 2023-07-17 16:08:08 -07:00
securebits.h
sed-opal.h block: sed-opal: keyring support for SED keys 2023-08-22 11:10:26 -06:00
seg6.h
seg6_genl.h
seg6_hmac.h
seg6_iptunnel.h
seg6_local.h
selinux_netlink.h
sem.h
serial.h tty: serial: Fix bit order in RS485 flag definitions 2024-01-27 18:15:24 -08:00
serial_core.h serial: add PORT_GENERIC definition 2023-10-10 08:51:10 +02:00
serial_reg.h serial: 8250_port: Introduce UART_IIR_FIFO_ENABLED_16750 2023-09-18 11:14:42 +02:00
serio.h
sev-guest.h virt: sevguest: Add TSM_REPORTS support for SNP_GET_EXT_REPORT 2023-10-19 18:11:49 -07:00
shm.h
signal.h
signalfd.h
smc.h net/smc: support extended GID in SMC-D lgr netlink attribute 2023-12-26 20:24:33 +00:00
smc_diag.h net/smc: support extended GID in SMC-D lgr netlink attribute 2023-12-26 20:24:33 +00:00
smiapp.h
snmp.h net/tcp: Ignore specific ICMPs for TCP-AO connections 2023-10-27 10:35:45 +01:00
sock_diag.h
socket.h
sockios.h
sonet.h
sonypi.h
sound.h
soundcard.h
stat.h add unique mount ID 2023-11-18 14:56:16 +01:00
stddef.h uapi: propagate __struct_group() attributes to the container union 2023-11-27 16:24:56 -08:00
stm.h
string.h
suspend_ioctls.h
swab.h
switchtec_ioctl.h
sync_file.h dma-buf/sync_file: Add SET_DEADLINE ioctl 2023-12-02 01:17:48 +02:00
synclink.h
sysctl.h
sysinfo.h
target_core_user.h scsi: target: uapi: Replace fake flex-array with flexible-array member 2023-03-24 16:59:09 -04:00
taskstats.h delayacct: track delays from IRQ/SOFTIRQ 2023-04-18 16:39:34 -07:00
tcp.h net/tcp: Add TCP_AO_REPAIR 2023-10-27 10:35:46 +01:00
tcp_metrics.h
tdx-guest.h
tee.h
termios.h
thermal.h
thp7312.h media: uapi: Add controls for the THP7312 ISP 2023-12-04 10:37:46 +01:00
time.h
time_types.h
timerfd.h
times.h
timex.h
tiocl.h
tipc.h
tipc_config.h
tipc_netlink.h
tipc_sockets_diag.h
tls.h
toshiba.h
tps6594_pfsm.h misc: tps6594-pfsm: Add driver for TI TPS6594 PFSM 2023-06-15 13:41:53 +02:00
tty.h
tty_flags.h
types.h types: Introduce [us]128 2023-06-05 09:36:35 +02:00
ublk_cmd.h ublk: zoned: support REQ_OP_ZONE_RESET_ALL 2023-08-20 20:24:34 -06:00
udf_fs_i.h
udmabuf.h
udp.h
uhid.h
uinput.h
uio.h
uleds.h
ultrasound.h
um_timetravel.h
un.h
unistd.h
unix_diag.h
usbdevice_fs.h
usbip.h
user_events.h tracing/user_events: Allow events to persist for perfmon_capable users 2023-10-03 22:29:43 -04:00
userfaultfd.h userfaultfd: UFFDIO_MOVE uABI 2023-12-29 11:58:24 -08:00
userio.h
utime.h
utsname.h
uuid.h mei: Move uuid.h to the MEI namespace 2023-03-23 17:25:46 +01:00
uvcvideo.h
v4l2-common.h
v4l2-controls.h media: uapi: Add controls for the THP7312 ISP 2023-12-04 10:37:46 +01:00
v4l2-dv-timings.h
v4l2-mediabus.h
v4l2-subdev.h media: v4l2-subdev: Add which field to struct v4l2_subdev_frame_interval 2023-12-13 16:52:35 +01:00
vbox_err.h
vbox_vmmdev_types.h
vboxguest.h
vdpa.h
vduse.h
veth.h
vfio.h vfio/migration: Add debugfs to live migration driver 2023-12-04 14:29:08 -07:00
vfio_ccw.h
vfio_zdev.h
vhost.h vhost-vdpa: uAPI to get dedicated descriptor group id 2023-11-01 09:19:55 -04:00
vhost_types.h vhost-vdpa: introduce IOTLB_PERSIST backend feature bit 2023-11-01 09:20:00 -04:00
videodev2.h media: videodev.h: add missing p_hdr10_* pointers 2023-11-23 13:04:36 +01:00
virtio_9p.h
virtio_balloon.h
virtio_blk.h virtio-blk: fix to match virtio spec 2023-04-04 11:01:57 -04:00
virtio_bt.h
virtio_config.h virtio: Define feature bit for administration virtqueue 2023-12-19 11:51:31 -07:00
virtio_console.h
virtio_crypto.h
virtio_fs.h
virtio_gpio.h
virtio_gpu.h
virtio_i2c.h
virtio_ids.h
virtio_input.h
virtio_iommu.h
virtio_mem.h
virtio_mmio.h
virtio_net.h virtio_net: support per queue interrupt coalesce command 2023-08-01 21:02:00 -07:00
virtio_pci.h virtio-pci: Introduce admin commands 2023-12-19 11:51:32 -07:00
virtio_pcidev.h
virtio_pmem.h virtio_pmem: support feature SHMEM_REGION 2024-01-10 13:01:37 -05:00
virtio_ring.h
virtio_rng.h
virtio_scmi.h
virtio_scsi.h
virtio_snd.h
virtio_types.h
virtio_vsock.h
vm_sockets.h vsock: read from socket's error queue 2023-10-15 13:19:42 +01:00
vm_sockets_diag.h
vmcore.h
vsockmon.h
vt.h
vtpm_proxy.h
wait.h
watch_queue.h
watchdog.h
wireguard.h
wireless.h uapi: wireless: Replace zero-length array with flexible-array member 2023-05-28 19:07:48 -06:00
wmi.h
wwan.h
x25.h
xattr.h
xdp_diag.h
xfrm.h xfrm: Annotate struct xfrm_sec_ctx with __counted_by 2023-10-05 08:18:19 +02:00
xilinx-v4l2-controls.h
zorro.h
zorro_ids.h