# Linux Kernel 5.15.220 - Product: Linux Kernel (https://whatsnew.fyi/product/linux-kernel) - Vendor: Linux Kernel Organization - Date: 2026-09-02 - Version: 5.15.220 - Original notes: https://cdn.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.15.220 - Permalink: https://whatsnew.fyi/product/linux-kernel/releases/5.15.220 - Labels: longterm What's New is an index, not a publisher: every entry below links to the vendor's own release notes, which are the authoritative source. Entries are labelled where they are hand-curated sample data, pre-releases, or drawn from a secondary source such as a developer blog. Reuse: the summaries, labels and curation here are © What's New. Quote freely with attribution and a link back; wholesale republication of the corpus is not permitted — terms: https://whatsnew.fyi/terms. The vendors' own release notes remain their publishers'. --- - **fixed** — usb: usbfs: fix use-after-free of usb_device in usbdev_release() - **fixed** — USB: c67x00: fix use-after-free in c67x00_add_iso_urb() - **removed** — USB: serial: spcp8x5: drop broken carrier detect support - **fixed** — USB: serial: option: fix slab OOB read in interrupt URB callback - **fixed** — ALSA: usb-audio: Complete cleanup after system-resume errors - **fixed** — ALSA: usb-audio: fix OOB write in snd_usbmidi_novation_output() - **changed** — usb: core: Strengthen error handling in hub_hub_status() - **changed** — usb: core: Add lock to usb_wakeup_notification() - **fixed** — KVM: s390: vsie: zero stale crypto bits - **removed** — crypto: qce: Remove unsafe/deprecated algorithms - **fixed** — crypto: mxs-dcp: fix source scatterlist length access - **fixed** — crypto: qce: fix CCM AAD buffer underallocation - **fixed** — crypto: atmel-tdes: use scatterlist length before DMA mapping - **changed** — mm/swap: reject swapon() on filesystem-level encrypted files - **fixed** — ipv6: seg6: clear IPv4 control block on IPIP decapsulation - **fixed** — net: bridge: mcast: fix use-after-free of a master VLAN's multicast context - **fixed** — xfrm: fix xfrm_state_construct() auth-trunc leak - **changed** — xfrm: ah6: validate routing header segments_left - **fixed** — xfrm: drop ESP-in-TCP packets with no ingress device 70 commits in this release: - Linux 5.15.220 - usb: usbfs: fix use-after-free of usb_device in usbdev_release() - USB: c67x00: fix use-after-free in c67x00_add_iso_urb() - USB: serial: spcp8x5: drop broken carrier detect support - USB: serial: option: fix slab OOB read in interrupt URB callback - ALSA: usb-audio: Complete cleanup after system-resume errors - ALSA: usb-audio: fix OOB write in snd_usbmidi_novation_output() - usb: core: Strengthen error handling in hub_hub_status() - usb: core: Add lock to usb_wakeup_notification() - KVM: s390: vsie: zero stale crypto bits - crypto: qce - Remove unsafe/deprecated algorithms - crypto: mxs-dcp - fix source scatterlist length access - crypto: qce - fix CCM AAD buffer underallocation - crypto: atmel-tdes - use scatterlist length before DMA mapping - mm/swap: reject swapon() on filesystem-level encrypted files - ipv6: seg6: clear IPv4 control block on IPIP decapsulation - net: bridge: mcast: fix use-after-free of a master VLAN's multicast context - xfrm: fix xfrm_state_construct() auth-trunc leak - xfrm: ah6: validate routing header segments_left - xfrm: drop ESP-in-TCP packets with no ingress device - xfrm: espintcp: fix UAF during close - usb: gadget: f_tcm: keep port count until LUN teardown completes - usb: usbtest: disable dynamic ID support - fuse: fix invalidate lock leak on open O_TRUNC DAX failure - fuse: fix invalidate lock leak on setattr writeback failure - xhci: dbgtty: Fix unregister on tty_alloc_driver() failure - xhci: dbgtty: Fix unregister on tty_register_driver() failure - accessibility: speakup: unregister tty ldisc on later init failures - fpga: dfl: fme: add error handling - HID: input: read battery capacity from its actual report offset - HID: ft260: fix stack-use-after-return write in I2C read race - HID: ft260: validate i2c input report length - HID: ft260: missed NACK from busy device - HID: ft260: wake up device from power saving mode - HID: ft260: skip unexpected HID input reports - HID: ft260: improve i2c large reads performance - HID: ft260: improve i2c write performance - HID: ft260: fix i2c probing for hwmon devices - HID: uclogic: fix use-after-free of inrange_timer on remove - nvmet-tcp: bound SGL data length before allocating command buffers - nvme: rename CDR/MORE/DNR to NVME_STATUS_* - HID: magicmouse: prevent unbounded recursion in magicmouse_raw_event() - nfc: nci: add data_len bound checks to activation parameter extractors - nilfs2: reject invalid block index in GC ioctl - nilfs2: correct return value kernel-doc descriptions for ioctl functions - ext4: propagate errors from fast commit range replay - kcov: fix data corruption and race conditions on PREEMPT_RT - kcov: replace local_irq_save() with a local_lock_t - ipv4: igmp: Fix potential UAF in igmp_gq_start_timer() - ALSA: PCM: Fix wait queue list corruption in snd_pcm_drain() on linked streams - ALSA: pcm: fix use-after-free on linked stream runtime in snd_pcm_drain() - ASoC: tegra: Fix Master Volume Control - ALSA: pcm: fix wait_time calculations - Revert "smb: client: use kvzalloc() for megabyte buffer in simple fallocate" - Revert "mtd: maps: vmu-flash: fix fault in unaligned fixup" - selinux: switch two allocations to use kzalloc_objs() - smc: Use __sk_dst_get() and dst_dev_rcu() in smc_vlan_by_tcpsk(). - Revert "PM: sleep: Use complete() in device_pm_sleep_init()" - bpf: Fix use-after-free in offloaded map/prog info fill - KVM: arm64: Prevent access to vCPU events before init - can: j1939: make j1939_sk_bind() fail if device is no longer registered - can: j1939: add missing calls in NETDEV_UNREGISTER notification handler - can: j1939: implement NETDEV_UNREGISTER notification handler - jfs: add check read-only before txBeginAnon() call - jfs: add check read-only before truncation in jfs_truncate_nolock() - bpf: Remove tst_run from lwt_seg6local_prog_ops. - ipvs: reload ip header after head reallocation - io_uring/io-wq: fix worker accounting when canceling creation callbacks - ext4: don _[Truncated at 4000 characters — full notes: https://cdn.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.15.220]_