linux-kernelorg-stable/include/linux
Christian Brauner 011703a9ac
file: add FD_{ADD,PREPARE}()
I've been playing with this to allow for moderately flexible usage of
the get_unused_fd_flags() + create file + fd_install() pattern that's
used quite extensively.

How callers allocate files is really heterogenous so it's not really
convenient to fold them into a single class. It's possibe to split them
into subclasses like for anon inodes. I think that's not necessarily
nice as well.

My take is to add two primites:
(1) FD_ADD() the simple cases a file is installed:

    fd = FD_ADD(O_CLOEXEC, open_file(some, args)));
    if (fd >= 0)
            kvm_get_kvm(vcpu->kvm);
    return fd;

(2) FD_PREPARE() that captures all the cases where access to fd or file
    or additional work before publishing the fd is needed:

    FD_PREPARE(fdf, open_flag, file_open_handle(&path, open_flag));
    if (fdf.err)
            return fdf.err;

    if (copy_to_user(/* something something */))
            return -EFAULT;

    return fd_publish(fdf);

I've converted all of the easy cases over to it and it gets rid of an
aweful lot of convoluted cleanup logic.

It's centered around struct fd_prepare. FD_PREPARE() encapsulates all of
allocation and cleanup logic and must be followed by a call to
fd_publish() which associates the fd with the file and installs it into
the callers fdtable. If fd_publish() isn't called both are deallocated.

It mandates a specific order namely that first we allocate the fd and
then instantiate the file. But that shouldn't be a problem nearly
everyone I've converted uses this exact pattern anyway.

There's a bunch of additional cases where it would be easy to convert
them to this pattern. For example, the whole sync file stuff in dma
currently retains the containing structure of the file instead of the
file itself even though it's only used to allocate files. Changing that
would make it fall into the FD_PREPARE() pattern easily. I've not done
that work yet.

There's room for extending this in a way that wed'd have subclasses for
some particularly often use patterns but as I said I'm not even sure
that's worth it.

Link: https://patch.msgid.link/20251123-work-fd-prepare-v4-1-b6efa1706cfd@kernel.org
Signed-off-by: Christian Brauner <brauner@kernel.org>
2025-11-28 12:42:23 +01:00
..
amba
atomic
avf
bcma
bnxt
bus
byteorder byteorder: Add memcpy_to_le32() and memcpy_from_le32() 2025-09-24 19:32:00 -06:00
can can: dev: add can_get_ctrlmode_str() 2025-09-24 17:09:47 +02:00
cdx
ceph libceph: pass the message pointer instead of loading con->out_msg 2025-10-08 23:30:46 +02:00
clk Merge branch 'clk-determine-rate' into clk-next 2025-10-06 13:02:50 -05:00
comedi
crush
decompress
device
dma
dsa
extcon
firmware soc: driver updates for 6.18 2025-10-01 17:32:51 -07:00
fpga
framer
fsl
gpio gpio: generic: move GPIO_GENERIC_ flags to the correct header 2025-09-24 13:52:35 +02:00
greybus
habanalabs accel/habanalabs: add HL_GET_P_STATE passthrough type 2025-09-25 09:09:31 +03:00
hsi
i3c
iio
input
io_uring
irqchip
isdn
lockd
lsm
mailbox irqchip: Add driver for the RPMI system MSI service group 2025-09-25 14:31:56 -06:00
mdio
memory
mfd Char/Misc/IIO/Binder changes for 6.18-rc1 2025-10-04 16:26:32 -07:00
misc
mlx4
mlx5 Merge tag 'mlx5-next-lag' of git://git.kernel.org/pub/scm/linux/kernel/git/mellanox/linux 2025-09-29 18:49:59 -07:00
mmc Networking changes for 6.18. 2025-10-02 15:17:01 -07:00
mtd * Raw NAND: 2025-10-03 17:23:18 +02:00
mux
net/intel
netfilter
netfilter_arp
netfilter_bridge
netfilter_ipv4
netfilter_ipv6
pcs
pds
perf
phy
pinctrl pci-v6.18-changes 2025-10-06 10:41:03 -07:00
platform_data Input updates for v6.18-rc0 2025-10-08 09:44:38 -07:00
power
pse-pd
pwrseq
qat
qed
raid
regulator
remoteproc
reset
rpmsg
rtc
sched Patch series in this pull request: 2025-10-02 18:44:54 -07:00
soc Networking changes for 6.18. 2025-10-02 15:17:01 -07:00
soundwire
spi
ssb
sunrpc NFSD 6.18 Release Notes 2025-10-06 13:22:21 -07:00
surface_aggregator
ulpi
unaligned
usb USB/Thunderbolt changes for 6.18-rc1 2025-10-04 16:07:08 -07:00
8250_pci.h
acct.h
acpi.h
acpi_amd_wbrf.h
acpi_dma.h
acpi_iort.h
acpi_mdio.h
acpi_pmtmr.h
acpi_rimt.h
acpi_viot.h
adb.h
adfs_fs.h
adi-axi-common.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
alloc_tag.h
altera_jtaguart.h
altera_uart.h
amd-iommu.h
amd-pmf-io.h
anon_inodes.h
aperture.h
apm-emulation.h
apm_bios.h
apple-gmux.h
arch_topology.h
args.h
arm-cci.h
arm-smccc.h
arm_ffa.h
arm_sdei.h
armada-37xx-rwtm-mailbox.h
array_size.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
atm.h
atm_tcp.h
atmdev.h
atmel-isc-media.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
backing-file.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-integrity.h
bio.h block: rename bio_iov_iter_get_pages_aligned to bio_iov_iter_get_pages 2025-10-07 08:05:44 -06:00
bit_spinlock.h
bitfield.h
bitmap-str.h
bitmap.h
bitops.h
bitrev.h
bits.h
blk-cgroup.h
blk-crypto-profile.h
blk-crypto.h
blk-integrity.h
blk-mq-dma.h
blk-mq.h
blk-pm.h
blk_types.h
blkdev.h block-6.18-20251009 2025-10-10 10:37:13 -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: Enforce expected_attach_type for tailcall compatibility 2025-09-27 06:24:27 -07:00
bpf_crypto.h
bpf_lirc.h
bpf_local_storage.h
bpf_lsm.h
bpf_mem_alloc.h
bpf_mprog.h
bpf_trace.h
bpf_types.h
bpf_verifier.h
bpfptr.h
brcmphy.h
bsearch.h
bsg-lib.h
bsg.h
btf.h bpf: Mark kfuncs as __noclone 2025-09-24 02:48:05 -07:00
btf_ids.h
btree-128.h
btree-type.h
btree.h
btrfs.h
buffer_head.h
bug.h
build-salt.h
build_bug.h
buildid.h
bvec.h
c2port.h
cache.h
cacheflush.h
cacheinfo.h
call_once.h
capability.h
cb710.h
cc_platform.h
cciss_ioctl.h
ccp.h
cdev.h
cdrom.h
cfag12864b.h
cfi.h kcfi: Rename CONFIG_CFI_CLANG to CONFIG_CFI 2025-09-24 14:29:14 -07:00
cfi_types.h kcfi: Rename CONFIG_CFI_CLANG to CONFIG_CFI 2025-09-24 14:29:14 -07:00
cgroup-defs.h
cgroup.h bpf-next-6.18 2025-09-30 17:58:11 -07:00
cgroup_api.h
cgroup_dmem.h
cgroup_namespace.h namespace-6.18-rc1 2025-09-29 11:20:29 -07:00
cgroup_rdma.h
cgroup_refcnt.h
cgroup_subsys.h
circ_buf.h
cleanup.h file: add FD_{ADD,PREPARE}() 2025-11-28 12:42:23 +01:00
clk-provider.h
clk.h
clkdev.h
clockchips.h
clocksource.h
clocksource_ids.h
closure.h
cma.h
cmpxchg-emu.h
cn_proc.h
cnt32_to_63.h
coda.h
codetag.h
compaction.h
compat.h
compiler-clang.h - Remove a bunch of asm implementing condition flags testing in KVM's 2025-10-11 11:19:16 -07:00
compiler-gcc.h
compiler-version.h
compiler.h hardening updates for v6.18-rc1 2025-09-29 17:48:27 -07:00
compiler_attributes.h
compiler_types.h - Remove a bunch of asm implementing condition flags testing in KVM's 2025-10-11 11:19:16 -07:00
completion.h
component.h
configfs.h
connector.h
console.h
console_struct.h
consolemap.h
const.h
container.h
container_of.h
context_tracking.h
context_tracking_irq.h
context_tracking_state.h
cookie.h
cordic.h
coredump.h
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
cpu_smt.h
cpufeature.h
cpufreq.h cpufreq: Drop unused symbol CPUFREQ_ETERNAL 2025-10-01 13:57:22 +02:00
cpuhotplug.h
cpuhplock.h
cpuidle.h
cpuidle_haltpoll.h
cpumask.h
cpumask_api.h
cpumask_types.h
cpuset.h
crash_core.h
crash_dump.h
crash_reserve.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
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
delayed_call.h
dev_printk.h
devcoredump.h
devfreq-event.h
devfreq.h
devfreq_cooling.h
device-mapper.h
device.h
device_cgroup.h
devm-helpers.h
devpts_fs.h
dfl.h
dibs.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
dpll.h dpll: add phase_offset_avg_factor_get/set callback ops 2025-09-29 18:57:41 -07:00
dqblk_qtree.h
dqblk_v1.h
dqblk_v2.h
drbd.h
drbd_config.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
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
elfnote-lto.h
elfnote.h
enclosure.h
energy_model.h
entry-common.h
entry-virt.h entry: Rename "kvm" entry code assets to "virt" to genericize APIs 2025-09-30 22:50:18 +00:00
err.h
errname.h
errno.h
error-injection.h
errqueue.h
errseq.h
etherdevice.h
ethtool.h Revert "Documentation: net: add flow control guide and document ethtool API" 2025-10-01 09:48:21 +02:00
ethtool_netlink.h
eventfd.h
eventpoll.h
evm.h
execmem.h
export-internal.h
export.h
exportfs.h file->f_path constification 2025-10-03 16:32:36 -07:00
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 file: add FD_{ADD,PREPARE}() 2025-11-28 12:42:23 +01:00
file_ref.h
fileattr.h
filelock.h
filter.h bpf, x86: Add support for signed arena loads 2025-09-23 12:00:22 -07:00
find.h
fips.h
firewire.h
firmware-map.h
firmware.h
fixp-arith.h
flat.h
flex_proportions.h
folio_queue.h
font.h
fortify-string.h
fprobe.h
fpu.h
freezer.h
fs.h NFSD 6.18 Release Notes 2025-10-06 13:22:21 -07:00
fs_api.h
fs_context.h vfs_parse_fs_string() stuff 2025-10-03 10:51:44 -07:00
fs_parser.h
fs_pin.h
fs_stack.h
fs_struct.h
fs_types.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
ftrace_regs.h
futex.h
fw_table.h
fwctl.h
fwnode.h
fwnode_mdio.h
gameport.h
gcd.h
genalloc.h
generic-radix-tree.h
genl_magic_func.h
genl_magic_struct.h
getcpu.h
gfp.h mm: Allow GFP_ACCOUNT to be used in alloc_pages_nolock(). 2025-09-29 09:42:35 +02:00
gfp_api.h
gfp_types.h
glob.h
gnss.h
goldfish.h
gpio-pxa.h
gpio.h
gpio_keys.h
greybus.h
group_cpus.h
hardirq.h
hash.h
hashtable.h
hashtable_api.h
hdlc.h
hdlcdrv.h
hdmi.h
hex.h
hfs_common.h hfs/hfsplus: rework debug output subsystem 2025-09-24 16:30:34 -07:00
hid-debug.h
hid-over-i2c.h
hid-over-spi.h
hid-roccat.h
hid-sensor-hub.h
hid-sensor-ids.h
hid.h hid-for-linus-2025093001 2025-10-04 15:38:04 -07:00
hid_bpf.h
hidden.h
hiddev.h
hidraw.h
highmem-internal.h
highmem.h
highuid.h
hil.h
hil_mlc.h
hippidevice.h
hisi_acc_qm.h
hmm-dma.h
hmm.h
host1x.h
host1x_context_bus.h
hp_sdc.h
hpet.h
hrtimer.h
hrtimer_api.h
hrtimer_defs.h
hrtimer_types.h
hte.h
huge_mm.h
hugetlb.h
hugetlb_cgroup.h
hugetlb_inline.h
hung_task.h
hw_bitfield.h
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: rename wait_for_completion callback to wait_for_completion_cb 2025-10-04 18:52:58 +02:00
i2c-algo-pcf.h
i2c-atr.h
i2c-dev.h
i2c-mux.h
i2c-of-prober.h
i2c-smbus.h
i2c.h Revert "i2c: boardinfo: Annotate code used in init phase only" 2025-10-11 23:57:33 +02:00
i8042.h
i8253.h
i8254.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_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
init_ohci1394_dma.h
init_syscalls.h
init_task.h
initrd.h
inotify.h
input.h
instruction_pointer.h
instrumentation.h
instrumented.h
int_log.h
integrity.h
intel-ish-client-if.h
intel_dg_nvm_aux.h
intel_pmt_features.h
intel_rapl.h
intel_tcc.h
intel_th.h
intel_tpmi.h
intel_vsec.h
interconnect-clk.h
interconnect-provider.h
interconnect.h
interrupt.h
interval_tree.h
interval_tree_generic.h
io-64-nonatomic-hi-lo.h
io-64-nonatomic-lo-hi.h
io-mapping.h
io-pgtable.h
io.h
io_uring.h
io_uring_types.h for-6.18/io_uring-20250929 2025-10-02 09:56:23 -07:00
ioam6.h
ioam6_genl.h
ioam6_iptunnel.h
iocontext.h
iomap.h
iommu-dma.h
iommu-helper.h
iommu.h
iommufd.h
iopoll.h
ioport.h
ioprio.h
ioremap.h
iosys-map.h
iov_iter.h
iova.h
iova_bitmap.h
ip.h
ipack.h
ipc.h
ipc_namespace.h namespace-6.18-rc1 2025-09-29 11:20:29 -07:00
ipmi.h
ipmi_smi.h
ipv6.h
ipv6_route.h
irq-entry-common.h
irq.h
irq_poll.h
irq_sim.h
irq_work.h
irqbypass.h
irqchip.h
irqdesc.h
irqdomain.h
irqdomain_defs.h
irqflags.h
irqflags_types.h
irqhandler.h
irqnr.h
irqreturn.h
isa-dma.h
isa.h
isapnp.h
iscsi_boot_sysfs.h
iscsi_ibft.h
ism.h
iversion.h
jbd2.h
jhash.h
jiffies.h
journal-head.h
joystick.h
jump_label.h
jump_label_ratelimit.h
jz4740-adc.h
jz4780-nemc.h
kallsyms.h
kasan-checks.h
kasan-enabled.h
kasan-tags.h
kasan.h Summary of significant series in this pull request: 2025-10-02 18:18:33 -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-page-flags.h
kernel.h
kernel_read_file.h
kernel_stat.h
kernelcapi.h
kernfs.h
kexec.h
kexec_handover.h kho: add support for preserving vmalloc allocations 2025-10-07 13:48:55 -07:00
key-type.h
key.h
keyboard.h
keyctl.h
kfence.h
kfifo.h
kgdb.h
khugepaged.h
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 mm/ksm: fix incorrect KSM counter handling in mm_struct during fork 2025-09-28 11:51:32 -07:00
kstack_erase.h
kstrtox.h
kthread.h
ktime.h
ktime_api.h
kvm_dirty_ring.h
kvm_host.h hyperv-next for v6.18 2025-10-07 08:40:15 -07:00
kvm_irqfd.h
kvm_para.h
kvm_types.h KVM: Export KVM-internal symbols for sub-modules only 2025-09-30 13:40:02 -04: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-expresswire.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
libps2.h
license.h
limits.h
linear_range.h
linkage.h
linkmode.h
linux_logo.h
lis3lv02d.h
list.h RCU pull request for v6.18 2025-10-04 11:28:45 -07:00
list_bl.h
list_lru.h
list_nulls.h
list_sort.h
litex.h
livepatch.h
livepatch_sched.h
llc.h
llist.h
llist_api.h
local_lock.h locking/local_lock: Introduce local_lock_is_locked(). 2025-09-29 09:42:35 +02:00
local_lock_internal.h locking/local_lock: Introduce local_lock_is_locked(). 2025-09-29 09:42:35 +02:00
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_count.h
lsm_hook_defs.h Simplifying ->d_name audits, easy part. 2025-10-03 11:14:02 -07:00
lsm_hooks.h
lwq.h
lz4.h
lzo.h
mISDNdsp.h
mISDNhw.h
mISDNif.h
mailbox_client.h
mailbox_controller.h mailbox: Allow controller specific mapping using fwnode 2025-09-24 19:32:00 -06:00
map_benchmark.h
maple.h
maple_tree.h Summary of significant series in this pull request: 2025-10-02 18:18:33 -07:00
marvell_phy.h
math.h
math64.h
mbcache.h
mbus.h
mc33xs2410.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 memcg: skip cgroup_file_notify if spinning is not allowed 2025-10-07 14:01:11 -07:00
memfd.h
memory-tiers.h
memory.h Only two patch series in this pull request: 2025-10-05 12:11:07 -07:00
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 7 hotfixes. All 7 are cc:stable and all 7 are for MM. 2025-10-11 10:14:55 -07:00
mm_api.h
mm_inline.h mm: introduce num_pages_contiguous() 2025-10-06 11:21:26 -06:00
mm_types.h Summary of significant series in this pull request: 2025-10-02 18:18:33 -07:00
mm_types_task.h
mman.h
mmap_lock.h
mmdebug.h
mmiotrace.h
mmu_context.h
mmu_notifier.h
mmzone.h
mnt_idmapping.h
mnt_namespace.h namespace-6.18-rc1 2025-09-29 11:20:29 -07:00
mod_devicetable.h
module.h modpost: Create modalias for builtin modules 2025-09-24 09:10:45 -07:00
module_signature.h
module_symbol.h
moduleloader.h
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 Updates for interrupt chip drivers: 2025-09-30 16:00:29 -07:00
msi_api.h
mtio.h
mutex.h
mutex_api.h
mutex_types.h
mv643xx_eth.h
mv643xx_i2c.h
mvebu-pmsu.h
mxm-wmi.h
namei.h file->f_path constification 2025-10-03 16:32:36 -07:00
nd.h
ndctl.h
net.h
net_tstamp.h
netdev_features.h
netdevice.h net: add NUMA awareness to skb_attempt_defer_free() 2025-09-30 15:45:53 +02:00
netdevice_xmit.h
netfilter.h
netfilter_bridge.h
netfilter_defs.h
netfilter_ipv4.h
netfilter_ipv6.h
netfilter_netdev.h
netfs.h
netlink.h
netpoll.h
nfs.h
nfs3.h
nfs4.h
nfs_common.h
nfs_fs.h
nfs_fs_i.h
nfs_fs_sb.h
nfs_iostat.h
nfs_page.h nfs: remove NFS_WBACK_BUSY() 2025-09-23 13:28:20 -04:00
nfs_ssc.h
nfs_xdr.h NFS: Update listxattr to use xdr_set_scratch_folio() 2025-09-23 13:29:50 -04:00
nfsacl.h
nfslocalio.h NFSD 6.18 Release Notes 2025-10-06 13:22:21 -07:00
nitro_enclaves.h
nl802154.h
nls.h
nmi.h
node.h
nodemask.h
nodemask_types.h
nospec.h
notifier.h
ns_common.h ns: move ns type into struct ns_common 2025-09-25 09:23:54 +02:00
nsc_gpio.h
nsfs.h
nsproxy.h namespace-6.18-rc1 2025-09-29 11:20:29 -07:00
nstree.h nstree: make struct ns_tree private 2025-09-25 09:23:47 +02:00
ntb.h
ntb_transport.h
nubus.h
numa.h
numa_memblks.h
nvme-auth.h
nvme-fc-driver.h
nvme-fc.h
nvme-keyring.h
nvme-rdma.h
nvme-tcp.h
nvme.h
nvmem-consumer.h
nvmem-provider.h
nvram.h
oa_tc6.h
objagg.h
objpool.h
objtool.h
objtool_types.h
of.h of: doc: Fix typo in doc comments. 2025-10-01 07:55:42 -05:00
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: fix race by moving DO_ONCE to separate section 2025-09-25 08:01:16 +02:00
once_lite.h
oom.h
openvswitch.h
osq_lock.h
overflow.h
packing.h
padata.h
page-flags-layout.h
page-flags.h dma-mapping updates for Linux 6.18: 2025-10-03 17:41:12 -07:00
page-isolation.h
page_counter.h
page_ext.h
page_frag_cache.h
page_idle.h
page_owner.h
page_ref.h
page_reporting.h
page_table_check.h
pageblock-flags.h
pagemap.h NFS Client Updates for Linux 6.18 2025-10-03 14:20:40 -07:00
pagevec.h
pagewalk.h
panic.h
panic_notifier.h
papr_scm.h
parman.h
parport.h
parport_pc.h
parser.h
part_stat.h block: Update a comment of disk statistics 2025-10-02 15:28:42 -06:00
pata_arasan_cf_data.h
patchkey.h
path.h
pch_dma.h
pci-acpi.h
pci-ats.h
pci-bwctrl.h
pci-doe.h
pci-ecam.h
pci-ep-cfs.h
pci-ep-msi.h
pci-epc.h
pci-epf.h
pci-p2pdma.h
pci-pwrctrl.h
pci-tph.h
pci.h Merge branch 'pci/resource' 2025-10-03 12:13:12 -05:00
pci_hotplug.h
pci_ids.h
pcie-dwc.h
pcs-lynx.h
pcs-rzn1-miic.h
pe.h
peci-cpu.h
peci.h
percpu-defs.h
percpu-refcount.h
percpu-rwsem.h
percpu.h
percpu_counter.h
perf_event.h
perf_event_api.h
perf_regs.h
personality.h
pfn.h
pgalloc.h
pgalloc_tag.h
pgtable.h include/linux/pgtable.h: convert arch_enter_lazy_mmu_mode() and friends to static inlines 2025-09-25 16:10:35 -07:00
pgtable_api.h
phonet.h
phy.h net: doc: Fix typos in docs 2025-10-03 10:24:14 -07:00
phy_fixed.h
phy_led_triggers.h
phy_link_topology.h
phylib_stubs.h
phylink.h
pid.h
pid_namespace.h namespace-6.18-rc1 2025-09-29 11:20:29 -07:00
pid_types.h
pidfs.h
pim.h
pipe_fs_i.h
pkeys.h
pl320-ipc.h
platform_device.h
platform_profile.h
pldmfw.h
plist.h
plist_types.h
pm-trace.h
pm.h
pm_clock.h
pm_domain.h
pm_opp.h
pm_qos.h
pm_runtime.h PM: runtime: Introduce one more usage counter guard 2025-10-03 21:09:54 +02:00
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-timers_types.h
posix_acl.h
posix_acl_xattr.h
power_supply.h
powercap.h
ppp-comp.h
ppp_channel.h
ppp_defs.h
pps_gen_kernel.h
pps_kernel.h
pr.h
prandom.h
preempt.h sched: Fix some typos in include/linux/preempt.h 2025-09-25 09:57:16 +02:00
prefetch.h
prime_numbers.h
printk.h
prmt.h
proc_fs.h
proc_ns.h ns: move ns type into struct ns_common 2025-09-25 09:23:54 +02:00
processor.h
profile.h
projid.h
property.h i2c-for-6.18-rc1 2025-10-01 15:11:00 -07:00
pruss_driver.h
psci.h
pseudo_fs.h
psi.h
psi_types.h
psp-platform-access.h
psp-sev.h
psp-tee.h
psp.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_mock.h
ptp_pch.h
ptr_ring.h ptr_ring: __ptr_ring_zero_tail micro optimization 2025-09-29 18:13:10 -07:00
ptrace.h
ptrace_api.h
purgatory.h
pvclock_gtod.h
pwm.h
pwm_backlight.h
pxa2xx_ssp.h
pxa168_eth.h
qnx6_fs.h
quota.h
quotaops.h
radix-tree.h
raid_class.h
ramfs.h
random.h
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_notifier.h
rcu_segcblist.h
rcu_sync.h
rculist.h
rculist_bl.h
rculist_nulls.h
rcupdate.h hyperv-next for v6.18 2025-10-07 08:40:15 -07:00
rcupdate_trace.h
rcupdate_wait.h
rcuref.h
rcutiny.h
rcutree.h
rcuwait.h
rcuwait_api.h
reboot-mode.h
reboot.h
reciprocal_div.h
ref_tracker.h
refcount.h
refcount_api.h
refcount_types.h
regmap.h
regset.h
relay.h
remoteproc.h
resctrl.h
resctrl_types.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
ring_buffer.h
rio.h
rio_drv.h
rio_ids.h
rio_regs.h
rmap.h mm/page_vma_mapped: track if the page is mapped across page table boundary 2025-09-28 11:51:29 -07:00
rmi.h
rndis.h
rodata_test.h
rolling_buffer.h
root_dev.h
rpmb.h
rpmsg.h
rseq.h Two fixes for RSEQ: 2025-09-30 15:06:33 -07:00
rslib.h
rtc.h
rtmutex.h locking/local_lock: Introduce local_lock_is_locked(). 2025-09-29 09:42:35 +02:00
rtnetlink.h
rtsx_common.h
rtsx_pci.h
rtsx_usb.h
rv.h
rw_hint.h
rwbase_rt.h
rwlock.h
rwlock_api_smp.h
rwlock_rt.h
rwlock_types.h
rwsem.h
sbitmap.h
scatterlist.h
scc.h
sched.h Scheduler updates for v6.18: 2025-09-30 10:35:11 -07:00
sched_clock.h
scmi_imx_protocol.h
scmi_protocol.h
scpi_protocol.h
screen_info.h
scs.h
sctp.h
scx200.h
scx200_gpio.h
seccomp.h
seccomp_types.h
secretmem.h
securebits.h
security.h Simplifying ->d_name audits, easy part. 2025-10-03 11:14:02 -07:00
sed-opal-key.h
sed-opal.h
seg6.h
seg6_genl.h
seg6_hmac.h
seg6_iptunnel.h
seg6_local.h
selection.h
sem.h
sem_types.h
semaphore.h
seq_buf.h
seq_file.h
seq_file_net.h
seqlock.h
seqlock_api.h
seqlock_types.h
serdev.h
serial.h
serial_8250.h
serial_bcm63xx.h
serial_core.h
serial_s3c.h
serial_sci.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
shrinker.h
signal.h
signal_types.h
signalfd.h
siox.h
siphash.h
sizes.h
skb_array.h
skbuff.h net: gso: restore ids of outer ip headers correctly 2025-09-25 12:42:49 +02:00
skbuff_ref.h
skmsg.h
slab.h Summary of significant series in this pull request: 2025-10-02 18:18:33 -07:00
slimbus.h
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
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
sprintf.h
sram.h
srcu.h
srcutiny.h
srcutree.h
ssbi.h
stackdepot.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
stmp3xxx_rtc_wdt.h
stmp_device.h
stop_machine.h
string.h
string_choices.h gpio updates for v6.18-rc1 2025-10-01 11:34:12 -07:00
string_helpers.h
stringhash.h
stringify.h
sungem_phy.h
sunserialcore.h
sunxi-rsb.h
surface_acpi_notify.h
suspend.h PM: hibernate: Fix pm_hibernation_mode_is_suspend() build breakage 2025-09-26 18:53:48 +02:00
svga.h
sw842.h
swab.h
swait.h
swait_api.h
swap.h
swap_cgroup.h
swapfile.h
swapops.h
swiotlb.h
switchtec.h
sxgbe_platform.h
sync_core.h
sync_file.h
synclink.h
sys.h
sys_info.h
sys_soc.h
syscall_user_dispatch.h
syscall_user_dispatch_types.h
syscalls.h
syscalls_api.h
syscore_ops.h
sysctl.h
sysfb.h
sysfs.h
syslog.h
sysrq.h
t10-pi.h
task_io_accounting.h
task_io_accounting_ops.h
task_work.h
taskstats_kern.h
tboot.h
tc.h
tcp.h
tee_core.h
tee_drv.h
tegra-icc.h
termios_internal.h
text-patching.h
textsearch.h
textsearch_fsm.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 namespace-6.18-rc1 2025-09-29 11:20:29 -07:00
timecounter.h
timekeeper_internal.h
timekeeping.h
timer.h
timer_types.h
timerfd.h
timeriomem-rng.h
timerqueue.h
timerqueue_types.h
timex.h
tnum.h
topology.h
torture.h
toshiba.h
tpm.h tpm: use a map for tpm2_calc_ordinal_duration() 2025-10-10 08:21:45 +03:00
tpm_command.h
tpm_eventlog.h
tpm_svsm.h
trace.h
trace_clock.h
trace_events.h
trace_recursion.h
trace_seq.h
tracefs.h
tracepoint-defs.h
tracepoint.h
transport_class.h
ts-nbus.h
tsacct_kern.h
tsm-mr.h
tsm.h
tty.h
tty_buffer.h
tty_driver.h
tty_flip.h
tty_ldisc.h
tty_port.h
turris-omnia-mcu-interface.h
turris-signing-key.h
typecheck.h
types.h
u64_stats_sync.h
u64_stats_sync_api.h
uacce.h
uaccess.h
ubsan.h
ucopysize.h
ucs2_string.h
udp.h udp: remove busylock and add per NUMA queues 2025-09-23 16:38:39 -07:00
uidgid.h
uidgid_types.h
uio.h
uio_driver.h
umh.h
unaligned.h
unicode.h
union_find.h
units.h
unroll.h
unwind_deferred.h
unwind_deferred_types.h
unwind_user.h
unwind_user_types.h
uprobes.h Performance events updates for v6.18: 2025-09-30 11:11:21 -07:00
usb.h
usb_usual.h
usbdevice_fs.h
user-return-notifier.h
user.h
user_events.h
user_namespace.h
userfaultfd_k.h
util_macros.h
uts.h
uts_namespace.h namespace-6.18-rc1 2025-09-29 11:20:29 -07:00
utsname.h
uuid.h
vbox_utils.h
vdpa.h vdpa: introduce map ops 2025-10-01 07:24:55 -04:00
vdso_datastore.h
verification.h
vermagic.h
vexpress.h
vfio.h
vfio_pci_core.h
vfs.h
vfsdebug.h
vga_switcheroo.h
vgaarb.h
vhost_iotlb.h
via-core.h
via.h
via_i2c.h
videodev2.h
virtio.h vduse: switch to use virtio map API instead of DMA API 2025-10-01 07:24:55 -04:00
virtio_anchor.h
virtio_byteorder.h
virtio_caif.h
virtio_config.h virtio: introduce map ops in virtio core 2025-10-01 07:24:43 -04:00
virtio_dma_buf.h
virtio_features.h
virtio_net.h
virtio_pci_admin.h
virtio_pci_legacy.h
virtio_pci_modern.h
virtio_ring.h virtio: introduce virtio_map container union 2025-10-01 07:24:43 -04:00
virtio_vsock.h
vm_event_item.h
vmalloc.h
vmcore_info.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.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
wordpart.h
workqueue.h
workqueue_api.h
workqueue_types.h
writeback.h Summary of significant series in this pull request: 2025-10-02 18:18:33 -07:00
ww_mutex.h
wwan.h
xarray.h
xattr.h
xxhash.h
xz.h
yam.h
zconf.h
zlib.h
zorro.h
zsmalloc.h
zstd.h
zstd_errors.h
zstd_lib.h
zswap.h
zutil.h