twx-linux/include/linux
Florian Westphal f487722531 inet: inet_defrag: prevent sk release while still in use
[ Upstream commit 18685451fc4e546fc0e718580d32df3c0e5c8272 ]

ip_local_out() and other functions can pass skb->sk as function argument.

If the skb is a fragment and reassembly happens before such function call
returns, the sk must not be released.

This affects skb fragments reassembled via netfilter or similar
modules, e.g. openvswitch or ct_act.c, when run as part of tx pipeline.

Eric Dumazet made an initial analysis of this bug.  Quoting Eric:
  Calling ip_defrag() in output path is also implying skb_orphan(),
  which is buggy because output path relies on sk not disappearing.

  A relevant old patch about the issue was :
  8282f27449bf ("inet: frag: Always orphan skbs inside ip_defrag()")

  [..]

  net/ipv4/ip_output.c depends on skb->sk being set, and probably to an
  inet socket, not an arbitrary one.

  If we orphan the packet in ipvlan, then downstream things like FQ
  packet scheduler will not work properly.

  We need to change ip_defrag() to only use skb_orphan() when really
  needed, ie whenever frag_list is going to be used.

Eric suggested to stash sk in fragment queue and made an initial patch.
However there is a problem with this:

If skb is refragmented again right after, ip_do_fragment() will copy
head->sk to the new fragments, and sets up destructor to sock_wfree.
IOW, we have no choice but to fix up sk_wmem accouting to reflect the
fully reassembled skb, else wmem will underflow.

This change moves the orphan down into the core, to last possible moment.
As ip_defrag_offset is aliased with sk_buff->sk member, we must move the
offset into the FRAG_CB, else skb->sk gets clobbered.

This allows to delay the orphaning long enough to learn if the skb has
to be queued or if the skb is completing the reasm queue.

In the former case, things work as before, skb is orphaned.  This is
safe because skb gets queued/stolen and won't continue past reasm engine.

In the latter case, we will steal the skb->sk reference, reattach it to
the head skb, and fix up wmem accouting when inet_frag inflates truesize.

Fixes: 7026b1ddb6b8 ("netfilter: Pass socket pointer down through okfn().")
Diagnosed-by: Eric Dumazet <edumazet@google.com>
Reported-by: xingwei lee <xrivendell7@gmail.com>
Reported-by: yue sun <samsun1006219@gmail.com>
Reported-by: syzbot+e5167d7144a62715044c@syzkaller.appspotmail.com
Signed-off-by: Florian Westphal <fw@strlen.de>
Reviewed-by: Eric Dumazet <edumazet@google.com>
Link: https://lore.kernel.org/r/20240326101845.30836-1-fw@strlen.de
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-04-10 16:35:44 +02:00
..
amba
atomic locking/atomic: scripts: fix fallback ifdeffery 2023-09-20 09:39:03 +02:00
avf
bcma
byteorder
can
cdx
ceph ceph: switch to corrected encoding of max_xattr_size in mdsmap 2024-03-15 10:48:13 -04:00
clk
comedi
crush
decompress
device
dma
dsa
extcon
firmware Char/Misc driver changes for 6.6-rc1 2023-09-01 09:53:54 -07:00
fpga
fsl
gpio gpiolib: provide gpio_device_find() 2024-01-25 15:35:39 -08:00
greybus
hsi
i3c
iio iio: imu: adis: ensure proper DMA alignment 2024-02-23 09:25:06 +01:00
input
irqchip
isdn
lockd
mailbox
mdio
mfd mfd: core: Un-constify mfd_cell.of_reg 2023-11-20 11:59:23 +01:00
mlx4
mlx5 RDMA/mlx5: Fix fortify source warning while accessing Eth segment 2024-03-26 18:19:11 -04:00
mmc mmc: Add quirk MMC_QUIRK_BROKEN_CACHE_FLUSH for Micron eMMC Q2J54A 2023-11-28 17:20:01 +00:00
mtd mtd: spinand: Add support for 5-byte IDs 2024-04-03 15:28:58 +02:00
mux
net/intel
netfilter netfilter: ipset: fix performance regression in swap operation 2024-02-23 09:25:18 +01:00
netfilter_arp
netfilter_bridge
netfilter_ipv4
netfilter_ipv6
pcs
pds
perf RISC-V Patches for the 6.6 Merge Window, Part 1 2023-09-01 08:09:48 -07:00
phy phy: tegra: xusb: Add API to retrieve the port number of phy 2024-04-03 15:28:28 +02:00
pinctrl
platform_data RTC for 6.6 2023-09-07 16:07:35 -07:00
power
pse-pd
qed
raid raid6: Add LoongArch SIMD recovery implementation 2023-09-06 22:53:55 +08:00
regulator
remoteproc
reset
rpmsg
rtc
sched mm: add a NO_INHERIT flag to the PR_SET_MDWE prctl 2023-12-03 07:33:06 +01:00
soc This pull request is full of clk driver changes. In fact, there aren't any 2023-08-30 19:53:39 -07:00
soundwire soundwire: bus: introduce controller_id 2024-01-31 16:18:47 -08:00
spi spi: Fix null dereference on suspend 2023-11-28 17:19:55 +00:00
ssb
sunrpc SUNRPC: Fix RPC client cleaned up the freed pipefs dentries 2023-11-28 17:19:49 +00:00
surface_aggregator
ulpi
unaligned
usb r8152: add vendor/device ID pair for ASUS USB-C2500 2023-12-20 17:01:42 +01:00
8250_pci.h
acct.h
acpi_dma.h
acpi_iort.h
acpi_mdio.h
acpi_pmtmr.h
acpi_viot.h
acpi.h cpuidle, ACPI: Evaluate LPI arch_flags for broadcast timer 2023-10-04 16:31:27 +01:00
adb.h
adfs_fs.h
adreno-smmu-priv.h
adxl.h
aer.h PCI/AER: Export pcie_aer_is_native() 2023-09-11 15:24:16 -07:00
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
amd-pstate.h cpufreq/amd-pstate: Fix scaling_min_freq and scaling_max_freq update 2023-12-08 08:52:24 +01:00
anon_inodes.h
aperture.h
apm_bios.h
apm-emulation.h
apple-gmux.h
apple-mailbox.h
arch_topology.h
args.h
arm_ffa.h
arm_sdei.h
arm-cci.h
arm-smccc.h KVM: arm64: nvhe: Ignore SVE hint in SMCCC function ID 2023-09-12 13:07:37 +01:00
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 async: Introduce async_schedule_dev_nocall() 2024-01-31 16:18:49 -08:00
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-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 blk-wbt: Fix detection of dirty-throttled tasks 2024-02-23 09:25:16 +01:00
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 block: Fix iterating over an empty bio with bio_for_each_folio_all 2024-01-25 15:35:46 -08:00
bit_spinlock.h
bitfield.h
bitmap.h
bitops.h
bitrev.h
bits.h
blk_types.h block: warn once for each partition in bio_check_ro() 2024-01-20 11:51:38 +01:00
blk-cgroup.h
blk-crypto-profile.h
blk-crypto.h
blk-integrity.h
blk-mq-pci.h
blk-mq-virtio.h
blk-mq.h
blk-pm.h
blkdev.h block: Provide bdev_open_* functions 2024-03-26 18:19:40 -04:00
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_mem_alloc.h bpf: Use pcpu_alloc_size() in bpf_mem_free{_rcu}() 2024-01-25 15:35:28 -08:00
bpf_mprog.h
bpf_trace.h
bpf_types.h
bpf_verifier.h bpf: keep track of max number of bpf_loop callback iterations 2024-01-31 16:18:59 -08:00
bpf-cgroup-defs.h
bpf-cgroup.h bpf: Propagate modified uaddrlen from cgroup sockaddr programs 2024-01-31 16:19:04 -08:00
bpf-netns.h
bpf.h bpf: Defer the free of inner map when necessary 2024-01-25 15:35:22 -08:00
bpfilter.h
bpfptr.h
brcmphy.h
bsearch.h
bsg-lib.h
bsg.h
btf_ids.h bpf: Fix BTF_ID symbol generation collision 2023-09-15 12:08:27 -07:00
btf.h Probes updates for v6.6: 2023-09-02 11:10:50 -07:00
btree-128.h
btree-type.h
btree.h
btrfs.h
buffer_head.h Regression and bug fixes for ext4. 2023-09-17 10:33:53 -07:00
bug.h
build_bug.h
build-salt.h
buildid.h
bvec.h block: define bvec_iter as __packed __aligned(4) 2024-03-06 14:48:44 +00:00
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_types.h
cfi.h
cgroup_api.h
cgroup_rdma.h
cgroup_refcnt.h
cgroup_subsys.h
cgroup-defs.h cgroup: Fix incorrect css_set_rwsem reference in comment 2023-10-12 07:22:56 -10:00
cgroup.h
circ_buf.h
cleanup.h
clk-provider.h clk: fixed-rate: fix clk_hw_register_fixed_rate_with_accuracy_parent_hw 2024-01-25 15:35:38 -08:00
clk.h
clkdev.h
clockchips.h
clocksource_ids.h
clocksource.h
cma.h
cn_proc.h
cnt32_to_63.h
coda.h
compaction.h
compat.h
compiler_attributes.h
compiler_types.h update workarounds for gcc "asm goto" issue 2024-02-23 09:24:47 +01:00
compiler-clang.h
compiler-gcc.h update workarounds for gcc "asm goto" issue 2024-02-23 09:24:47 +01:00
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_smt.h
cpu.h sched: Simplify tg_set_cfs_bandwidth() 2024-04-03 15:28:18 +02:00
cpufeature.h
cpufreq.h cpufreq: Limit resolving a frequency to policy min/max 2024-04-03 15:28:22 +02:00
cpuhotplug.h hrtimers: Push pending hrtimers away from outgoing CPU earlier 2023-12-13 18:44:56 +01:00
cpuidle_haltpoll.h
cpuidle.h
cpumask_api.h
cpumask.h
cpuset.h
crash_core.h
crash_dump.h
crc4.h
crc7.h
crc8.h
crc16.h
crc32.h
crc32c.h
crc32poly.h
crc64.h
crc-ccitt.h
crc-itu-t.h
crc-t10dif.h
cred.h cred: get rid of CONFIG_DEBUG_CREDENTIALS 2023-12-20 17:01:51 +01:00
crypto.h
cs5535.h
ctype.h
cuda.h
damon.h mm/damon/core: make damon_start() waits until kdamond_fn() starts 2024-01-01 12:42:23 +00:00
dasd_mod.h
davinci_emac.h
dax.h mm: convert DAX lock/unlock page to lock/unlock folio 2024-01-10 17:16:53 +01:00
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_cooling.h
devfreq-event.h
devfreq.h
device_cgroup.h
device-mapper.h
device.h driver core: Add a guard() definition for the device_lock() 2024-01-20 11:51:44 +01:00
devm-helpers.h
devpts_fs.h
dfl.h
digsig.h
dim.h
dio.h
dirent.h
dlm_plock.h
dlm.h
dm9000.h
dm-bufio.h
dm-dirty-log.h
dm-io.h dm io: Support IO priority 2024-03-26 18:20:13 -04:00
dm-kcopyd.h
dm-region-hash.h
dm-verity-loadpin.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-buf: fix check in dma_resv_add_fence 2023-12-08 08:52:19 +01:00
dma-heap.h
dma-map-ops.h
dma-mapping.h
dma-resv.h
dmaengine.h dmaengine: fix is_slave_direction() return false when DMA_DEV_TO_DEV 2024-02-16 19:10:42 +01:00
dmapool.h
dmar.h
dmi.h
dnotify.h
dns_resolver.h
dqblk_qtree.h
dqblk_v1.h
dqblk_v2.h
drbd_config.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 net: ethtool: Fix documentation of ethtool_sprintf() 2023-11-28 17:20:11 +00:00
eventfd.h
eventpoll.h
evm.h
export-internal.h linux/export: Ensure natural alignment of kcrctab array 2024-01-05 15:19:41 +01:00
export.h
exportfs.h
ext2_fs.h
extable.h
extcon-provider.h
extcon.h
f2fs_fs.h f2fs: fix to truncate meta inode pages forcely 2024-03-26 18:20:03 -04:00
f75375s.h
falloc.h
fanotify.h
fault-inject-usercopy.h
fault-inject.h
fb.h fbdev: Update fbdev source file paths 2023-09-01 00:29:34 +02:00
fbcon.h
fcdevice.h
fcntl.h
fd.h
fddidevice.h
fdtable.h
fec.h
fiemap.h
file.h
fileattr.h
filelock.h
filter.h bpf: Mark bpf_spin_{lock,unlock}() helpers with notrace correctly 2024-03-26 18:19:29 -04: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
fprobe.h
freelist.h
freezer.h
fs_api.h
fs_context.h fs: factor out vfs_parse_monolithic_sep() helper 2023-10-12 18:53:36 +03:00
fs_parser.h
fs_pin.h
fs_stack.h
fs_struct.h
fs_types.h
fs.h quota: Properly annotate i_dquot arrays with __rcu 2024-03-26 18:19:46 -04: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 lib/generic-radix-tree.c: Don't overflow in peek() 2023-11-28 17:19:35 +00:00
genetlink.h
genl_magic_func.h
genl_magic_struct.h
getcpu.h
gfp_api.h
gfp_types.h
gfp.h mm, vmscan: prevent infinite loop for costly GFP_NOIO | __GFP_RETRY_MAYFAIL allocations 2024-04-03 15:28:44 +02:00
glob.h
gnss.h
goldfish.h
gpio_keys.h
gpio-pxa.h
gpio.h
greybus.h
group_cpus.h
hardirq.h
hash.h
hashtable_api.h
hashtable.h
hdlc.h
hdlcdrv.h
hdmi.h
hex.h
hid_bpf.h
hid-debug.h
hid-roccat.h
hid-sensor-hub.h
hid-sensor-ids.h
hid.h HID: fix HID device resource race between HID core and debugging support 2023-12-03 07:33:04 +01:00
hidden.h
hiddev.h
hidraw.h
highmem-internal.h
highmem.h highmem: fix a memory copy problem in memcpy_from_folio 2023-12-13 18:45:21 +01:00
highuid.h
hil_mlc.h
hil.h
hippidevice.h
hisi_acc_qm.h crypto: hisilicon/qm - add a function to set qm algs 2024-01-25 15:35:17 -08:00
hmm.h
host1x_context_bus.h
host1x.h
hp_sdc.h
hpet.h
hrtimer_api.h
hrtimer_defs.h
hrtimer.h hrtimer: Report offline hrtimer enqueue 2024-02-16 19:10:55 +01:00
hte.h
huge_mm.h
hugetlb_cgroup.h
hugetlb_inline.h
hugetlb.h hugetlb: fix null-ptr-deref in hugetlb_vma_lock_write 2023-12-13 18:45:24 +01:00
hw_breakpoint.h
hw_random.h hwrng: bcm2835 - Fix hwrng throughput regression 2023-11-20 11:59:18 +01:00
hwmon-sysfs.h
hwmon-vid.h
hwmon.h
hwspinlock.h
hyperv.h Drivers: hv: vmbus: Calculate ring buffer size for more efficient use of memory 2024-04-03 15:28:39 +02:00
hypervisor.h
i2c-algo-bit.h
i2c-algo-pca.h
i2c-algo-pcf.h
i2c-atr.h
i2c-dev.h
i2c-mux.h
i2c-smbus.h
i2c.h i2c: Drop legacy callback .probe_new() 2023-09-13 10:48:48 +02:00
i8042.h
i8253.h
i8254.h
icmp.h
icmpv6.h
idle_inject.h
idr.h Fix termination state for idr_for_each_entry_ul() 2023-11-20 11:59:35 +01:00
ieee80211.h wifi: avoid offset calculation on NULL pointer 2024-01-20 11:51:37 +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 team: fix null-ptr-deref when team device type is changed 2023-09-19 16:28:37 +02:00
if_tun.h
if_tunnel.h
if_vlan.h
igmp.h
ihex.h
ima.h
imx-media.h
in6.h
in.h
indirect_call_wrapper.h
inet_diag.h
inet.h
inetdevice.h
init_ohci1394_dma.h
init_syscalls.h
init_task.h
init.h linux/init: remove __memexit* annotations 2024-02-23 09:25:03 +01:00
initrd.h
inotify.h
input.h
instruction_pointer.h x86/ibt: Suppress spurious ENDBR 2023-09-12 17:50:53 +02:00
instrumentation.h
instrumented.h
int_log.h
integrity.h
intel_rapl.h powercap: intel_rapl: Fix locking in TPMI RAPL 2024-04-03 15:28:19 +02:00
intel_tcc.h thermal/intel: Fix intel_tcc_get_temp() to support negative CPU temperature 2024-04-03 15:28:18 +02:00
intel_th.h
intel_tpmi.h
intel-ish-client-if.h
interconnect-clk.h
interconnect-provider.h
interconnect.h
interrupt.h timers: Tag (hr)timer softirq as hotplug safe 2023-09-27 16:54:03 +02:00
interval_tree_generic.h
interval_tree.h
io_uring_types.h io_uring: drop any code related to SCM_RIGHTS 2024-03-26 18:19:09 -04:00
io_uring.h io_uring/unix: drop usage of io_uring socket 2024-03-26 18:19:09 -04:00
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
iocontext.h
iomap.h
iommu-helper.h
iommu.h iommu: Avoid more races around device probe 2023-12-08 08:52:19 +01:00
iommufd.h
iopoll.h
ioport.h
ioprio.h
ioremap.h
iosys-map.h
iova_bitmap.h
iova.h
ip.h
ipack.h
ipc_namespace.h
ipc.h
ipmi_smi.h
ipmi.h
ipv6_route.h
ipv6.h ipv6: ignore dst hint for multipath routes 2023-09-01 08:11:51 +01:00
irq_poll.h
irq_sim.h
irq_work.h arch: consolidate arch_irq_work_raise prototypes 2024-02-05 20:14:17 +00:00
irq.h x86/apic/msi: Fix misconfigured non-maskable MSI quirk 2023-11-28 17:19:56 +00:00
irqbypass.h
irqchip.h
irqdesc.h
irqdomain_defs.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
ism.h
iversion.h
jbd2.h jbd2: increase the journal IO's priority 2024-01-20 11:51:42 +01:00
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: disable kasan_non_canonical_hook() for HW tags 2023-10-18 12:12:41 -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 keys, dns: Allow key types (eg. DNS) to be reclaimed immediately on expiry 2024-01-01 12:42:33 +00:00
key.h
keyboard.h
keyctl.h
kfence.h
kfifo.h
kgdb.h
khugepaged.h
klist.h
kmemleak.h
kmod.h
kmsan_string.h
kmsan_types.h
kmsan-checks.h
kmsan.h
kmsg_dump.h
kobj_map.h
kobject_api.h
kobject_ns.h
kobject.h
kprobes.h kprobes: consistent rcu api usage for kretprobe holder 2023-12-13 18:45:31 +01:00
kref_api.h
kref.h
ks0108.h
ks8842.h
ks8851_mll.h
ksm.h
kstrtox.h
kthread.h
ktime_api.h
ktime.h
kvm_dirty_ring.h
kvm_host.h KVM: x86/mmu: BUG() in rmap helpers iff CONFIG_BUG_ON_DATA_CORRUPTION=y 2023-08-31 13:48:50 -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 scsi: sd: Fix TCG OPAL unlock on system resume 2024-04-03 15:28:59 +02: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_sched.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: fix default return value of the socket_getpeersec_*() hooks 2024-02-23 09:25:02 +01:00
lsm_hooks.h
lz4.h
lzo.h
mailbox_client.h
mailbox_controller.h
map_benchmark.h
maple_tree.h maple_tree: add MAS_UNDERFLOW and MAS_OVERFLOW states 2023-09-29 17:20:46 -07:00
maple.h
marvell_phy.h
math64.h
math.h
mbcache.h
mbus.h
mc6821.h
mc146818rtc.h rtc: Add support for configuring the UIP timeout for RTC reads 2024-01-31 16:18:56 -08:00
mcb.h mcb: remove is_added flag from mcb_device struct 2023-10-05 09:50:14 +02:00
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 x86/numa: Fix the address overlap check in numa_fill_memblks() 2024-03-01 13:35:06 +01:00
memcontrol.h mm: memcontrol: fix GFP_NOFS recursion in memory.high enforcement 2023-09-19 13:21:34 -07:00
memfd.h
memory_hotplug.h
memory-tiers.h
memory.h
mempolicy.h
mempool.h
memregion.h
memremap.h
memstick.h
mhi_ep.h bus: mhi: ep: Pass mhi_ep_buf_info struct to read/write APIs 2024-01-25 15:35:53 -08:00
mhi.h
micrel_phy.h net: phy: Provide Module 4 KSZ9477 errata (DS80000754C) 2023-09-06 20:49:04 -07:00
microchipphy.h
migrate_mode.h
migrate.h
mii_timestamper.h
mii.h
min_heap.h
minmax.h minmax: relax check to allow comparison between unsigned arguments and signed constants 2024-02-05 20:14:21 +00:00
misc_cgroup.h
miscdevice.h
mISDNdsp.h
mISDNhw.h
mISDNif.h
mm_api.h
mm_inline.h mm/mglru: fix underprotected page cache 2023-12-20 17:02:02 +01:00
mm_types_task.h
mm_types.h
mm.h Add x86 shadow stack support 2023-08-31 12:20:12 -07:00
mman.h prctl: generalize PR_SET_MDWE support check to be per-arch 2024-04-03 15:28:54 +02:00
mmap_lock.h
mmdebug.h
mmiotrace.h
mmu_context.h
mmu_notifier.h
mmzone.h mm, kmsan: fix infinite recursion due to RCU critical section 2024-02-05 20:14:38 +00:00
mnt_idmapping.h
mnt_namespace.h
mod_devicetable.h
module_signature.h
module_symbol.h
module.h
moduleloader.h modules: wait do_free_init correctly 2024-03-26 18:19:55 -04:00
moduleparam.h
most.h
mount.h
moxtet.h
mpage.h
mpi.h
mpls_iptunnel.h
mpls.h
mroute6.h
mroute_base.h
mroute.h
msdos_fs.h
msdos_partition.h
msg.h
msi_api.h
msi.h x86/apic/msi: Fix misconfigured non-maskable MSI quirk 2023-11-28 17:19:56 +00:00
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_tstamp.h
net.h
netdev_features.h
netdevice.h net: Move {l,t,d}stats allocation to core and convert veth & vrf 2023-12-03 07:33:04 +01:00
netfilter_bridge.h netfilter: bridge: replace physindev with physinif in nf_bridge_info 2024-01-25 15:35:59 -08:00
netfilter_defs.h
netfilter_ipv4.h
netfilter_ipv6.h
netfilter_netdev.h
netfilter.h netfilter: bridge: confirm multicast packets before passing them up the stack 2024-03-06 14:48:36 +00:00
netfs.h
netlink.h
netpoll.h
nfs3.h
nfs4.h
nfs_fs_i.h
nfs_fs_sb.h NFSv4.1: fix pnfs MDS=DS session trunking 2023-09-13 11:51:11 -04:00
nfs_fs.h nfs: fix UAF in direct writes 2024-04-03 15:28:29 +02:00
nfs_iostat.h
nfs_page.h NFS: Use the correct commit info in nfs_join_page_group() 2023-09-13 11:51:11 -04:00
nfs_ssc.h
nfs_xdr.h
nfs.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_transport.h
ntb.h
nubus.h
numa.h x86/numa: Introduce numa_fill_memblks() 2023-11-20 11:58:53 +01:00
nvme-auth.h
nvme-fc-driver.h scsi: qla2xxx: Correct endianness for rqstlen and rsplen 2023-09-05 05:34:14 -04:00
nvme-fc.h
nvme-rdma.h
nvme-tcp.h
nvme.h
nvmem-consumer.h
nvmem-provider.h
nvram.h
objagg.h
objtool_types.h
objtool.h x86/speculation, objtool: Use absolute relocations for annotations 2023-12-20 17:02:06 +01: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
of.h of: overlay: Fix of_overlay_fdt_apply prototype when !CONFIG_OF_OVERLAY 2023-09-05 13:02:13 -05:00
oid_registry.h spnego: add missing OID to oid registry 2023-09-09 08:18:16 -05:00
olpc-ec.h
omap-dma.h
omap-gpmc.h
omap-iommu.h
omap-mailbox.h
omapfb.h
once_lite.h
once.h
oom.h
openvswitch.h
osq_lock.h
overflow.h
packing.h
padata.h
page_counter.h
page_ext.h
page_idle.h
page_owner.h
page_ref.h
page_reporting.h
page_table_check.h
page-flags-layout.h
page-flags.h
page-isolation.h
pageblock-flags.h
pagemap.h filemap: add a per-mapping stable writes flag 2023-12-03 07:33:03 +01:00
pagevec.h
pagewalk.h
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: add INTEL_HDA_ARL to pci_ids.h 2024-02-05 20:14:27 +00:00
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: Make pci_dev_is_disconnected() helper public for other drivers 2024-03-26 18:19:36 -04:00
pcs-lynx.h
pcs-rzn1-miic.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/core: Fix cpuctx refcounting 2023-11-28 17:19:54 +00:00
perf_regs.h
personality.h
pfn_t.h
pfn.h
pgtable_api.h
pgtable.h mm: abstract moving to the next PFN 2023-09-29 17:20:46 -07:00
phonet.h
phy_fixed.h
phy_led_triggers.h
phy.h
phylib_stubs.h
phylink.h net: phylink: fix sphinx complaint about invalid literal 2023-09-06 07:46:49 +01:00
pid_namespace.h
pid.h
pim.h
pipe_fs_i.h fs/pipe: move check to pipe_has_watch_queue() 2024-01-31 16:19:09 -08:00
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 PM: sleep: Fix symbol export for _SIMPLE_ variants of _PM_OPS() 2023-11-20 11:58:57 +01:00
pmbus.h
pmu.h
pnp.h
poison.h
poll.h fs/select: rework stack allocation hack for clang 2024-03-26 18:19:17 -04:00
polynomial.h
posix_acl_xattr.h
posix_acl.h
posix-clock.h
posix-timers.h
power_supply.h power: supply: core: Use blocking_notifier_call_chain to avoid RCU complaint 2023-11-08 11:56:20 +01:00
powercap.h
ppp_channel.h
ppp_defs.h
ppp-comp.h
pps_kernel.h
pr.h
prandom.h
preempt.h sched/core: Optimize in_task() and in_interrupt() a bit 2023-11-28 17:19:48 +00:00
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
psp-platform-access.h
psp-sev.h
psp-tee.h
psp.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_mock.h
ptp_pch.h
ptr_ring.h
ptrace_api.h
ptrace.h ptrace: Introduce exception_ip arch hook 2024-02-23 09:24:53 +01:00
purgatory.h
pvclock_gtod.h
pwm_backlight.h
pwm.h pwm: Fix double shift bug 2023-11-28 17:19:48 +00:00
pxa2xx_ssp.h
pxa168_eth.h
qnx6_fs.h
quota.h quota: Fix slow quotaoff 2023-10-06 11:01:23 +02:00
quotaops.h quota: Fix slow quotaoff 2023-10-06 11:01:23 +02:00
radix-tree.h
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 rcu: add a helper to report consolidated flavor QS 2024-03-26 18:20:12 -04:00
rcuref.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 mm: memcontrol: fix GFP_NOFS recursion in memory.high enforcement 2023-09-19 13:21:34 -07:00
rethook.h rethook: Use __rcu pointer for rethook::handler 2023-12-13 18:45:19 +01:00
rfkill.h
rhashtable-types.h
rhashtable.h
ring_buffer.h ring-buffer: Use wait_event_interruptible() in ring_buffer_wait() 2024-04-03 15:28:32 +02:00
rio_drv.h
rio_ids.h
rio_regs.h
rio.h
rmap.h mm/rmap: fix misplaced parenthesis of a likely() 2024-01-31 16:18:56 -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_api_smp.h
rwlock_rt.h
rwlock_types.h
rwlock.h
rwsem.h
sbitmap.h
scatterlist.h
scc.h
sched_clock.h
sched.h
scmi_protocol.h firmware: arm_scmi: Extend perf protocol ops to get information of a domain 2023-12-13 18:45:15 +01:00
scpi_protocol.h
screen_info.h
scs.h
sctp.h
scx200_gpio.h
scx200.h
seccomp.h
secretmem.h
securebits.h
security.h lsm: new security_file_ioctl_compat() hook 2024-01-31 16:18:54 -08:00
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 locking/seqlock: Do the lockdep annotation before locking in do_write_seqcount_begin_nested() 2023-09-21 08:37:44 +02:00
serdev.h
serial_8250.h
serial_bcm63xx.h
serial_core.h serial: core: only stop transmit when HW fifo is empty 2024-04-03 15:28:25 +02:00
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 quota: Properly annotate i_dquot arrays with __rcu 2024-03-26 18:19:46 -04:00
shrinker.h
signal_types.h
signal.h
signalfd.h
siox.h
siphash.h
sizes.h
skb_array.h
skbuff.h inet: inet_defrag: prevent sk release while still in use 2024-04-10 16:35:44 +02:00
skmsg.h udp: fix busy polling 2024-01-31 16:19:01 -08:00
slab_def.h
slab.h
slimbus.h
slub_def.h
sm501-regs.h
sm501.h
smc91x.h
smp_types.h
smp.h
smpboot.h
smsc911x.h
smscphy.h
sock_diag.h
socket.h vsock: read from socket's error queue 2023-11-28 17:19:38 +00:00
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
sprintf.h
sram.h
srcu.h srcu: Use try-lock lockdep annotation for NMI-safe access. 2024-01-25 15:35:49 -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_types.h
static_call.h
static_key.h
stdarg.h
stddef.h
stm.h
stmmac.h net: stmmac: Tx coe sw fallback 2024-01-31 16:18:47 -08:00
stmp3xxx_rtc_wdt.h
stmp_device.h
stop_machine.h
string_choices.h
string_helpers.h
string.h string.h: add array-wrappers for (v)memdup_user() 2023-11-28 17:19:40 +00:00
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
swap_slots.h
swap.h mm/swap: fix race when skipping swapcache 2024-03-01 13:35:00 +01:00
swapfile.h
swapops.h
swiotlb.h swiotlb: fix the check whether a device has used software IO TLB 2023-09-27 11:19:15 +02:00
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 x86/entry/ia32: Ensure s32 is sign extended to s64 2024-01-31 16:19:14 -08:00
syscore_ops.h
sysctl.h proc: sysctl: prevent aliased sysctls from getting passed to init 2023-11-28 17:19:57 +00:00
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
tegra-icc.h
termios_internal.h
textsearch_fsm.h
textsearch.h
tfrc.h
thermal.h thermal: core: Fix thermal zone suspend-resume synchronization 2024-02-05 20:14:15 +00:00
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
time32.h
time64.h
time_namespace.h
time.h
timecounter.h
timekeeper_internal.h
timekeeping.h
timer.h
timerfd.h
timeriomem-rng.h
timerqueue.h
timex.h
tnum.h
topology.h sched/topology: Fix sched_numa_find_nth_cpu() in non-NUMA case 2023-11-20 11:58:51 +01:00
torture.h torture: Make torture_hrtimeout_ns() take an hrtimer mode parameter 2023-11-28 17:20:08 +00:00
toshiba.h
tpm_command.h
tpm_eventlog.h
tpm.h
trace_clock.h
trace_events.h eventfs: Remove eventfs_file and just use eventfs_inode 2024-02-23 09:25:19 +01:00
trace_recursion.h
trace_seq.h
trace.h
tracefs.h eventfs: Hold eventfs_mutex when calling callback functions 2024-02-23 09:25:21 +01:00
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
ubsan.h
ucs2_string.h
udp.h udplite: fix various data-races 2023-11-20 11:58:56 +01:00
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
usermode_driver.h
util_macros.h
uts.h
utsname.h
uuid.h
vbox_utils.h
vdpa.h vdpa: add get_backend_features vdpa operation 2023-09-03 18:10:22 -04:00
verification.h KEYS: Include linux/errno.h in linux/verification.h 2023-11-20 11:59:18 +01:00
vermagic.h
vexpress.h
vfio_pci_core.h
vfio.h vfio: Introduce interface to flush virqfd inject workqueue 2024-04-03 15:28:49 +02:00
vfs.h
vga_switcheroo.h
vgaarb.h
vhost_iotlb.h
via_i2c.h
via-core.h
via.h
videodev2.h
virtio_anchor.h
virtio_byteorder.h
virtio_caif.h
virtio_config.h
virtio_console.h
virtio_dma_buf.h
virtio_net.h net: add more sanity check in virtio_net_hdr_to_skb() 2024-01-25 15:35:57 -08:00
virtio_pci_legacy.h
virtio_pci_modern.h
virtio_ring.h
virtio_vsock.h virtio/vsock: send credit update during setting SO_RCVLOWAT 2024-01-25 15:35:26 -08:00
virtio.h I2C has mainly cleanups this time and a few driver improvements. Because 2023-09-04 13:44:11 -07:00
vlynq.h
vm_event_item.h
vmalloc.h
vmpressure.h
vmstat.h
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.h
watch_queue.h
watchdog.h
win_minmax.h
wireless.h
wkup_m3_ipc.h
wm97xx.h
wmi.h
workqueue_api.h
workqueue.h Revert "workqueue: Implement system-wide nr_active enforcement for unbound workqueues" 2024-04-04 20:23:06 +02:00
writeback.h
ww_mutex.h
wwan.h
xarray.h xarray: Document necessary flag in alloc functions 2023-09-05 19:01:38 -04:00
xattr.h
xxhash.h
xz.h
yam.h
zconf.h
zlib.h
zorro.h
zpool.h
zsmalloc.h
zstd_errors.h
zstd_lib.h
zstd.h
zswap.h
zutil.h