Логотип exploitDog
Консоль
Логотип exploitDog

exploitDog

suse-cvrf логотип

SUSE-SU-2026:0962-1

Опубликовано: 23 мар. 2026
Источник: suse-cvrf

Описание

Security update for the Linux Kernel

The SUSE Linux Enterprise 15 SP7 RT kernel was updated to receive various security bugfixes.

The following security bugs were fixed:

  • CVE-2023-53817: crypto: lib/mpi - avoid null pointer deref in mpi_cmp_ui() (bsc#1254992).
  • CVE-2025-39748: bpf: Forget ranges when refining tnum after JSET (bsc#1249587).
  • CVE-2025-39817: efivarfs: Fix slab-out-of-bounds in efivarfs_d_compare (bsc#1249998).
  • CVE-2025-39964: crypto: af_alg - Disallow concurrent writes in af_alg_sendmsg (bsc#1251966).
  • CVE-2025-40099: cifs: parse_dfs_referrals: prevent oob on malformed input (bsc#1252911).
  • CVE-2025-40103: smb: client: Fix refcount leak for cifs_sb_tlink (bsc#1252924).
  • CVE-2025-40201: kernel/sys.c: fix the racy usage of task_lock(tsk->group_leader) in sys_prlimit64() paths
  • CVE-2025-40253: s390/ctcm: Fix double-kfree (bsc#1255084).
  • CVE-2025-68283: libceph: replace BUG_ON with bounds check for map->max_osd (bsc#1255379).
  • CVE-2025-68295: smb: client: fix memory leak in cifs_construct_tcon() (bsc#1255129).
  • CVE-2025-68374: md: fix rcu protection in md_wakeup_thread (bsc#1255530).
  • CVE-2025-68735: drm/panthor: Prevent potential UAF in group creation (bsc#1255811).
  • CVE-2025-68736: landlock: Fix handling of disconnected directories (bsc#1255698).
  • CVE-2025-68778: btrfs: don't log conflicting inode if it's a dir moved in the current transaction (bsc#1256683).
  • CVE-2025-68785: net: openvswitch: fix middle attribute validation in push_nsh() action (bsc#1256640).
  • CVE-2025-68810: KVM: Disallow toggling KVM_MEM_GUEST_MEMFD on an existing memslot (bsc#1256679).
  • CVE-2025-71071: iommu/mediatek: fix use-after-free on probe deferral (bsc#1256802).
  • CVE-2025-71104: KVM: x86: Fix VM hard lockup after prolonged inactivity with periodic HV timer (bsc#1256708).
  • CVE-2025-71113: crypto: af_alg - zero initialize memory allocated via sock_kmalloc (bsc#1256716).
  • CVE-2025-71125: tracing: Do not register unsupported perf events (bsc#1256784).
  • CVE-2025-71126: mptcp: reset fallback status gracefully at disconnect() time (bsc#1256755).
  • CVE-2025-71148: net/handshake: restore destructor on submit failure (bsc#1257159).
  • CVE-2025-71184: btrfs: fix NULL dereference on root when tracing inode eviction (bsc#1257635).
  • CVE-2025-71194: btrfs: fix deadlock in wait_current_trans() due to ignored transaction type (bsc#1257687).
  • CVE-2025-71225: md: suspend array while updating raid_disks via sysfs (bsc#1258411).
  • CVE-2026-22979: net: fix memory leak in skb_segment_list for GRO packets (bsc#1257228).
  • CVE-2026-22982: net: mscc: ocelot: Fix crash when adding interface under a lag (bsc#1257179).
  • CVE-2026-22998: nvme-tcp: fix NULL pointer dereferences in nvmet_tcp_build_pdu_iovec (bsc#1257209).
  • CVE-2026-23003: geneve: Fix incorrect inner network header offset when innerprotoinherit is set (bsc#1257246).
  • CVE-2026-23004: dst: fix races in rt6_uncached_list_del() and rt_del_uncached_list() (bsc#1257231).
  • CVE-2026-23010: ipv6: Fix use-after-free in inet6_addr_del() (bsc#1257332).
  • CVE-2026-23017: idpf: fix error handling in the init_task on load (bsc#1257552).
  • CVE-2026-23023: idpf: fix memory leak in idpf_vport_rel() (bsc#1257556).
  • CVE-2026-23035: net/mlx5e: Pass netdev to mlx5e_destroy_netdev instead of priv (bsc#1257559).
  • CVE-2026-23053: NFS: Fix a deadlock involving nfs_release_folio() (bsc#1257718).
  • CVE-2026-23057: vsock/virtio: Coalesce only linear skb (bsc#1257740).
  • CVE-2026-23060: crypto: authencesn - reject too-short AAD (assoclen<8) to match ESP/ESN spec (bsc#1257735).
  • CVE-2026-23064: net/sched: act_ife: avoid possible NULL deref (bsc#1257765).
  • CVE-2026-23069: vsock/virtio: fix potential underflow in virtio_transport_get_credit() (bsc#1257755).
  • CVE-2026-23070: Octeontx2-af: Add proper checks for fwdata (bsc#1257709).
  • CVE-2026-23074: net/sched: Enforce that teql can only be used as root qdisc (bsc#1257749).
  • CVE-2026-23083: fou: Don't allow 0 for FOU_ATTR_IPPROTO (bsc#1257745).
  • CVE-2026-23084: be2net: Fix NULL pointer dereference in be_cmd_get_mac_from_list (bsc#1257830).
  • CVE-2026-23085: irqchip/gic-v3-its: Avoid truncating memory addresses (bsc#1257758).
  • CVE-2026-23086: vsock/virtio: cap TX credit to local buffer size (bsc#1257757).
  • CVE-2026-23088: tracing: Fix crash on synthetic stacktrace field usage (bsc#1257814).
  • CVE-2026-23089: ALSA: usb-audio: Fix use-after-free in snd_usb_mixer_free() (bsc#1257790).
  • CVE-2026-23095: gue: Fix skb memleak with inner IP protocol 0 (bsc#1257808).
  • CVE-2026-23099: bonding: limit BOND_MODE_8023AD to Ethernet devices (bsc#1257816).
  • CVE-2026-23102: arm64/fpsimd: signal: Mandate SVE payload for streaming-mode state (bsc#1257772).
  • CVE-2026-23104: ice: fix devlink reload call trace (bsc#1257763).
  • CVE-2026-23105: net/sched: qfq: Use cl_is_active to determine whether class is active in qfq_rm_from_ag (bsc#1257775).
  • CVE-2026-23107: arm64/fpsimd: signal: Allocate SSVE storage when restoring ZA (bsc#1257762).
  • CVE-2026-23110: scsi: core: Wake up the error handler when final completions race against each other (bsc#1257761).
  • CVE-2026-23111: netfilter: nf_tables: fix inverted genmask check in nft_map_catchall_activate() (bsc#1258181).
  • CVE-2026-23112: nvmet-tcp: add bounds checks in nvmet_tcp_build_pdu_iovec (bsc#1258184).
  • CVE-2026-23113: io_uring/io-wq: check IO_WQ_BIT_EXIT inside work run loop (bsc#1258278).
  • CVE-2026-23116: pmdomain: imx8m-blk-ctrl: Remove separate rst and clk mask for 8mq vpu (bsc#1258277).
  • CVE-2026-23119: bonding: provide a net pointer to __skb_flow_dissect() (bsc#1258273).
  • CVE-2026-23125: sctp: move SCTP_CMD_ASSOC_SHKEY right after SCTP_CMD_PEER_INIT (bsc#1258293).
  • CVE-2026-23139: netfilter: nf_conncount: update last_gc only when GC has been performed (bsc#1258304).
  • CVE-2026-23141: btrfs: send: check for inline extents in range_is_hole_in_parent() (bsc#1258377).
  • CVE-2026-23154: net: fix segmentation of forwarding fraglist GRO (bsc#1258286).
  • CVE-2026-23166: ice: Fix NULL pointer dereference in ice_vsi_set_napi_queues (bsc#1258272).
  • CVE-2026-23169: mptcp: fix race in mptcp_pm_nl_flush_addrs_doit() (bsc#1258389).
  • CVE-2026-23171: net: bonding: update the slave array for broadcast mode (bsc#1258349).
  • CVE-2026-23173: net/mlx5e: TC, delete flows only for existing peers (bsc#1258520).
  • CVE-2026-23179: nvmet-tcp: fixup hang in nvmet_tcp_listen_data_ready() (bsc#1258394).
  • CVE-2026-23191: ALSA: aloop: Fix racy access at PCM trigger (bsc#1258395).
  • CVE-2026-23198: KVM: Don't clobber irqfd routing type when deassigning irqfd (bsc#1258321).
  • CVE-2026-23204: net/sched: cls_u32: use skb_header_pointer_careful() (bsc#1258340).
  • CVE-2026-23208: ALSA: usb-audio: Prevent excessive number of frames (bsc#1258468).
  • CVE-2026-23209: macvlan: fix error recovery in macvlan_common_newlink() (bsc#1258518).
  • CVE-2026-23210: ice: Fix PTP NULL pointer dereference during VSI rebuild (bsc#1258517).
  • CVE-2026-23213: drm/amd/pm: Disable MMIO access during SMU Mode 1 reset (bsc#1258465).
  • CVE-2026-23214: btrfs: reject new transactions if the fs is fully read-only (bsc#1258464).
  • CVE-2026-23268: apparmor: fix unprivileged local user can do privileged policy management
  • CVE-2026-23269: apparmor: validate DFA start states are in bounds in unpack_pdb

The following non-security bugs were fixed:

  • ACPI: CPPC: Fix remaining for_each_possible_cpu() to use online CPUs (git-fixes).
  • ACPI: OSL: fix __iomem type on return from acpi_os_map_generic_address() (git-fixes).
  • ACPI: PM: Add unused power resource quirk for THUNDEROBOT ZERO (git-fixes).
  • ACPI: processor: Fix NULL-pointer dereference in acpi_processor_errata_piix4() (stable-fixes).
  • ACPICA: Abort AML bytecode execution when executing AML_FATAL_OP (stable-fixes).
  • ACPICA: Fix NULL pointer dereference in acpi_ev_address_space_dispatch() (git-fixes).
  • ALSA: hda/conexant: Add headset mic fix for MECHREVO Wujie 15X Pro (stable-fixes).
  • ALSA: hda/realtek - fixed speaker no sound (stable-fixes).
  • ALSA: hda/realtek: Add quirk for Inspur S14-G1 (stable-fixes).
  • ALSA: hda/realtek: Fix headset mic for TongFang X6AR55xU (stable-fixes).
  • ALSA: hda/realtek: Really fix headset mic for TongFang X6AR55xU (git-fixes).
  • ALSA: hda/realtek: add HP Laptop 15s-eq1xxx mute LED quirk (stable-fixes).
  • ALSA: hda/realtek: fix right sounds and mute/micmute LEDs for HP machine (stable-fixes).
  • ALSA: usb-audio: Add iface reset and delay quirk for AB13X USB Audio (stable-fixes).
  • ALSA: usb-audio: Add sanity check for OOB writes at silencing (stable-fixes).
  • ALSA: usb-audio: Avoid implicit feedback mode on DIYINHK USB Audio 2.0 (stable-fixes).
  • ALSA: usb-audio: Cap the packet size pre-calculations (git-fixes).
  • ALSA: usb-audio: Check max frame size for implicit feedback mode, too (stable-fixes).
  • ALSA: usb-audio: Remove VALIDATE_RATES quirk for Focusrite devices (git-fixes).
  • ALSA: usb-audio: Update the number of packets properly at receiving (stable-fixes).
  • ALSA: usb-audio: Use correct version for UAC3 header validation (git-fixes).
  • ALSA: usb-audio: Use inclusive terms (git-fixes).
  • ALSA: usb-audio: fix broken logic in snd_audigy2nx_led_update() (git-fixes).
  • ALSA: vmaster: Relax __free() variable declarations (git-fixes).
  • APEI/GHES: ensure that won't go past CPER allocated record (stable-fixes).
  • ASoC: Intel: sof_es8336: Add DMI quirk for Huawei BOD-WXX9 (stable-fixes).
  • ASoC: SOF: ipc4-control: If there is no data do not send bytes update (git-fixes).
  • ASoC: SOF: ipc4-control: Keep the payload size up to date (git-fixes).
  • ASoC: SOF: ipc4-control: Use the correct size for scontrol->ipc_control_data (git-fixes).
  • ASoC: SOF: ipc4-topology: Correct the allocation size for bytes controls (git-fixes).
  • ASoC: amd: drop unused Kconfig symbols (git-fixes).
  • ASoC: amd: fix memory leak in acp3x pdm dma ops (git-fixes).
  • ASoC: amd: yc: Add ASUS ExpertBook PM1503CDA to quirks list (stable-fixes).
  • ASoC: amd: yc: Add DMI quirk for ASUS Vivobook Pro 15X M6501RR (stable-fixes).
  • ASoC: amd: yc: Add DMI quirk for Acer TravelMate P216-41-TCO (stable-fixes).
  • ASoC: amd: yc: Add quirk for HP 200 G2a 16 (stable-fixes).
  • ASoC: amd: yc: Fix microphone on ASUS M6500RE (stable-fixes).
  • ASoC: codecs: max98390: Check return value of devm_gpiod_get_optional() in max98390_i2c_probe() (stable-fixes).
  • ASoC: cs35l45: Corrects ASP_TX5 DAPM widget channel (stable-fixes).
  • ASoC: cs42l43: Correct handling of 3-pole jack load detection (stable-fixes).
  • ASoC: davinci-evm: Fix reference leak in davinci_evm_probe (stable-fixes).
  • ASoC: nau8821: Avoid unnecessary blocking in IRQ handler (stable-fixes).
  • ASoC: nau8821: Cancel delayed work on component remove (git-fixes).
  • ASoC: nau8821: Cancel pending work before suspend (git-fixes).
  • ASoC: nau8821: Consistently clear interrupts before unmasking (git-fixes).
  • ASoC: nau8821: Fixup nau8821_enable_jack_detect() (git-fixes).
  • ASoC: pxa: drop unused Kconfig symbol (git-fixes).
  • ASoC: rockchip: i2s-tdm: Use param rate if not provided by set_sysclk (git-fixes).
  • ASoC: sunxi: sun50i-dmic: Add missing check for devm_regmap_init_mmio (stable-fixes).
  • ASoC: tlv320adcx140: Propagate error codes during probe (stable-fixes).
  • ASoC: wm8962: Add WM8962_ADC_MONOMIX to '3D Coefficients' mask (stable-fixes).
  • ASoC: wm8962: Do not report a microphone if it's shorted to ground on plug (stable-fixes).
  • Add bugnumber to existing mana and mana_ib changes (bsc#1251135 bsc#1251971).
  • Add bugnumber to existing mana change (bsc#1251971).
  • Add bugnumber to existing mana changes (bsc#1245728 bsc#1251971 bsc#1252266 bsc#1257466)
  • Add bugnumber to existing mana changes (bsc#1259558 bsc#1259580).
  • Bluetooth: L2CAP: Fix invalid response to L2CAP_ECRED_RECONF_REQ (git-fixes).
  • Bluetooth: L2CAP: Fix missing key size check for L2CAP_LE_CONN_REQ (git-fixes).
  • Bluetooth: L2CAP: Fix not checking output MTU is acceptable on L2CAP_ECRED_CONN_REQ (git-fixes).
  • Bluetooth: L2CAP: Fix response to L2CAP_ECRED_CONN_REQ (git-fixes).
  • Bluetooth: L2CAP: Fix result of L2CAP_ECRED_CONN_RSP when MTU is too short (git-fixes).
  • Bluetooth: btintel_pcie: Use IRQF_ONESHOT and default primary handler (git-fixes).
  • Bluetooth: btusb: Add USB ID 7392:e611 for Edimax EW-7611UXB (stable-fixes).
  • Bluetooth: btusb: Add device ID for Realtek RTL8761BU (stable-fixes).
  • Bluetooth: btusb: Add new VID/PID for RTL8852CE (stable-fixes).
  • Bluetooth: hci_conn: Set link_policy on incoming ACL connections (stable-fixes).
  • Bluetooth: hci_conn: use mod_delayed_work for active mode timeout (stable-fixes).
  • Bluetooth: hci_qca: Cleanup on all setup failures (git-fixes).
  • Documentation: PCI: endpoint: Fix ntb/vntb copy & paste errors (git-fixes).
  • Documentation: mailbox: mbox_chan_ops.flush() is optional (git-fixes).
  • Drivers: hv: Allocate interrupt and monitor pages aligned to system page boundary (git-fixes).
  • Drivers: hv: Always do Hyper-V panic notification in hv_kmsg_dump() (git-fixes).
  • Drivers: hv: Fix bad pointer dereference in hv_get_partition_id (git-fixes).
  • Drivers: hv: Fix the check for HYPERVISOR_CALLBACK_VECTOR (git-fixes).
  • Drivers: hv: Fix warnings for missing export.h header inclusion (git-fixes).
  • Drivers: hv: Resolve ambiguity in hypervisor version log (git-fixes).
  • Drivers: hv: Use kmalloc_array() instead of kmalloc() (git-fixes).
  • Drivers: hv: Use kzalloc for panic page allocation (git-fixes).
  • Drivers: hv: fix missing kernel-doc description for 'size' in request_arr_init() (git-fixes).
  • Drivers: hv: remove stale comment (git-fixes).
  • Drivers: hv: use kmalloc_array() instead of kmalloc() (git-fixes).
  • Drivers: hv: util: Cosmetic changes for hv_utils_transport.c (git-fixes).
  • Drivers: hv: vmbus: Add comments about races with 'channels' sysfs dir (git-fixes).
  • Drivers: hv: vmbus: Clean up sscanf format specifier in target_cpu_store() (git-fixes).
  • Drivers: hv: vmbus: Fix sysfs output format for ring buffer index (git-fixes).
  • Drivers: hv: vmbus: Fix typos in vmbus_drv.c (git-fixes).
  • Drivers: hv: vmbus: Get the IRQ number from DeviceTree (git-fixes).
  • Drivers: hv: vmbus: Introduce hv_get_vmbus_root_device() (git-fixes).
  • HID: Apply quirk HID_QUIRK_ALWAYS_POLL to Edifier QR30 (2d99:a101) (stable-fixes).
  • HID: apple: Add 'SONiX KN85 Keyboard' to the list of non-apple keyboards (stable-fixes).
  • HID: elecom: Add support for ELECOM HUGE Plus M-HT1MRBK (stable-fixes).
  • HID: hid-pl: handle probe errors (git-fixes).
  • HID: i2c-hid: fix potential buffer overflow in i2c_hid_get_report() (stable-fixes).
  • HID: intel-ish-hid: Reset enum_devices_done before enumeration (stable-fixes).
  • HID: intel-ish-hid: Update ishtp bus match to support device ID table (stable-fixes).
  • HID: intel-ish-hid: fix NULL-ptr-deref in ishtp_bus_remove_all_clients (git-fixes).
  • HID: logitech-hidpp: Check maxfield in hidpp_get_report_length() (stable-fixes).
  • HID: magicmouse: Do not crash on missing msc->input (stable-fixes).
  • HID: multitouch: add MT_QUIRK_STICKY_FINGERS to MT_CLS_VTL (stable-fixes).
  • HID: multitouch: add eGalaxTouch EXC3188 support (stable-fixes).
  • HID: playstation: Add missing check for input_ff_create_memless (git-fixes).
  • HID: playstation: Center initial joystick axes to prevent spurious events (stable-fixes).
  • HID: prodikeys: Check presence of pm->input_ep82 (stable-fixes).
  • HID: quirks: Add another Chicony HP 5MP Cameras to hid_ignore_list (stable-fixes).
  • Input: stmfts - correct wording for the warning message (git-fixes).
  • Input: stmfts - make comments correct (git-fixes).
  • KABi: fix 'dm-snapshot: fix 'scheduling while atomic' on real-time kernels' (git-fixes).
  • KVM: nSVM: Clear exit_code_hi in VMCB when synthesizing nested VM-Exits (git-fixes).
  • KVM: nSVM: Set exit_code_hi to -1 when synthesizing SVM_EXIT_ERR (failed VMRUN) (git-fixes).
  • KVM: x86: Do not clear async #PF queue when CR0.PG is disabled (e.g. on #SMI) (git-fixes).
  • KVM: x86: Explicitly set new periodic hrtimer expiration in apic_timer_fn() (git-fixes).
  • KVM: x86: WARN if hrtimer callback for periodic APIC timer fires with period=0 (git-fixes).
  • Move upstreamed mm and SCSI patches into sorted section
  • NTB: ntb_transport: Fix too small buffer for debugfs_name (git-fixes).
  • PCI/ACPI: Restrict program_hpx_type2() to AER bits (git-fixes).
  • PCI/IOV: Fix race between SR-IOV enable/disable and hotplug (git-fixes).
  • PCI/MSI: Unmap MSI-X region on error (git-fixes).
  • PCI/MSI: Unmap MSI-X region on error (stable-fixes).
  • PCI/P2PDMA: Release per-CPU pgmap ref when vm_insert_page() fails (git-fixes).
  • PCI/PM: Avoid redundant delays on D3hot->D3cold (git-fixes).
  • PCI/portdrv: Fix potential resource leak (git-fixes).
  • PCI: Add ACS quirk for Pericom PI7C9X2G404 switches [12d8:b404] (git-fixes).
  • PCI: Add ACS quirk for Qualcomm Hamoa & Glymur (git-fixes).
  • PCI: Add ACS quirk for Qualcomm Hamoa & Glymur (stable-fixes).
  • PCI: Add PCIE_MSG_CODE_ASSERT_INTx message macros (stable-fixes).
  • PCI: Add defines for bridge window indexing (stable-fixes).
  • PCI: Correct PCI_CAP_EXP_ENDPOINT_SIZEOF_V2 value (git-fixes).
  • PCI: Do not attempt to set ExtTag for VFs (git-fixes).
  • PCI: Enable ACS after configuring IOMMU for OF platforms (git-fixes).
  • PCI: Enable ACS after configuring IOMMU for OF platforms (stable-fixes).
  • PCI: Fix pci_slot_lock () device locking (git-fixes).
  • PCI: Fix pci_slot_lock () device locking (stable-fixes).
  • PCI: Fix pci_slot_trylock() error handling (git-fixes).
  • PCI: Initialize RCB from pci_configure_device() (git-fixes).
  • PCI: Log bridge info when first enumerating bridge (stable-fixes).
  • PCI: Log bridge windows conditionally (stable-fixes).
  • PCI: Mark 3ware-9650SA Root Port Extended Tags as broken (git-fixes).
  • PCI: Mark ASM1164 SATA controller to avoid bus reset (git-fixes).
  • PCI: Mark ASM1164 SATA controller to avoid bus reset (stable-fixes).
  • PCI: Mark Nvidia GB10 to avoid bus reset (git-fixes).
  • PCI: Mark Nvidia GB10 to avoid bus reset (stable-fixes).
  • PCI: Move pci_read_bridge_windows() below individual window accessors (stable-fixes).
  • PCI: Supply bridge device, not secondary bus, to read window details (stable-fixes).
  • PCI: dw-rockchip: Disable BAR 0 and BAR 1 for Root Port (git-fixes).
  • PCI: dw-rockchip: Disable BAR 0 and BAR 1 for Root Port (stable-fixes).
  • PCI: endpoint: Fix swapped parameters in pci_{primary/secondary}_epc_epf_unlink() functions (git-fixes).
  • PCI: hv: Correct a comment (git-fixes).
  • PCI: hv: Fix warnings for missing export.h header inclusion (git-fixes).
  • PCI: hv: Remove unnecessary flex array in struct pci_packet (git-fixes).
  • PCI: hv: Remove unused field pci_bus in struct hv_pcibus_device (git-fixes).
  • PCI: hv: remove unnecessary module_init/exit functions (git-fixes).
  • PCI: mediatek: Fix IRQ domain leak when MSI allocation fails (git-fixes).
  • PM: sleep: wakeirq: Update outdated documentation comments (git-fixes).
  • PM: sleep: wakeirq: harden dev_pm_clear_wake_irq() against races (git-fixes).
  • PM: wakeup: Handle empty list in wakeup_sources_walk_start() (git-fixes).
  • RDMA/mana_ib: Add device-memory support (git-fixes).
  • RDMA/mana_ib: Take CQ type from the device type (git-fixes).
  • RDMA/rtrs-clt: For conn rejection use actual err number (git-fixes)
  • Revive thinkpad-lmi driver and mark as supported (jsc#PED-15553).
  • USB: serial: option: add Telit FN920C04 RNDIS compositions (stable-fixes).
  • Update 'drm/mgag200: fix mgag200_bmc_stop_scanout()' bug number (bsc#1258153 bsc#1258226)
  • Update 'drm/mgag200: fix mgag200_bmc_stop_scanout()' bug number (bsc#1258153)
  • apparmor: Fix double free of ns_name in aa_replace_profiles() (bsc#1258849).
  • apparmor: fix differential encoding verification (bsc#1258849).
  • apparmor: fix memory leak in verify_header (bsc#1258849).
  • apparmor: fix missing bounds check on DEFAULT table in verify_dfa() (bsc#1258849).
  • apparmor: fix race between freeing data and fs accessing it (bsc#1258849).
  • apparmor: fix race on rawdata dereference (bsc#1258849).
  • apparmor: fix side-effect bug in match_char() macro usage (bsc#1258849).
  • apparmor: fix unprivileged local user can do privileged policy management (bsc#1258849).
  • apparmor: fix: limit the number of levels of policy namespaces (bsc#1258849).
  • apparmor: replace recursive profile removal with iterative approach (bsc#1258849).
  • apparmor: validate DFA start states are in bounds in unpack_pdb (bsc#1258849).
  • arm64: Add support for TSV110 Spectre-BHB mitigation (git-fixes)
  • arm64: Disable branch profiling for all arm64 code (git-fixes)
  • arm64: Set __nocfi on swsusp_arch_resume() (git-fixes)
  • ata: libata: avoid long timeouts on hot-unplugged SATA DAS (stable-fixes).
  • ata: pata_ftide010: Fix some DMA timings (git-fixes).
  • atm: fore200e: fix use-after-free in tasklets during device removal (git-fixes).
  • auxdisplay: arm-charlcd: fix release_mem_region() size (git-fixes).
  • backlight: qcom-wled: Change PM8950 WLED configurations (git-fixes).
  • backlight: qcom-wled: Support ovp values for PMI8994 (git-fixes).
  • batman-adv: Avoid double-rtnl_lock ELP metric worker (git-fixes).
  • block,bfq: fix aux stat accumulation destination (git-fixes).
  • bonding: only set speed/duplex to unknown, if getting speed failed (bsc#1253691).
  • bpf: selftests: Move xfrm tunnel test to test_progs (bsc#1258860).
  • bpf: selftests: test_tunnel: Setup fresh topology for each subtest (bsc#1258860).
  • bpf: selftests: test_tunnel: Use vmlinux.h declarations (bsc#1258860).
  • bpf: verifier improvement in 32bit shift sign extension pattern (git-fixes).
  • bpf: xfrm: Add bpf_xdp_get_xfrm_state() kfunc (bsc#1258860).
  • bpf: xfrm: Add selftest for bpf_xdp_get_xfrm_state() (bsc#1258860).
  • btrfs: scrub: always update btrfs_scrub_progress::last_physical (git-fixes).
  • bus: fsl-mc: Replace snprintf and sprintf with sysfs_emit in sysfs show functions (stable-fixes).
  • bus: fsl-mc: fix an error handling in fsl_mc_device_add() (git-fixes).
  • bus: fsl-mc: fix use-after-free in driver_override_show() (git-fixes).
  • can: bcm: fix locking for bcm_op runtime updates (git-fixes).
  • can: ems_usb: ems_usb_read_bulk_callback(): check the proper length of a message (git-fixes).
  • can: hi311x: hi3110_open(): add check for hi3110_power_enable() return value (git-fixes).
  • can: mcp251x: fix deadlock in error path of mcp251x_open (git-fixes).
  • can: ucan: Fix infinite loop from zero-length messages (git-fixes).
  • can: usb: etas_es58x: correctly anchor the urb in the read bulk callback (git-fixes).
  • cgroup: Fix incorrect WARN_ON_ONCE() in css_release_work_fn() (bsc#1256564 bsc#1259130).
  • cgroup: Show # of subsystem CSSes in cgroup.stat (bsc#1256564 bsc#1259130).
  • char: tpm: cr50: Remove IRQF_ONESHOT (git-fixes).
  • char: tpm: cr50: Remove IRQF_ONESHOT (stable-fixes).
  • cifs: add xid to query server interface call (git-fixes).
  • clk: clk-apple-nco: Add 'apple,t8103-nco' compatible (git-fixes).
  • clk: mediatek: Fix error handling in runtime PM setup (git-fixes).
  • clk: meson: g12a: Limit the HDMI PLL OD to /4 (git-fixes).
  • clk: meson: gxbb: Limit the HDMI PLL OD to /4 on GXL/GXM SoCs (git-fixes).
  • clk: mvebu: cp110 add CLK_IGNORE_UNUSED to pcie_x10, pcie_x11 & (git-fixes)
  • clk: qcom: dispcc-sdm845: Enable parents for pixel clocks (git-fixes).
  • clk: qcom: gcc-msm8917: Remove ALWAYS_ON flag from cpp_gdsc (git-fixes).
  • clk: qcom: gcc-msm8953: Remove ALWAYS_ON flag from cpp_gdsc (git-fixes).
  • clk: qcom: gfx3d: add parent to parent request map (git-fixes).
  • clk: qcom: rcg2: compute 2d using duty fraction directly (git-fixes).
  • clk: renesas: rzg2l: Fix intin variable size (git-fixes).
  • clk: renesas: rzg2l: Select correct div round macro (git-fixes).
  • clk: tegra: tegra124-emc: Fix potential memory leak in tegra124_clk_register_emc() (git-fixes).
  • clk: tegra: tegra124-emc: fix device leak on set_rate() (git-fixes).
  • clocksource: Print durations for sync check unconditionally (bsc#1241345).
  • clocksource: Reduce watchdog readout delay limit to prevent false positives (bsc#1241345).
  • clocksource: hyper-v: Fix warnings for missing export.h header inclusion (git-fixes).
  • cpu: export lockdep_assert_cpus_held() (git-fixes).
  • cpufreq/amd-pstate: Add missing NULL ptr check in amd_pstate_update (bsc#1247180).
  • cpufreq/amd-pstate: Add the missing cpufreq_cpu_put() (bsc#1247180).
  • cpufreq/amd-pstate: Fix the clamping of perf values (bsc#1247180).
  • cpufreq/amd-pstate: Modularize perf<->freq conversion (bsc#1247180).
  • cpufreq/amd-pstate: Refactor max frequency calculation (bsc#1247180).
  • cpufreq/amd-pstate: fix setting policy current frequency value (bsc#1247180).
  • cpufreq/amd-pstate: store all values in cpudata struct in khz (bsc#1247180).
  • cpufreq: amd-pstate: Unify computation of {max,min,nominal,lowest_nonlinear}_freq (bsc#1247180).
  • crypto: cavium - fix dma_free_coherent() size (git-fixes).
  • crypto: ccp - Add an S4 restore flow (git-fixes).
  • crypto: hisilicon/sec2 - support skcipher/aead fallback for hardware queue unavailable (git-fixes).
  • crypto: hisilicon/trng - support tfms sharing the device (git-fixes).
  • crypto: hisilicon/zip - adjust the way to obtain the req in the callback function (git-fixes).
  • crypto: iaa - Fix out-of-bounds index in find_empty_iaa_compression_mode (git-fixes).
  • crypto: octeontx - Fix length check to avoid truncation in ucode_load_store (git-fixes).
  • crypto: octeontx - fix dma_free_coherent() size (git-fixes).
  • crypto: omap - Allocate OMAP_CRYPTO_FORCE_COPY scatterlists correctly (git-fixes).
  • crypto: qat - fix parameter order used in ICP_QAT_FW_COMN_FLAGS_BUILD (git-fixes).
  • crypto: qat - fix warning on adf_pfvf_pf_proto.c (git-fixes).
  • crypto: virtio - Add spinlock protection with virtqueue notification (git-fixes).
  • crypto: virtio - Remove duplicated virtqueue_kick in virtio_crypto_skcipher_crypt_req (git-fixes).
  • device property: Allow secondary lookup in fwnode_get_next_child_node() (git-fixes).
  • dm mpath: make pg_init_delay_msecs settable (git-fixes).
  • dm-bufio: align write boundary on physical block size (git-fixes).
  • dm-ebs: Mark full buffer dirty even on partial write (git-fixes).
  • dm-snapshot: fix 'scheduling while atomic' on real-time kernels (git-fixes).
  • dm: clear cloned request bio pointer when last clone bio completes (git-fixes).
  • dm: remove fake timeout to avoid leak request (git-fixes).
  • dma: dma-axi-dmac: fix SW cyclic transfers (git-fixes).
  • dmaengine: mediatek: uart-apdma: Fix above 4G addressing TX/RX (git-fixes).
  • dmaengine: sun6i: Choose appropriate burst length under maxburst (stable-fixes).
  • docs: fix WARNING document not included in any toctree (stable-fixes).
  • drivers/hv: add CPU offlining support (git-fixes).
  • drivers/hv: introduce vmbus_channel_set_cpu() (git-fixes).
  • drivers: iio: mpu3050: use dev_err_probe for regulator request (git-fixes).
  • drm/amd/display: Add USB-C DP Alt Mode lane limitation in DCN32 (stable-fixes).
  • drm/amd/display: Add signal type check for dcn401 get_phyd32clk_src (stable-fixes).
  • drm/amd/display: Avoid updating surface with the same surface under MPO (stable-fixes).
  • drm/amd/display: Disable FEC when powering down encoders (stable-fixes).
  • drm/amd/display: Fix GFX12 family constant checks (stable-fixes).
  • drm/amd/display: Fix dsc eDP issue (stable-fixes).
  • drm/amd/display: Fix out-of-bounds stream encoder index v3 (git-fixes).
  • drm/amd/display: Fix system resume lag issue (stable-fixes).
  • drm/amd/display: Fix writeback on DCN 3.2+ (stable-fixes).
  • drm/amd/display: Increase DCN35 SR enter/exit latency (stable-fixes).
  • drm/amd/display: Reject cursor plane on DCE when scaled differently than primary (git-fixes).
  • drm/amd/display: Remove conditional for shaper 3DLUT power-on (stable-fixes).
  • drm/amd/display: Use same max plane scaling limits for all 64 bpp formats (git-fixes).
  • drm/amd/display: avoid dig reg access timeout on usb4 link training fail (stable-fixes).
  • drm/amd/display: bypass post csc for additional color spaces in dal (stable-fixes).
  • drm/amd/display: extend delta clamping logic to CM3 LUT helper (stable-fixes).
  • drm/amd/display: fix wrong color value mapping on MCM shaper LUT (git-fixes).
  • drm/amd/display: only power down dig on phy endpoints (stable-fixes).
  • drm/amd/display: remove assert around dpp_base replacement (stable-fixes).
  • drm/amd/pm: Disable MMIO access during SMU Mode 1 reset (stable-fixes).
  • drm/amd: Disable MES LR compute W/A (git-fixes).
  • drm/amd: Drop 'amdgpu kernel modesetting enabled' message (git-fixes).
  • drm/amd: Fix hang on amdgpu unload by using pci_dev_is_disconnected() (git-fixes).
  • drm/amdgpu/gfx10: fix wptr reset in KGQ init (stable-fixes).
  • drm/amdgpu/gfx11: fix wptr reset in KGQ init (stable-fixes).
  • drm/amdgpu/gfx12: fix wptr reset in KGQ init (stable-fixes).
  • drm/amdgpu/soc21: fix xclk for APUs (stable-fixes).
  • drm/amdgpu: Add HAINAN clock adjustment (stable-fixes).
  • drm/amdgpu: Adjust usleep_range in fence wait (stable-fixes).
  • drm/amdgpu: Fix locking bugs in error paths (git-fixes).
  • drm/amdgpu: Fix memory leak in amdgpu_acpi_enumerate_xcc() (git-fixes).
  • drm/amdgpu: Fix memory leak in amdgpu_ras_init() (git-fixes).
  • drm/amdgpu: Replace kzalloc + copy_from_user with memdup_user (stable-fixes).
  • drm/amdgpu: Skip loading SDMA_RS64 in VF (stable-fixes).
  • drm/amdgpu: Unlock a mutex before destroying it (git-fixes).
  • drm/amdgpu: Use kvfree instead of kfree in amdgpu_gmc_get_nps_memranges() (git-fixes).
  • drm/amdgpu: add support for HDP IP version 6.1.1 (stable-fixes).
  • drm/amdgpu: avoid a warning in timedout job handler (stable-fixes).
  • drm/amdgpu: ensure no_hw_access is visible before MMIO (git-fixes).
  • drm/amdgpu: fix NULL pointer issue buffer funcs (stable-fixes).
  • drm/amdgpu: fix sync handling in amdgpu_dma_buf_move_notify (git-fixes).
  • drm/amdgpu: keep vga memory on MacBooks with switchable graphics (stable-fixes).
  • drm/amdgpu: remove invalid usage of sched.ready (stable-fixes).
  • drm/amdgpu: stop unmapping MQD for kernel queues v3 (stable-fixes).
  • drm/amdkfd: Fix GART PTE for non-4K pagesize in svm_migrate_gart_map() (stable-fixes).
  • drm/amdkfd: Fix out-of-bounds write in kfd_event_page_set() (stable-fixes).
  • drm/amdkfd: Fix signal_eviction_fence() bool return value (git-fixes).
  • drm/amdkfd: Fix watch_id bounds checking in debug address watch v2 (git-fixes).
  • drm/amdkfd: Handle GPU reset and drain retry fault race (stable-fixes).
  • drm/amdkfd: Relax size checking during queue buffer get (stable-fixes).
  • drm/amdkfd: fix debug watchpoints for logical devices (stable-fixes).
  • drm/atmel-hlcdc: do not reject the commit if the src rect has fractional parts (stable-fixes).
  • drm/atmel-hlcdc: fix memory leak from the atomic_destroy_state callback (stable-fixes).
  • drm/atmel-hlcdc: fix use-after-free of drm_crtc_commit after release (stable-fixes).
  • drm/bridge: anx7625: Fix invalid EDID size (git-fixes).
  • drm/bridge: samsung-dsim: Fix memory leak in error path (git-fixes).
  • drm/bridge: ti-sn65dsi86: Enable HPD polling if IRQ is not used (git-fixes).
  • drm/buddy: Prevent BUG_ON by validating rounded allocation (git-fixes).
  • drm/display/dp_mst: Add protection against 0 vcpi (stable-fixes).
  • drm/i915/acpi: free _DSM package when no connectors (git-fixes).
  • drm/i915/display: Add quirk to skip retraining of dp link (bsc#1253129).
  • drm/i915/wakeref: clean up INTEL_WAKEREF_PUT_* flag macros (stable-fixes).
  • drm/logicvc: Fix device node reference leak in logicvc_drm_config_parse() (git-fixes).
  • drm/mgag200: fix mgag200_bmc_stop_scanout() (git-fixes).
  • drm/msm/a2xx: fix pixel shader start on A225 (git-fixes).
  • drm/msm/disp: set num_planes to 1 for interleaved YUV formats (git-fixes).
  • drm/msm/dpu: Set vsync source irrespective of mdp top support (git-fixes).
  • drm/msm/dpu: drop intr_start from DPU 3.x catalog files (git-fixes).
  • drm/msm/dpu: fix CMD panels on DPU 1.x - 3.x (git-fixes).
  • drm/msm/dpu: fix WD timer handling on DPU 8.x (git-fixes).
  • drm/panel: Fix a possible null-pointer dereference in jdi_panel_dsi_remove() (stable-fixes).
  • drm/panel: sw43408: Remove manual invocation of unprepare at remove (git-fixes).
  • drm/panthor: Evict groups before VM termination (git-fixes).
  • drm/panthor: Fix immediate ticking on a disabled tick (git-fixes).
  • drm/panthor: Fix the full_tick check (git-fixes).
  • drm/panthor: Fix the group priority rotation logic (git-fixes).
  • drm/panthor: Fix the logic that decides when to stop ticking (git-fixes).
  • drm/panthor: Make sure we resume the tick when new jobs are submitted (git-fixes).
  • drm/panthor: Recover from panthor_gpu_flush_caches() failures (git-fixes).
  • drm/radeon: Add HAINAN clock adjustment (stable-fixes).
  • drm/radeon: delete radeon_fence_process in is_signaled, no deadlock (stable-fixes).
  • drm/sched: Fix kernel-doc warning for drm_sched_job_done() (git-fixes).
  • drm/solomon: Fix page start when updating rectangle in page addressing mode (git-fixes).
  • drm/tegra: dsi: fix device leak on probe (git-fixes).
  • drm/tegra: hdmi: sor: Fix error: variable ‘j’ set but not used (stable-fixes).
  • drm/tests: shmem: Swap names of export tests (git-fixes).
  • drm/v3d: Set DMA segment size to avoid debug warnings (stable-fixes).
  • drm/vmwgfx: Fix invalid kref_put callback in vmw_bo_dirty_release (git-fixes).
  • drm/vmwgfx: Return the correct value in vmw_translate_ptr functions (git-fixes).
  • drm/xe/mmio: Avoid double-adjust in 64-bit reads (git-fixes).
  • drm/xe/pm: Also avoid missing outer rpm warning on system suspend (stable-fixes).
  • drm/xe/pm: Disable D3Cold for BMG only on specific platforms (git-fixes).
  • drm/xe/ptl: Apply Wa_13011645652 (stable-fixes).
  • drm/xe/query: Fix topology query pointer advance (git-fixes).
  • drm/xe/sync: Cleanup partially initialized sync on parse failure (git-fixes).
  • drm/xe/xe2_hpg: Add set of workarounds (stable-fixes).
  • drm/xe/xe2_hpg: Fix handling of Wa_14019988906 & Wa_14019877138 (git-fixes).
  • drm/xe: Add xe_tile backpointer to xe_mmio (stable-fixes).
  • drm/xe: Adjust mmio code to pass VF substructure to SRIOV code (stable-fixes).
  • drm/xe: Clarify size of MMIO region (stable-fixes).
  • drm/xe: Create dedicated xe_mmio structure (stable-fixes).
  • drm/xe: Defer gt->mmio initialization until after multi-tile setup (git-fixes).
  • drm/xe: Move GSI offset adjustment fields into 'struct xe_mmio' (stable-fixes).
  • drm/xe: Move forcewake to 'gt.pm' substructure (stable-fixes).
  • drm/xe: Only toggle scheduling in TDR if GuC is running (stable-fixes).
  • drm/xe: Populate GT's mmio iomap from tile during init (stable-fixes).
  • drm/xe: Switch MMIO interface to take xe_mmio instead of xe_gt (stable-fixes).
  • drm/xe: Switch mmio_ext to use 'struct xe_mmio' (stable-fixes).
  • drm/xe: Unregister drm device on probe error (git-fixes).
  • drm: Account property blob allocations to memcg (stable-fixes).
  • efi: Fix reservation of unaccepted memory table (git-fixes).
  • efivarfs: fix error propagation in efivar_entry_get() (git-fixes).
  • ext4: fix iloc.bh leak in ext4_xattr_inode_update_ref (git-fixes).
  • fbcon: check return value of con2fb_acquire_newinfo() (git-fixes).
  • fbdev: au1200fb: Fix a memory leak in au1200fb_drv_probe() (git-fixes).
  • fbdev: ffb: fix corrupted video output on Sun FFB1 (stable-fixes).
  • fbdev: of: display_timing: fix refcount leak in of_get_display_timings() (git-fixes).
  • fbdev: rivafb: fix divide error in nv3_arb() (git-fixes).
  • fbdev: smscufx: properly copy ioctl memory to kernelspace (stable-fixes).
  • fbdev: vt8500lcdfb: fix missing dma_free_coherent() (git-fixes).
  • fix it87_wdt early reboot by reporting running timer (stable-fixes).
  • fpga: dfl: use subsys_initcall to allow built-in drivers to be added (git-fixes).
  • fpga: of-fpga-region: Fail if any bridge is missing (stable-fixes).
  • genirq: Set IRQF_COND_ONESHOT in devm_request_irq() (git-fixes).
  • gpio: aspeed-sgpio: Change the macro to support deferred probe (stable-fixes).
  • gpio: pca953x: mask interrupts in irq shutdown (stable-fixes).
  • gpio: sprd: Change sprd_gpio lock to raw_spin_lock (stable-fixes).
  • gpu/panel-edp: add AUO panel entry for B140HAN06.4 (stable-fixes).
  • hwmon: (f71882fg) Add F81968 support (stable-fixes).
  • hwmon: (it87) Check the it87_lock() return value (git-fixes).
  • hwmon: (max16065) Use READ/WRITE_ONCE to avoid compiler optimization induced race (git-fixes).
  • hwmon: (nct6775) Add ASUS Pro WS WRX90E-SAGE SE (stable-fixes).
  • hwmon: (occ) Mark occ_init_attribute() as __printf (git-fixes).
  • hwmon: (pmbus/q54sj108a2) fix stack overflow in debugfs read (git-fixes).
  • hyperv: Convert hypercall statuses to linux error codes (git-fixes).
  • hyperv: Move arch/x86/hyperv/hv_proc.c to drivers/hv (git-fixes).
  • hyperv: Move hv_current_partition_id to arch-generic code (git-fixes).
  • i3c: Move device name assignment after i3c_bus_init (git-fixes).
  • i3c: dw: Initialize spinlock to avoid upsetting lockdep (git-fixes).
  • i3c: master: Update hot-join flag only on success (git-fixes).
  • i3c: master: svc: Initialize 'dev' to NULL in svc_i3c_master_ibi_isr() (stable-fixes).
  • iio: Use IRQF_NO_THREAD (stable-fixes).
  • iio: gyro: itg3200: Fix unchecked return value in read_raw (git-fixes).
  • iio: magnetometer: Remove IRQF_ONESHOT (stable-fixes).
  • iio: sca3000: Fix a resource leak in sca3000_probe() (git-fixes).
  • iomap: account for unaligned end offsets when truncating read range (git-fixes).
  • ipmi: ipmb: initialise event handler read bytes (git-fixes).
  • kabi: cgroup.stat fixup (bsc#1256564 bsc#1259130).
  • ktls, sockmap: Fix missing uncharge operation (bsc#1252008).
  • landlock: Optimize file path walks and prepare for audit support (bsc#1255698).
  • leds: qcom-lpg: Check the return value of regmap_bulk_write() (git-fixes).
  • media: adv7180: fix frame interval in progressive mode (stable-fixes).
  • media: amphion: Clear last_buffer_dequeued flag for DEC_CMD_START (stable-fixes).
  • media: amphion: Drop min_queued_buffers assignment (git-fixes).
  • media: ccs: Accommodate C-PHY into the calculation (git-fixes).
  • media: ccs: Avoid possible division by zero (git-fixes).
  • media: ccs: Fix setting initial sub-device state (git-fixes).
  • media: chips-media: wave5: Fix memory leak on codec_info allocation failure (git-fixes).
  • media: cx23885: Add missing unmap in snd_cx23885_hw_params() (git-fixes).
  • media: cx25821: Add missing unmap in snd_cx25821_hw_params() (git-fixes).
  • media: cx25821: Fix a resource leak in cx25821_dev_setup() (stable-fixes).
  • media: cx88: Add missing unmap in snd_cx88_hw_params() (git-fixes).
  • media: dvb-core: dmxdevfilter must always flush bufs (stable-fixes).
  • media: dvb-core: fix wrong reinitialization of ringbuffer on reopen (git-fixes).
  • media: dvb-net: fix OOB access in ULE extension header tables (git-fixes).
  • media: i2c/tw9903: Fix potential memory leak in tw9903_probe() (git-fixes).
  • media: i2c/tw9906: Fix potential memory leak in tw9906_probe() (git-fixes).
  • media: i2c: ov5647: Correct minimum VBLANK value (git-fixes).
  • media: i2c: ov5647: Correct pixel array offset (git-fixes).
  • media: i2c: ov5647: Fix PIXEL_RATE value for VGA mode (git-fixes).
  • media: i2c: ov5647: Initialize subdev before controls (git-fixes).
  • media: i2c: ov5647: Sensor should report RAW color space (git-fixes).
  • media: i2c: ov5647: use our own mutex for the ctrl lock (git-fixes).
  • media: ipu6: Fix RPM reference leak in probe error paths (git-fixes).
  • media: ipu6: Fix typo and wrong constant in ipu6-mmu.c (git-fixes).
  • media: mtk-mdp: Fix a reference leak bug in mtk_mdp_remove() (git-fixes).
  • media: mtk-mdp: Fix error handling in probe function (git-fixes).
  • media: omap3isp: isp_video_mbus_to_pix/pix_to_mbus fixes (stable-fixes).
  • media: omap3isp: isppreview: always clamp in preview_try_format() (stable-fixes).
  • media: omap3isp: set initial format (stable-fixes).
  • media: pvrusb2: fix URB leak in pvr2_send_request_ex (stable-fixes).
  • media: qcom: camss: vfe: Fix out-of-bounds access in vfe_isr_reg_update() (git-fixes).
  • media: radio-keene: fix memory leak in error path (git-fixes).
  • media: rkisp1: Fix filter mode register configuration (stable-fixes).
  • media: solo6x10: Check for out of bounds chip_id (stable-fixes).
  • media: tegra-video: Fix memory leak in __tegra_channel_try_format() (git-fixes).
  • media: uvcvideo: Fix allocation for small frame sizes (git-fixes).
  • media: v4l2-async: Fix error handling on steps after finding a match (stable-fixes).
  • media: venus: vdec: fix error state assignment for zero bytesused (git-fixes).
  • media: verisilicon: AV1: Fix enable cdef computation (git-fixes).
  • media: verisilicon: AV1: Fix tile info buffer size (git-fixes).
  • media: verisilicon: AV1: Fix tx mode bit setting (git-fixes).
  • media: verisilicon: AV1: Set IDR flag for intra_only frame type (git-fixes).
  • mfd: arizona: Fix regulator resource leak on wm5102_clear_write_sequencer() failure (git-fixes).
  • mfd: core: Add locking around 'mfd_of_node_list' (git-fixes).
  • mfd: tps6105x: Fix kernel-doc warnings relating to the core struct and tps6105x_mode (git-fixes).
  • mfd: wm8350-core: Use IRQF_ONESHOT (git-fixes).
  • misc: bcm_vk: Fix possible null-pointer dereferences in bcm_vk_read() (stable-fixes).
  • misc: eeprom: Fix EWEN/EWDS/ERAL commands for 93xx56 and 93xx66 (stable-fixes).
  • mmc: mmci: Fix device_node reference leak in of_get_dml_pipe_index() (git-fixes).
  • mmc: rtsx_pci_sdmmc: increase power-on settling delay to 5ms (git-fixes).
  • mtd: parsers: Fix memory leak in mtd_parser_tplink_safeloader_parse() (git-fixes).
  • mtd: parsers: ofpart: fix OF node refcount leak in parse_fixed_partitions() (git-fixes).
  • mtd: rawnand: cadence: Fix return type of CDMA send-and-wait helper (git-fixes).
  • mtd: rawnand: pl353: Fix software ECC support (git-fixes).
  • mtd: spinand: Fix kernel doc (git-fixes).
  • myri10ge: avoid uninitialized variable use (stable-fixes).
  • net: mana: Fix double destroy_workqueue on service rescan PCI path (git-fixes).
  • net: mana: Implement ndo_tx_timeout and serialize queue resets per port (bsc#1257472).
  • net: mana: Ring doorbell at 4 CQ wraparounds (git-fixes).
  • net: mana: Support HW link state events (bsc#1253049).
  • net: nfc: nci: Fix parameter validation for packet data (git-fixes).
  • net: nfc: nci: Fix zero-length proprietary notifications (git-fixes).
  • net: usb: catc: enable basic endpoint checking (git-fixes).
  • net: usb: kalmia: validate USB endpoints (git-fixes).
  • net: usb: kaweth: remove TX queue manipulation in kaweth_set_rx_mode (git-fixes).
  • net: usb: kaweth: validate USB endpoints (git-fixes).
  • net: usb: lan78xx: fix TX byte statistics for small packets (git-fixes).
  • net: usb: lan78xx: fix silent drop of packets with checksum errors (git-fixes).
  • net: usb: lan78xx: scan all MDIO addresses on LAN7801 (git-fixes).
  • net: usb: pegasus: enable basic endpoint checking (git-fixes).
  • net: usb: r8152: fix transmit queue timeout (stable-fixes).
  • net: usb: sr9700: remove code to drive nonexistent multicast filter (stable-fixes).
  • net: usb: sr9700: support devices with virtual driver CD (stable-fixes).
  • net: wan/fsl_ucc_hdlc: Fix dma_free_coherent() in uhdlc_memclean() (git-fixes).
  • net: wan: farsync: Fix use-after-free bugs caused by unfinished tasklets (git-fixes).
  • nfc: hci: shdlc: Stop timers and work before freeing context (git-fixes).
  • nfc: nci: clear NCI_DATA_EXCHANGE before calling completion callback (git-fixes).
  • nfc: nci: free skb on nci_transceive early error paths (git-fixes).
  • nfc: nxp-nci: remove interrupt trigger type (stable-fixes).
  • nfc: pn533: properly drop the usb interface reference on disconnect (git-fixes).
  • nfc: rawsock: cancel tx_work before socket teardown (git-fixes).
  • nfsd: check that server is running in unlock_filesystem (bsc#1257279).
  • nfsd: use correct loop termination in nfsd4_revoke_states() (git-fixes).
  • nouveau/dpcd: return EBUSY for aux xfer if the device is asleep (git-fixes).
  • ntb: ntb_hw_switchtec: Fix array-index-out-of-bounds access (stable-fixes).
  • ntb: ntb_hw_switchtec: Fix shift-out-of-bounds for 0 mw lut (stable-fixes).
  • nvme-fc: do not hold rport lock when putting ctrl (git-fixes).
  • nvme-fc: release admin tagset if init fails (git-fixes).
  • nvme-pci: disable secondary temp for Wodposit WPBSNM8 (git-fixes).
  • phy: fsl-imx8mq-usb: disable bind/unbind platform driver feature (stable-fixes).
  • phy: mvebu-cp110-utmi: fix dr_mode property read from dts (stable-fixes).
  • pinctrl: equilibrium: Fix device node reference leak in pinbank_init() (git-fixes).
  • pinctrl: meson: mark the GPIO controller as sleeping (git-fixes).
  • pinctrl: qcom: sm8250-lpass-lpi: Fix i2s2_data_groups definition (git-fixes).
  • pinctrl: single: fix refcount leak in pcs_add_gpio_func() (git-fixes).
  • platform/chrome: cros_ec_lightbar: Fix response size initialization (git-fixes).
  • platform/chrome: cros_typec_switch: Do not touch struct fwnode_handle::dev (git-fixes).
  • platform/x86/amd/pmc: Add quirk for MECHREVO Wujie 15X Pro (stable-fixes).
  • platform/x86: ISST: Add missing write block check (git-fixes).
  • platform/x86: classmate-laptop: Add missing NULL pointer checks (stable-fixes).
  • platform/x86: dell-wmi-sysman: Do not hex dump plaintext password data (git-fixes).
  • platform/x86: hp-bioscfg: Skip empty attribute names (git-fixes).
  • platform/x86: int0002: Remove IRQF_ONESHOT from request_irq() (git-fixes).
  • platform/x86: intel_telemetry: Fix PSS event register mask (git-fixes).
  • platform/x86: intel_telemetry: Fix swapped arrays in PSS output (git-fixes).
  • platform/x86: panasonic-laptop: Fix sysfs group leak in error path (stable-fixes).
  • platform/x86: toshiba_haps: Fix memory leaks in add/remove routines (git-fixes).
  • pmdomain: imx: gpcv2: Fix the imx8mm gpu hang due to wrong adb400 reset (git-fixes).
  • power: reset: nvmem-reboot-mode: respect cell size for nvmem_cell_write (git-fixes).
  • power: supply: ab8500: Fix use-after-free in power_supply_changed() (git-fixes).
  • power: supply: act8945a: Fix use-after-free in power_supply_changed() (git-fixes).
  • power: supply: bq256xx: Fix use-after-free in power_supply_changed() (git-fixes).
  • power: supply: bq25980: Fix use-after-free in power_supply_changed() (git-fixes).
  • power: supply: bq27xxx: fix wrong errno when bus ops are unsupported (git-fixes).
  • power: supply: cpcap-battery: Fix use-after-free in power_supply_changed() (git-fixes).
  • power: supply: goldfish: Fix use-after-free in power_supply_changed() (git-fixes).
  • power: supply: qcom_battmgr: Recognize 'LiP' as lithium-polymer (git-fixes).
  • power: supply: rt9455: Fix use-after-free in power_supply_changed() (git-fixes).
  • power: supply: sbs-battery: Fix use-after-free in power_supply_changed() (git-fixes).
  • power: supply: wm97xx: Fix NULL pointer dereference in power_supply_changed() (git-fixes).
  • powercap: intel_rapl_tpmi: Remove FW_BUG from invalid version check (git-fixes).
  • qmi_wwan: allow max_mtu above hard_mtu to control rx_urb_size (git-fixes).
  • rapidio: replace rio_free_net() with kfree() in rio_scan_alloc_net() (git-fixes).
  • regmap: maple: free entry on mas_store_gfp() failure (stable-fixes).
  • regulator: core: fix locking in regulator_resolve_supply() error path (git-fixes).
  • regulator: core: move supply check earlier in set_machine_constraints() (git-fixes).
  • remoteproc: sysmon: Correct subsys_name_len type in QMI request (git-fixes).
  • rpmsg: core: fix race in driver_override_show() and use core helper (git-fixes).
  • rtc: interface: Alarm race handling should not discard preceding error (git-fixes).
  • rtc: zynqmp: correct frequency value (stable-fixes).
  • s390/cio: Update purge function to unregister the unused subchannels (bsc#1254214).
  • s390/ipl: Clear SBP flag when bootprog is set (bsc#1258176).
  • s390/mm: Fix __ptep_rdp() inline assembly (bsc#1253644).
  • s390: Disable ARCH_WANT_OPTIMIZE_HUGETLB_VMEMMAP (bsc#1254306).
  • scsi: mpi3mr: Event processing debug improvement (bsc#1251186, bsc#1258832).
  • scsi: storvsc: Fix scheduling while atomic on PREEMPT_RT (git-fixes).
  • scsi: storvsc: Remove redundant ternary operators (git-fixes).
  • selftests/bpf: Add tc helpers (bsc#1258860).
  • selftests/bpf: Integrate test_tc_tunnel.sh tests into test_progs (bsc#1258860).
  • selftests/bpf: Make test_tc_tunnel.bpf.c compatible with big endian platforms (bsc#1258860).
  • selftests/bpf: Remove '&>' usage in the selftests (bsc#1258860).
  • selftests/bpf: Remove test_tc_tunnel.sh (bsc#1258860).
  • selftests/bpf: Support when CONFIG_VXLAN=m (bsc#1258860).
  • selftests/bpf: Use connect_to_addr in test_sock_addr (bsc#1258860).
  • selftests/bpf: Use log_err in open_netns/close_netns (bsc#1258860).
  • selftests/bpf: Use make_sockaddr in test_sock_addr (bsc#1258860).
  • selftests/bpf: Use start_server_addr in test_sock_addr (bsc#1258860).
  • selftests/bpf: add verifier sign extension bound computation tests (git-fixes).
  • selftests/bpf: test_tunnel: Add generic_attach* helpers (bsc#1258860).
  • selftests/bpf: test_tunnel: Add ping helpers (bsc#1258860).
  • selftests/bpf: test_tunnel: Move erspan tunnel tests to test_progs (bsc#1258860).
  • selftests/bpf: test_tunnel: Move geneve tunnel test to test_progs (bsc#1258860).
  • selftests/bpf: test_tunnel: Move gre tunnel test to test_progs (bsc#1258860).
  • selftests/bpf: test_tunnel: Move ip6erspan tunnel test to test_progs (bsc#1258860).
  • selftests/bpf: test_tunnel: Move ip6geneve tunnel test to test_progs (bsc#1258860).
  • selftests/bpf: test_tunnel: Move ip6gre tunnel test to test_progs (bsc#1258860).
  • selftests/bpf: test_tunnel: Move ip6tnl tunnel tests to test_progs (bsc#1258860).
  • selftests/bpf: test_tunnel: Remove test_tunnel.sh (bsc#1258860).
  • serial: 8250: 8250_omap.c: Clear DMA RX running status only after DMA termination is done (git-fixes).
  • serial: 8250: 8250_omap.c: Clear DMA RX running status only after DMA termination is done (stable-fixes).
  • serial: 8250_dw: handle clock enable errors in runtime_resume (git-fixes).
  • serial: 8250_dw: handle clock enable errors in runtime_resume (stable-fixes).
  • serial: SH_SCI: improve 'DMA support' prompt (git-fixes).
  • serial: imx: change SERIAL_IMX_CONSOLE to bool (git-fixes).
  • shrink_slab_memcg: clear_bits of skipped shrinkers (bsc#1256564).
  • soc: mediatek: svs: Fix memory leak in svs_enable_debug_write() (git-fixes).
  • soc: qcom: cmd-db: Use devm_memremap() to fix memory leak in cmd_db_dev_probe (git-fixes).
  • soc: qcom: smem: handle ENOMEM error during probe (git-fixes).
  • soc: ti: k3-socinfo: Fix regmap leak on probe failure (git-fixes).
  • soc: ti: pruss: Fix double free in pruss_clk_mux_setup() (git-fixes).
  • soundwire: dmi-quirks: add mapping for Avell B.ON (OEM rebranded of NUC15) (stable-fixes).
  • soundwire: intel_ace2x: add SND_HDA_CORE dependency (git-fixes).
  • spi-geni-qcom: initialize mode related registers to 0 (stable-fixes).
  • spi-geni-qcom: use xfer->bits_per_word for can_dma() (stable-fixes).
  • spi: spi-mem: Limit octal DTR constraints to octal DTR situations (git-fixes)
  • spi: spi-mem: Limit octal DTR constraints to octal DTR situations (stable-fixes).
  • spi: spi-mem: Protect dirmap_create() with spi_mem_access_start/end (git-fixes)
  • spi: spi-mem: Protect dirmap_create() with spi_mem_access_start/end (stable-fixes).
  • spi: spidev: fix lock inversion between spi_lock and buf_lock (git-fixes)
  • spi: stm32: fix Overrun issue at < 8bpw (stable-fixes).
  • spi: tegra114: Preserve SPI mode bits in def_command1_reg (git-fixes).
  • spi: tegra210-quad: Move curr_xfer read inside spinlock (bsc#1257952)
  • spi: tegra210-quad: Move curr_xfer read inside spinlock (git-fixes).
  • spi: tegra210-quad: Protect curr_xfer assignment in (bsc#1257952)
  • spi: tegra210-quad: Protect curr_xfer assignment in tegra_qspi_setup_transfer_one (git-fixes).
  • spi: tegra210-quad: Protect curr_xfer check in IRQ handler (bsc#1257952)
  • spi: tegra210-quad: Protect curr_xfer check in IRQ handler (git-fixes).
  • spi: tegra210-quad: Protect curr_xfer clearing in (bsc#1257952)
  • spi: tegra210-quad: Protect curr_xfer clearing in tegra_qspi_non_combined_seq_xfer (git-fixes).
  • spi: tegra210-quad: Protect curr_xfer in tegra_qspi_combined_seq_xfer (bsc#1257952)
  • spi: tegra210-quad: Protect curr_xfer in tegra_qspi_combined_seq_xfer (git-fixes).
  • spi: tegra210-quad: Return IRQ_HANDLED when timeout already processed (bsc#1257952)
  • spi: tegra210-quad: Return IRQ_HANDLED when timeout already processed transfer (git-fixes).
  • spi: tegra: Fix a memory leak in tegra_slink_probe() (git-fixes).
  • spi: wpcm-fiu: Fix potential NULL pointer dereference in wpcm_fiu_probe() (git-fixes).
  • spi: wpcm-fiu: Fix uninitialized res (git-fixes).
  • spi: wpcm-fiu: Simplify with dev_err_probe() (stable-fixes).
  • spi: wpcm-fiu: Use devm_platform_ioremap_resource_byname() (stable-fixes).
  • staging: rtl8723bs: fix memory leak on failure path (stable-fixes).
  • staging: rtl8723bs: fix missing status update on sdio_alloc_irq() failure (stable-fixes).
  • staging: rtl8723bs: fix null dereference in find_network (git-fixes).
  • thermal: int340x: Fix sysfs group leak on DLVR registration failure (stable-fixes).
  • thermal: intel: x86_pkg_temp_thermal: Handle invalid temperature (git-fixes).
  • tools/hv: fcopy: Fix irregularities with size of ring buffer (git-fixes).
  • tools/power cpupower: Reset errno before strtoull() (stable-fixes).
  • tools/power/x86/intel-speed-select: Fix file descriptor leak in isolate_cpus() (git-fixes).
  • tools: hv: Enable debug logs for hv_kvp_daemon (git-fixes).
  • tpm: st33zp24: Fix missing cleanup on get_burstcount() error (git-fixes).
  • tpm: tpm_i2c_infineon: Fix locality leak on get_burstcount() failure (git-fixes).
  • uio_hv_generic: Align ring size to system page (git-fixes).
  • uio_hv_generic: Use correct size for interrupt and monitor pages (git-fixes).
  • usb: bdc: fix sleep during atomic (git-fixes).
  • usb: dwc2: fix resume failure if dr_mode is host (git-fixes).
  • usb: gadget: tegra-xudc: Add handling for BLCG_COREPLL_PWRDN (git-fixes).
  • usb: typec: ucsi: psy: Fix voltage and current max for non-Fixed PDOs (git-fixes).
  • watchdog: imx7ulp_wdt: handle the nowayout option (stable-fixes).
  • wifi: ath10k: fix lock protection in ath10k_wmi_event_peer_sta_ps_state_chg() (stable-fixes).
  • wifi: ath10k: sdio: add missing lock protection in ath10k_sdio_fw_crashed_dump() (git-fixes).
  • wifi: ath11k: Fix failure to connect to a 6 GHz AP (stable-fixes).
  • wifi: ath11k: add pm quirk for Thinkpad Z13/Z16 Gen1 (stable-fixes).
  • wifi: ath12k: fix preferred hardware mode calculation (stable-fixes).
  • wifi: ath9k: debug.h: fix kernel-doc bad lines and struct ath_tx_stats (git-fixes).
  • wifi: ath9k: fix kernel-doc warnings in common-debug.h (git-fixes).
  • wifi: cfg80211: Fix bitrate calculation overflow for HE rates (stable-fixes).
  • wifi: cfg80211: Fix use_for flag update on BSS refresh (git-fixes).
  • wifi: cfg80211: allow only one NAN interface, also in multi radio (stable-fixes).
  • wifi: cfg80211: cancel rfkill_block work in wiphy_unregister() (git-fixes).
  • wifi: cfg80211: stop NAN and P2P in cfg80211_leave (git-fixes).
  • wifi: cfg80211: wext: fix IGTK key ID off-by-one (git-fixes).
  • wifi: cw1200: Fix locking in error paths (git-fixes).
  • wifi: iwlegacy: add missing mutex protection in il3945_store_measurement() (stable-fixes).
  • wifi: iwlegacy: add missing mutex protection in il4965_store_tx_power() (stable-fixes).
  • wifi: iwlwifi: mvm: check the validity of noa_len (stable-fixes).
  • wifi: iwlwifi: mvm: pause TCM on fast resume (git-fixes).
  • wifi: libertas: fix WARNING in usb_tx_block (stable-fixes).
  • wifi: mac80211: bounds-check link_id in ieee80211_ml_reconfiguration (git-fixes).
  • wifi: mac80211: collect station statistics earlier when disconnect (stable-fixes).
  • wifi: mac80211: correctly check if CSA is active (stable-fixes).
  • wifi: mac80211: do not increment crypto_tx_tailroom_needed_cnt twice (stable-fixes).
  • wifi: mac80211: fix NULL pointer dereference in mesh_rx_csa_frame() (git-fixes).
  • wifi: mac80211: ocb: skip rx_no_sta when interface is not joined (stable-fixes).
  • wifi: mt76: Fix possible oob access in mt76_connac2_mac_write_txwi_80211() (git-fixes).
  • wifi: mt76: mt7925: Fix possible oob access in mt7925_mac_write_txwi_80211() (git-fixes).
  • wifi: mt76: mt7996: Fix possible oob access in mt7996_mac_write_txwi_80211() (git-fixes).
  • wifi: radiotap: reject radiotap with unknown bits (git-fixes).
  • wifi: rsi: Do not default to -EOPNOTSUPP in rsi_mac80211_config (git-fixes).
  • wifi: rtl8xxxu: fix slab-out-of-bounds in rtl8xxxu_sta_add (git-fixes).
  • wifi: rtw88: 8822b: Avoid WARNING in rtw8822b_config_trx_mode() (stable-fixes).
  • wifi: rtw88: Fix alignment fault in rtw_core_enable_beacon() (git-fixes).
  • wifi: rtw88: fix DTIM period handling when conf->dtim_period is zero (stable-fixes).
  • wifi: rtw88: rtw8821cu: Add ID for Mercusys MU6H (stable-fixes).
  • wifi: rtw89: 8922a: set random mac if efuse contains zeroes (stable-fixes).
  • wifi: rtw89: mac: correct page number for CSI response (stable-fixes).
  • wifi: rtw89: pci: restore LDO setting after device resume (stable-fixes).
  • wifi: rtw89: ser: enable error IMR after recovering from L1 (stable-fixes).
  • wifi: rtw89: wow: add reason codes for disassociation in WoWLAN mode (stable-fixes).
  • wifi: wlcore: Fix a locking bug (git-fixes).
  • wifi: wlcore: ensure skb headroom before skb_push (stable-fixes).
  • workqueue: mark power efficient workqueue as unbounded if (bsc#1257891)
  • x86/hyperv: Fix usage of cpu_online_mask to get valid cpu (git-fixes).
  • x86/hyperv: Fix warnings for missing export.h header inclusion (git-fixes).
  • x86/hyperv: Use named operands in inline asm (git-fixes).
  • x86/hyperv: fix an indentation issue in mshyperv.h (git-fixes).

Список пакетов

SUSE Linux Enterprise Live Patching 15 SP7
kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7
cluster-md-kmp-rt-6.4.0-150700.7.34.1
dlm-kmp-rt-6.4.0-150700.7.34.1
gfs2-kmp-rt-6.4.0-150700.7.34.1
kernel-devel-rt-6.4.0-150700.7.34.1
kernel-rt-6.4.0-150700.7.34.1
kernel-rt-devel-6.4.0-150700.7.34.1
kernel-source-rt-6.4.0-150700.7.34.1
kernel-syms-rt-6.4.0-150700.7.34.1
ocfs2-kmp-rt-6.4.0-150700.7.34.1

Описание

In the Linux kernel, the following vulnerability has been resolved: crypto: lib/mpi - avoid null pointer deref in mpi_cmp_ui() During NVMeTCP Authentication a controller can trigger a kernel oops by specifying the 8192 bit Diffie Hellman group and passing a correctly sized, but zeroed Diffie Hellamn value. mpi_cmp_ui() was detecting this if the second parameter was 0, but 1 is passed from dh_is_pubkey_valid(). This causes the null pointer u->d to be dereferenced towards the end of mpi_cmp_ui()


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: bpf: Forget ranges when refining tnum after JSET Syzbot reported a kernel warning due to a range invariant violation on the following BPF program. 0: call bpf_get_netns_cookie 1: if r0 == 0 goto <exit> 2: if r0 & Oxffffffff goto <exit> The issue is on the path where we fall through both jumps. That path is unreachable at runtime: after insn 1, we know r0 != 0, but with the sign extension on the jset, we would only fallthrough insn 2 if r0 == 0. Unfortunately, is_branch_taken() isn't currently able to figure this out, so the verifier walks all branches. The verifier then refines the register bounds using the second condition and we end up with inconsistent bounds on this unreachable path: 1: if r0 == 0 goto <exit> r0: u64=[0x1, 0xffffffffffffffff] var_off=(0, 0xffffffffffffffff) 2: if r0 & 0xffffffff goto <exit> r0 before reg_bounds_sync: u64=[0x1, 0xffffffffffffffff] var_off=(0, 0) r0 after reg_bounds_sync: u64=[0x1, 0] var_off=(0, 0) Improving the range refinement for JSET to cover all cases is tricky. We also don't expect many users to rely on JSET given LLVM doesn't generate those instructions. So instead of improving the range refinement for JSETs, Eduard suggested we forget the ranges whenever we're narrowing tnums after a JSET. This patch implements that approach.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: efivarfs: Fix slab-out-of-bounds in efivarfs_d_compare Observed on kernel 6.6 (present on master as well): BUG: KASAN: slab-out-of-bounds in memcmp+0x98/0xd0 Call trace: kasan_check_range+0xe8/0x190 __asan_loadN+0x1c/0x28 memcmp+0x98/0xd0 efivarfs_d_compare+0x68/0xd8 __d_lookup_rcu_op_compare+0x178/0x218 __d_lookup_rcu+0x1f8/0x228 d_alloc_parallel+0x150/0x648 lookup_open.isra.0+0x5f0/0x8d0 open_last_lookups+0x264/0x828 path_openat+0x130/0x3f8 do_filp_open+0x114/0x248 do_sys_openat2+0x340/0x3c0 __arm64_sys_openat+0x120/0x1a0 If dentry->d_name.len < EFI_VARIABLE_GUID_LEN , 'guid' can become negative, leadings to oob. The issue can be triggered by parallel lookups using invalid filename: T1 T2 lookup_open ->lookup simple_lookup d_add // invalid dentry is added to hash list lookup_open d_alloc_parallel __d_lookup_rcu __d_lookup_rcu_op_compare hlist_bl_for_each_entry_rcu // invalid dentry can be retrieved ->d_compare efivarfs_d_compare // oob Fix it by checking 'guid' before cmp.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: crypto: af_alg - Disallow concurrent writes in af_alg_sendmsg Issuing two writes to the same af_alg socket is bogus as the data will be interleaved in an unpredictable fashion. Furthermore, concurrent writes may create inconsistencies in the internal socket state. Disallow this by adding a new ctx->write field that indiciates exclusive ownership for writing.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: cifs: parse_dfs_referrals: prevent oob on malformed input Malicious SMB server can send invalid reply to FSCTL_DFS_GET_REFERRALS - reply smaller than sizeof(struct get_dfs_referral_rsp) - reply with number of referrals smaller than NumberOfReferrals in the header Processing of such replies will cause oob. Return -EINVAL error on such replies to prevent oob-s.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: smb: client: Fix refcount leak for cifs_sb_tlink Fix three refcount inconsistency issues related to `cifs_sb_tlink`. Comments for `cifs_sb_tlink` state that `cifs_put_tlink()` needs to be called after successful calls to `cifs_sb_tlink()`. Three calls fail to update refcount accordingly, leading to possible resource leaks.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: kernel/sys.c: fix the racy usage of task_lock(tsk->group_leader) in sys_prlimit64() paths The usage of task_lock(tsk->group_leader) in sys_prlimit64()->do_prlimit() path is very broken. sys_prlimit64() does get_task_struct(tsk) but this only protects task_struct itself. If tsk != current and tsk is not a leader, this process can exit/exec and task_lock(tsk->group_leader) may use the already freed task_struct. Another problem is that sys_prlimit64() can race with mt-exec which changes ->group_leader. In this case do_prlimit() may take the wrong lock, or (worse) ->group_leader may change between task_lock() and task_unlock(). Change sys_prlimit64() to take tasklist_lock when necessary. This is not nice, but I don't see a better fix for -stable.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: s390/ctcm: Fix double-kfree The function 'mpc_rcvd_sweep_req(mpcginfo)' is called conditionally from function 'ctcmpc_unpack_skb'. It frees passed mpcginfo. After that a call to function 'kfree' in function 'ctcmpc_unpack_skb' frees it again. Remove 'kfree' call in function 'mpc_rcvd_sweep_req(mpcginfo)'. Bug detected by the clang static analyzer.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: libceph: replace BUG_ON with bounds check for map->max_osd OSD indexes come from untrusted network packets. Boundary checks are added to validate these against map->max_osd. [ idryomov: drop BUG_ON in ceph_get_primary_affinity(), minor cosmetic edits ]


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: smb: client: fix memory leak in cifs_construct_tcon() When having a multiuser mount with domain= specified and using cifscreds, cifs_set_cifscreds() will end up setting @ctx->domainname, so it needs to be freed before leaving cifs_construct_tcon(). This fixes the following memory leak reported by kmemleak: mount.cifs //srv/share /mnt -o domain=ZELDA,multiuser,... su - testuser cifscreds add -d ZELDA -u testuser ... ls /mnt/1 ... umount /mnt echo scan > /sys/kernel/debug/kmemleak cat /sys/kernel/debug/kmemleak unreferenced object 0xffff8881203c3f08 (size 8): comm "ls", pid 5060, jiffies 4307222943 hex dump (first 8 bytes): 5a 45 4c 44 41 00 cc cc ZELDA... backtrace (crc d109a8cf): __kmalloc_node_track_caller_noprof+0x572/0x710 kstrdup+0x3a/0x70 cifs_sb_tlink+0x1209/0x1770 [cifs] cifs_get_fattr+0xe1/0xf50 [cifs] cifs_get_inode_info+0xb5/0x240 [cifs] cifs_revalidate_dentry_attr+0x2d1/0x470 [cifs] cifs_getattr+0x28e/0x450 [cifs] vfs_getattr_nosec+0x126/0x180 vfs_statx+0xf6/0x220 do_statx+0xab/0x110 __x64_sys_statx+0xd5/0x130 do_syscall_64+0xbb/0x380 entry_SYSCALL_64_after_hwframe+0x77/0x7f


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: md: fix rcu protection in md_wakeup_thread We attempted to use RCU to protect the pointer 'thread', but directly passed the value when calling md_wakeup_thread(). This means that the RCU pointer has been acquired before rcu_read_lock(), which renders rcu_read_lock() ineffective and could lead to a use-after-free.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: drm/panthor: Prevent potential UAF in group creation This commit prevents the possibility of a use after free issue in the GROUP_CREATE ioctl function, which arose as pointer to the group is accessed in that ioctl function after storing it in the Xarray. A malicious userspace can second guess the handle of a group and try to call GROUP_DESTROY ioctl from another thread around the same time as GROUP_CREATE ioctl. To prevent the use after free exploit, this commit uses a mark on an entry of group pool Xarray which is added just before returning from the GROUP_CREATE ioctl function. The mark is checked for all ioctls that specify the group handle and so userspace won't be abe to delete a group that isn't marked yet. v2: Add R-bs and fixes tags


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: landlock: Fix handling of disconnected directories Disconnected files or directories can appear when they are visible and opened from a bind mount, but have been renamed or moved from the source of the bind mount in a way that makes them inaccessible from the mount point (i.e. out of scope). Previously, access rights tied to files or directories opened through a disconnected directory were collected by walking the related hierarchy down to the root of the filesystem, without taking into account the mount point because it couldn't be found. This could lead to inconsistent access results, potential access right widening, and hard-to-debug renames, especially since such paths cannot be printed. For a sandboxed task to create a disconnected directory, it needs to have write access (i.e. FS_MAKE_REG, FS_REMOVE_FILE, and FS_REFER) to the underlying source of the bind mount, and read access to the related mount point. Because a sandboxed task cannot acquire more access rights than those defined by its Landlock domain, this could lead to inconsistent access rights due to missing permissions that should be inherited from the mount point hierarchy, while inheriting permissions from the filesystem hierarchy hidden by this mount point instead. Landlock now handles files and directories opened from disconnected directories by taking into account the filesystem hierarchy when the mount point is not found in the hierarchy walk, and also always taking into account the mount point from which these disconnected directories were opened. This ensures that a rename is not allowed if it would widen access rights [1]. The rationale is that, even if disconnected hierarchies might not be visible or accessible to a sandboxed task, relying on the collected access rights from them improves the guarantee that access rights will not be widened during a rename because of the access right comparison between the source and the destination (see LANDLOCK_ACCESS_FS_REFER). It may look like this would grant more access on disconnected files and directories, but the security policies are always enforced for all the evaluated hierarchies. This new behavior should be less surprising to users and safer from an access control perspective. Remove a wrong WARN_ON_ONCE() canary in collect_domain_accesses() and fix the related comment. Because opened files have their access rights stored in the related file security properties, there is no impact for disconnected or unlinked files.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: btrfs: don't log conflicting inode if it's a dir moved in the current transaction We can't log a conflicting inode if it's a directory and it was moved from one parent directory to another parent directory in the current transaction, as this can result an attempt to have a directory with two hard links during log replay, one for the old parent directory and another for the new parent directory. The following scenario triggers that issue: 1) We have directories "dir1" and "dir2" created in a past transaction. Directory "dir1" has inode A as its parent directory; 2) We move "dir1" to some other directory; 3) We create a file with the name "dir1" in directory inode A; 4) We fsync the new file. This results in logging the inode of the new file and the inode for the directory "dir1" that was previously moved in the current transaction. So the log tree has the INODE_REF item for the new location of "dir1"; 5) We move the new file to some other directory. This results in updating the log tree to included the new INODE_REF for the new location of the file and removes the INODE_REF for the old location. This happens during the rename when we call btrfs_log_new_name(); 6) We fsync the file, and that persists the log tree changes done in the previous step (btrfs_log_new_name() only updates the log tree in memory); 7) We have a power failure; 8) Next time the fs is mounted, log replay happens and when processing the inode for directory "dir1" we find a new INODE_REF and add that link, but we don't remove the old link of the inode since we have not logged the old parent directory of the directory inode "dir1". As a result after log replay finishes when we trigger writeback of the subvolume tree's extent buffers, the tree check will detect that we have a directory a hard link count of 2 and we get a mount failure. The errors and stack traces reported in dmesg/syslog are like this: [ 3845.729764] BTRFS info (device dm-0): start tree-log replay [ 3845.730304] page: refcount:3 mapcount:0 mapping:000000005c8a3027 index:0x1d00 pfn:0x11510c [ 3845.731236] memcg:ffff9264c02f4e00 [ 3845.731751] aops:btree_aops [btrfs] ino:1 [ 3845.732300] flags: 0x17fffc00000400a(uptodate|private|writeback|node=0|zone=2|lastcpupid=0x1ffff) [ 3845.733346] raw: 017fffc00000400a 0000000000000000 dead000000000122 ffff9264d978aea8 [ 3845.734265] raw: 0000000000001d00 ffff92650e6d4738 00000003ffffffff ffff9264c02f4e00 [ 3845.735305] page dumped because: eb page dump [ 3845.735981] BTRFS critical (device dm-0): corrupt leaf: root=5 block=30408704 slot=6 ino=257, invalid nlink: has 2 expect no more than 1 for dir [ 3845.737786] BTRFS info (device dm-0): leaf 30408704 gen 10 total ptrs 17 free space 14881 owner 5 [ 3845.737789] BTRFS info (device dm-0): refs 4 lock_owner 0 current 30701 [ 3845.737792] item 0 key (256 INODE_ITEM 0) itemoff 16123 itemsize 160 [ 3845.737794] inode generation 3 transid 9 size 16 nbytes 16384 [ 3845.737795] block group 0 mode 40755 links 1 uid 0 gid 0 [ 3845.737797] rdev 0 sequence 2 flags 0x0 [ 3845.737798] atime 1764259517.0 [ 3845.737800] ctime 1764259517.572889464 [ 3845.737801] mtime 1764259517.572889464 [ 3845.737802] otime 1764259517.0 [ 3845.737803] item 1 key (256 INODE_REF 256) itemoff 16111 itemsize 12 [ 3845.737805] index 0 name_len 2 [ 3845.737807] item 2 key (256 DIR_ITEM 2363071922) itemoff 16077 itemsize 34 [ 3845.737808] location key (257 1 0) type 2 [ 3845.737810] transid 9 data_len 0 name_len 4 [ 3845.737811] item 3 key (256 DIR_ITEM 2676584006) itemoff 16043 itemsize 34 [ 3845.737813] location key (258 1 0) type 2 [ 3845.737814] transid 9 data_len 0 name_len 4 [ 3845.737815] item 4 key (256 DIR_INDEX 2) itemoff 16009 itemsize 34 [ 3845.737816] location key (257 1 0) type 2 [ ---truncated---


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: net: openvswitch: fix middle attribute validation in push_nsh() action The push_nsh() action structure looks like this: OVS_ACTION_ATTR_PUSH_NSH(OVS_KEY_ATTR_NSH(OVS_NSH_KEY_ATTR_BASE,...)) The outermost OVS_ACTION_ATTR_PUSH_NSH attribute is OK'ed by the nla_for_each_nested() inside __ovs_nla_copy_actions(). The innermost OVS_NSH_KEY_ATTR_BASE/MD1/MD2 are OK'ed by the nla_for_each_nested() inside nsh_key_put_from_nlattr(). But nothing checks if the attribute in the middle is OK. We don't even check that this attribute is the OVS_KEY_ATTR_NSH. We just do a double unwrap with a pair of nla_data() calls - first time directly while calling validate_push_nsh() and the second time as part of the nla_for_each_nested() macro, which isn't safe, potentially causing invalid memory access if the size of this attribute is incorrect. The failure may not be noticed during validation due to larger netlink buffer, but cause trouble later during action execution where the buffer is allocated exactly to the size: BUG: KASAN: slab-out-of-bounds in nsh_hdr_from_nlattr+0x1dd/0x6a0 [openvswitch] Read of size 184 at addr ffff88816459a634 by task a.out/22624 CPU: 8 UID: 0 PID: 22624 6.18.0-rc7+ #115 PREEMPT(voluntary) Call Trace: <TASK> dump_stack_lvl+0x51/0x70 print_address_description.constprop.0+0x2c/0x390 kasan_report+0xdd/0x110 kasan_check_range+0x35/0x1b0 __asan_memcpy+0x20/0x60 nsh_hdr_from_nlattr+0x1dd/0x6a0 [openvswitch] push_nsh+0x82/0x120 [openvswitch] do_execute_actions+0x1405/0x2840 [openvswitch] ovs_execute_actions+0xd5/0x3b0 [openvswitch] ovs_packet_cmd_execute+0x949/0xdb0 [openvswitch] genl_family_rcv_msg_doit+0x1d6/0x2b0 genl_family_rcv_msg+0x336/0x580 genl_rcv_msg+0x9f/0x130 netlink_rcv_skb+0x11f/0x370 genl_rcv+0x24/0x40 netlink_unicast+0x73e/0xaa0 netlink_sendmsg+0x744/0xbf0 __sys_sendto+0x3d6/0x450 do_syscall_64+0x79/0x2c0 entry_SYSCALL_64_after_hwframe+0x76/0x7e </TASK> Let's add some checks that the attribute is properly sized and it's the only one attribute inside the action. Technically, there is no real reason for OVS_KEY_ATTR_NSH to be there, as we know that we're pushing an NSH header already, it just creates extra nesting, but that's how uAPI works today. So, keeping as it is.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: KVM: Disallow toggling KVM_MEM_GUEST_MEMFD on an existing memslot Reject attempts to disable KVM_MEM_GUEST_MEMFD on a memslot that was initially created with a guest_memfd binding, as KVM doesn't support toggling KVM_MEM_GUEST_MEMFD on existing memslots. KVM prevents enabling KVM_MEM_GUEST_MEMFD, but doesn't prevent clearing the flag. Failure to reject the new memslot results in a use-after-free due to KVM not unbinding from the guest_memfd instance. Unbinding on a FLAGS_ONLY change is easy enough, and can/will be done as a hardening measure (in anticipation of KVM supporting dirty logging on guest_memfd at some point), but fixing the use-after-free would only address the immediate symptom. ================================================================== BUG: KASAN: slab-use-after-free in kvm_gmem_release+0x362/0x400 [kvm] Write of size 8 at addr ffff8881111ae908 by task repro/745 CPU: 7 UID: 1000 PID: 745 Comm: repro Not tainted 6.18.0-rc6-115d5de2eef3-next-kasan #3 NONE Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 0.0.0 02/06/2015 Call Trace: <TASK> dump_stack_lvl+0x51/0x60 print_report+0xcb/0x5c0 kasan_report+0xb4/0xe0 kvm_gmem_release+0x362/0x400 [kvm] __fput+0x2fa/0x9d0 task_work_run+0x12c/0x200 do_exit+0x6ae/0x2100 do_group_exit+0xa8/0x230 __x64_sys_exit_group+0x3a/0x50 x64_sys_call+0x737/0x740 do_syscall_64+0x5b/0x900 entry_SYSCALL_64_after_hwframe+0x4b/0x53 RIP: 0033:0x7f581f2eac31 </TASK> Allocated by task 745 on cpu 6 at 9.746971s: kasan_save_stack+0x20/0x40 kasan_save_track+0x13/0x50 __kasan_kmalloc+0x77/0x90 kvm_set_memory_region.part.0+0x652/0x1110 [kvm] kvm_vm_ioctl+0x14b0/0x3290 [kvm] __x64_sys_ioctl+0x129/0x1a0 do_syscall_64+0x5b/0x900 entry_SYSCALL_64_after_hwframe+0x4b/0x53 Freed by task 745 on cpu 6 at 9.747467s: kasan_save_stack+0x20/0x40 kasan_save_track+0x13/0x50 __kasan_save_free_info+0x37/0x50 __kasan_slab_free+0x3b/0x60 kfree+0xf5/0x440 kvm_set_memslot+0x3c2/0x1160 [kvm] kvm_set_memory_region.part.0+0x86a/0x1110 [kvm] kvm_vm_ioctl+0x14b0/0x3290 [kvm] __x64_sys_ioctl+0x129/0x1a0 do_syscall_64+0x5b/0x900 entry_SYSCALL_64_after_hwframe+0x4b/0x53


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: iommu/mediatek: fix use-after-free on probe deferral The driver is dropping the references taken to the larb devices during probe after successful lookup as well as on errors. This can potentially lead to a use-after-free in case a larb device has not yet been bound to its driver so that the iommu driver probe defers. Fix this by keeping the references as expected while the iommu driver is bound.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: KVM: x86: Fix VM hard lockup after prolonged inactivity with periodic HV timer When advancing the target expiration for the guest's APIC timer in periodic mode, set the expiration to "now" if the target expiration is in the past (similar to what is done in update_target_expiration()). Blindly adding the period to the previous target expiration can result in KVM generating a practically unbounded number of hrtimer IRQs due to programming an expired timer over and over. In extreme scenarios, e.g. if userspace pauses/suspends a VM for an extended duration, this can even cause hard lockups in the host. Currently, the bug only affects Intel CPUs when using the hypervisor timer (HV timer), a.k.a. the VMX preemption timer. Unlike the software timer, a.k.a. hrtimer, which KVM keeps running even on exits to userspace, the HV timer only runs while the guest is active. As a result, if the vCPU does not run for an extended duration, there will be a huge gap between the target expiration and the current time the vCPU resumes running. Because the target expiration is incremented by only one period on each timer expiration, this leads to a series of timer expirations occurring rapidly after the vCPU/VM resumes. More critically, when the vCPU first triggers a periodic HV timer expiration after resuming, advancing the expiration by only one period will result in a target expiration in the past. As a result, the delta may be calculated as a negative value. When the delta is converted into an absolute value (tscdeadline is an unsigned u64), the resulting value can overflow what the HV timer is capable of programming. I.e. the large value will exceed the VMX Preemption Timer's maximum bit width of cpu_preemption_timer_multi + 32, and thus cause KVM to switch from the HV timer to the software timer (hrtimers). After switching to the software timer, periodic timer expiration callbacks may be executed consecutively within a single clock interrupt handler, because hrtimers honors KVM's request for an expiration in the past and immediately re-invokes KVM's callback after reprogramming. And because the interrupt handler runs with IRQs disabled, restarting KVM's hrtimer over and over until the target expiration is advanced to "now" can result in a hard lockup. E.g. the following hard lockup was triggered in the host when running a Windows VM (only relevant because it used the APIC timer in periodic mode) after resuming the VM from a long suspend (in the host). NMI watchdog: Watchdog detected hard LOCKUP on cpu 45 ... RIP: 0010:advance_periodic_target_expiration+0x4d/0x80 [kvm] ... RSP: 0018:ff4f88f5d98d8ef0 EFLAGS: 00000046 RAX: fff0103f91be678e RBX: fff0103f91be678e RCX: 00843a7d9e127bcc RDX: 0000000000000002 RSI: 0052ca4003697505 RDI: ff440d5bfbdbd500 RBP: ff440d5956f99200 R08: ff2ff2a42deb6a84 R09: 000000000002a6c0 R10: 0122d794016332b3 R11: 0000000000000000 R12: ff440db1af39cfc0 R13: ff440db1af39cfc0 R14: ffffffffc0d4a560 R15: ff440db1af39d0f8 FS: 00007f04a6ffd700(0000) GS:ff440db1af380000(0000) knlGS:000000e38a3b8000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 000000d5651feff8 CR3: 000000684e038002 CR4: 0000000000773ee0 PKRU: 55555554 Call Trace: <IRQ> apic_timer_fn+0x31/0x50 [kvm] __hrtimer_run_queues+0x100/0x280 hrtimer_interrupt+0x100/0x210 ? ttwu_do_wakeup+0x19/0x160 smp_apic_timer_interrupt+0x6a/0x130 apic_timer_interrupt+0xf/0x20 </IRQ> Moreover, if the suspend duration of the virtual machine is not long enough to trigger a hard lockup in this scenario, since commit 98c25ead5eda ("KVM: VMX: Move preemption timer <=> hrtimer dance to common x86"), KVM will continue using the software timer until the guest reprograms the APIC timer in some way. Since the periodic timer does not require frequent APIC timer register programming, the guest may continue to use the software timer in ---truncated---


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: crypto: af_alg - zero initialize memory allocated via sock_kmalloc Several crypto user API contexts and requests allocated with sock_kmalloc() were left uninitialized, relying on callers to set fields explicitly. This resulted in the use of uninitialized data in certain error paths or when new fields are added in the future. The ACVP patches also contain two user-space interface files: algif_kpp.c and algif_akcipher.c. These too rely on proper initialization of their context structures. A particular issue has been observed with the newly added 'inflight' variable introduced in af_alg_ctx by commit: 67b164a871af ("crypto: af_alg - Disallow multiple in-flight AIO requests") Because the context is not memset to zero after allocation, the inflight variable has contained garbage values. As a result, af_alg_alloc_areq() has incorrectly returned -EBUSY randomly when the garbage value was interpreted as true: https://github.com/gregkh/linux/blame/master/crypto/af_alg.c#L1209 The check directly tests ctx->inflight without explicitly comparing against true/false. Since inflight is only ever set to true or false later, an uninitialized value has triggered -EBUSY failures. Zero-initializing memory allocated with sock_kmalloc() ensures inflight and other fields start in a known state, removing random issues caused by uninitialized data.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: tracing: Do not register unsupported perf events Synthetic events currently do not have a function to register perf events. This leads to calling the tracepoint register functions with a NULL function pointer which triggers: ------------[ cut here ]------------ WARNING: kernel/tracepoint.c:175 at tracepoint_add_func+0x357/0x370, CPU#2: perf/2272 Modules linked in: kvm_intel kvm irqbypass CPU: 2 UID: 0 PID: 2272 Comm: perf Not tainted 6.18.0-ftest-11964-ge022764176fc-dirty #323 PREEMPTLAZY Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.17.0-debian-1.17.0-1 04/01/2014 RIP: 0010:tracepoint_add_func+0x357/0x370 Code: 28 9c e8 4c 0b f5 ff eb 0f 4c 89 f7 48 c7 c6 80 4d 28 9c e8 ab 89 f4 ff 31 c0 5b 41 5c 41 5d 41 5e 41 5f 5d c3 cc cc cc cc cc <0f> 0b 49 c7 c6 ea ff ff ff e9 ee fe ff ff 0f 0b e9 f9 fe ff ff 0f RSP: 0018:ffffabc0c44d3c40 EFLAGS: 00010246 RAX: 0000000000000001 RBX: ffff9380aa9e4060 RCX: 0000000000000000 RDX: 000000000000000a RSI: ffffffff9e1d4a98 RDI: ffff937fcf5fd6c8 RBP: 0000000000000001 R08: 0000000000000007 R09: ffff937fcf5fc780 R10: 0000000000000003 R11: ffffffff9c193910 R12: 000000000000000a R13: ffffffff9e1e5888 R14: 0000000000000000 R15: ffffabc0c44d3c78 FS: 00007f6202f5f340(0000) GS:ffff93819f00f000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 000055d3162281a8 CR3: 0000000106a56003 CR4: 0000000000172ef0 Call Trace: <TASK> tracepoint_probe_register+0x5d/0x90 synth_event_reg+0x3c/0x60 perf_trace_event_init+0x204/0x340 perf_trace_init+0x85/0xd0 perf_tp_event_init+0x2e/0x50 perf_try_init_event+0x6f/0x230 ? perf_event_alloc+0x4bb/0xdc0 perf_event_alloc+0x65a/0xdc0 __se_sys_perf_event_open+0x290/0x9f0 do_syscall_64+0x93/0x7b0 ? entry_SYSCALL_64_after_hwframe+0x76/0x7e ? trace_hardirqs_off+0x53/0xc0 entry_SYSCALL_64_after_hwframe+0x76/0x7e Instead, have the code return -ENODEV, which doesn't warn and has perf error out with: # perf record -e synthetic:futex_wait Error: The sys_perf_event_open() syscall returned with 19 (No such device) for event (synthetic:futex_wait). "dmesg | grep -i perf" may provide additional information. Ideally perf should support synthetic events, but for now just fix the warning. The support can come later.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: mptcp: avoid deadlock on fallback while reinjecting Jakub reported an MPTCP deadlock at fallback time: WARNING: possible recursive locking detected 6.18.0-rc7-virtme #1 Not tainted -------------------------------------------- mptcp_connect/20858 is trying to acquire lock: ff1100001da18b60 (&msk->fallback_lock){+.-.}-{3:3}, at: __mptcp_try_fallback+0xd8/0x280 but task is already holding lock: ff1100001da18b60 (&msk->fallback_lock){+.-.}-{3:3}, at: __mptcp_retrans+0x352/0xaa0 other info that might help us debug this: Possible unsafe locking scenario: CPU0 ---- lock(&msk->fallback_lock); lock(&msk->fallback_lock); *** DEADLOCK *** May be due to missing lock nesting notation 3 locks held by mptcp_connect/20858: #0: ff1100001da18290 (sk_lock-AF_INET){+.+.}-{0:0}, at: mptcp_sendmsg+0x114/0x1bc0 #1: ff1100001db40fd0 (k-sk_lock-AF_INET#2){+.+.}-{0:0}, at: __mptcp_retrans+0x2cb/0xaa0 #2: ff1100001da18b60 (&msk->fallback_lock){+.-.}-{3:3}, at: __mptcp_retrans+0x352/0xaa0 stack backtrace: CPU: 0 UID: 0 PID: 20858 Comm: mptcp_connect Not tainted 6.18.0-rc7-virtme #1 PREEMPT(full) Hardware name: Bochs, BIOS Bochs 01/01/2011 Call Trace: <TASK> dump_stack_lvl+0x6f/0xa0 print_deadlock_bug.cold+0xc0/0xcd validate_chain+0x2ff/0x5f0 __lock_acquire+0x34c/0x740 lock_acquire.part.0+0xbc/0x260 _raw_spin_lock_bh+0x38/0x50 __mptcp_try_fallback+0xd8/0x280 mptcp_sendmsg_frag+0x16c2/0x3050 __mptcp_retrans+0x421/0xaa0 mptcp_release_cb+0x5aa/0xa70 release_sock+0xab/0x1d0 mptcp_sendmsg+0xd5b/0x1bc0 sock_write_iter+0x281/0x4d0 new_sync_write+0x3c5/0x6f0 vfs_write+0x65e/0xbb0 ksys_write+0x17e/0x200 do_syscall_64+0xbb/0xfd0 entry_SYSCALL_64_after_hwframe+0x4b/0x53 RIP: 0033:0x7fa5627cbc5e Code: 4d 89 d8 e8 14 bd 00 00 4c 8b 5d f8 41 8b 93 08 03 00 00 59 5e 48 83 f8 fc 74 11 c9 c3 0f 1f 80 00 00 00 00 48 8b 45 10 0f 05 <c9> c3 83 e2 39 83 fa 08 75 e7 e8 13 ff ff ff 0f 1f 00 f3 0f 1e fa RSP: 002b:00007fff1fe14700 EFLAGS: 00000202 ORIG_RAX: 0000000000000001 RAX: ffffffffffffffda RBX: 0000000000000005 RCX: 00007fa5627cbc5e RDX: 0000000000001f9c RSI: 00007fff1fe16984 RDI: 0000000000000005 RBP: 00007fff1fe14710 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000202 R12: 00007fff1fe16920 R13: 0000000000002000 R14: 0000000000001f9c R15: 0000000000001f9c The packet scheduler could attempt a reinjection after receiving an MP_FAIL and before the infinite map has been transmitted, causing a deadlock since MPTCP needs to do the reinjection atomically from WRT fallback. Address the issue explicitly avoiding the reinjection in the critical scenario. Note that this is the only fallback critical section that could potentially send packets and hit the double-lock.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: net/handshake: restore destructor on submit failure handshake_req_submit() replaces sk->sk_destruct but never restores it when submission fails before the request is hashed. handshake_sk_destruct() then returns early and the original destructor never runs, leaking the socket. Restore sk_destruct on the error path.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: can: j1939: make j1939_session_activate() fail if device is no longer registered syzbot is still reporting unregister_netdevice: waiting for vcan0 to become free. Usage count = 2 even after commit 93a27b5891b8 ("can: j1939: add missing calls in NETDEV_UNREGISTER notification handler") was added. A debug printk() patch found that j1939_session_activate() can succeed even after j1939_cancel_active_session() from j1939_netdev_notify(NETDEV_UNREGISTER) has completed. Since j1939_cancel_active_session() is processed with the session list lock held, checking ndev->reg_state in j1939_session_activate() with the session list lock held can reliably close the race window.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: btrfs: fix NULL dereference on root when tracing inode eviction When evicting an inode the first thing we do is to setup tracing for it, which implies fetching the root's id. But in btrfs_evict_inode() the root might be NULL, as implied in the next check that we do in btrfs_evict_inode(). Hence, we either should set the ->root_objectid to 0 in case the root is NULL, or we move tracing setup after checking that the root is not NULL. Setting the rootid to 0 at least gives us the possibility to trace this call even in the case when the root is NULL, so that's the solution taken here.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: dmaengine: ti: dma-crossbar: fix device leak on am335x route allocation Make sure to drop the reference taken when looking up the crossbar platform device during am335x route allocation.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: dmaengine: lpc18xx-dmamux: fix device leak on route allocation Make sure to drop the reference taken when looking up the DMA mux platform device during route allocation. Note that holding a reference to a device does not prevent its driver data from going away so there is no point in keeping the reference.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: dmaengine: dw: dmamux: fix OF node leak on route allocation failure Make sure to drop the reference taken to the DMA master OF node also on late route allocation failures.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: dmaengine: bcm-sba-raid: fix device leak on probe Make sure to drop the reference taken when looking up the mailbox device during probe on probe failures and on driver unbind.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: dmaengine: at_hdmac: fix device leak on of_dma_xlate() Make sure to drop the reference taken when looking up the DMA platform device during of_dma_xlate() when releasing channel resources. Note that commit 3832b78b3ec2 ("dmaengine: at_hdmac: add missing put_device() call in at_dma_xlate()") fixed the leak in a couple of error paths but the reference is still leaking on successful allocation.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: ALSA: ac97: fix a double free in snd_ac97_controller_register() If ac97_add_adapter() fails, put_device() is the correct way to drop the device reference. kfree() is not required. Add kfree() if idr_alloc() fails and in ac97_adapter_release() to do the cleanup. Found by code review.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: btrfs: fix deadlock in wait_current_trans() due to ignored transaction type When wait_current_trans() is called during start_transaction(), it currently waits for a blocked transaction without considering whether the given transaction type actually needs to wait for that particular transaction state. The btrfs_blocked_trans_types[] array already defines which transaction types should wait for which transaction states, but this check was missing in wait_current_trans(). This can lead to a deadlock scenario involving two transactions and pending ordered extents: 1. Transaction A is in TRANS_STATE_COMMIT_DOING state 2. A worker processing an ordered extent calls start_transaction() with TRANS_JOIN 3. join_transaction() returns -EBUSY because Transaction A is in TRANS_STATE_COMMIT_DOING 4. Transaction A moves to TRANS_STATE_UNBLOCKED and completes 5. A new Transaction B is created (TRANS_STATE_RUNNING) 6. The ordered extent from step 2 is added to Transaction B's pending ordered extents 7. Transaction B immediately starts commit by another task and enters TRANS_STATE_COMMIT_START 8. The worker finally reaches wait_current_trans(), sees Transaction B in TRANS_STATE_COMMIT_START (a blocked state), and waits unconditionally 9. However, TRANS_JOIN should NOT wait for TRANS_STATE_COMMIT_START according to btrfs_blocked_trans_types[] 10. Transaction B is waiting for pending ordered extents to complete 11. Deadlock: Transaction B waits for ordered extent, ordered extent waits for Transaction B This can be illustrated by the following call stacks: CPU0 CPU1 btrfs_finish_ordered_io() start_transaction(TRANS_JOIN) join_transaction() # -EBUSY (Transaction A is # TRANS_STATE_COMMIT_DOING) # Transaction A completes # Transaction B created # ordered extent added to # Transaction B's pending list btrfs_commit_transaction() # Transaction B enters # TRANS_STATE_COMMIT_START # waiting for pending ordered # extents wait_current_trans() # waits for Transaction B # (should not wait!) Task bstore_kv_sync in btrfs_commit_transaction waiting for ordered extents: __schedule+0x2e7/0x8a0 schedule+0x64/0xe0 btrfs_commit_transaction+0xbf7/0xda0 [btrfs] btrfs_sync_file+0x342/0x4d0 [btrfs] __x64_sys_fdatasync+0x4b/0x80 do_syscall_64+0x33/0x40 entry_SYSCALL_64_after_hwframe+0x44/0xa9 Task kworker in wait_current_trans waiting for transaction commit: Workqueue: btrfs-syno_nocow btrfs_work_helper [btrfs] __schedule+0x2e7/0x8a0 schedule+0x64/0xe0 wait_current_trans+0xb0/0x110 [btrfs] start_transaction+0x346/0x5b0 [btrfs] btrfs_finish_ordered_io.isra.0+0x49b/0x9c0 [btrfs] btrfs_work_helper+0xe8/0x350 [btrfs] process_one_work+0x1d3/0x3c0 worker_thread+0x4d/0x3e0 kthread+0x12d/0x150 ret_from_fork+0x1f/0x30 Fix this by passing the transaction type to wait_current_trans() and checking btrfs_blocked_trans_types[cur_trans->state] against the given type before deciding to wait. This ensures that transaction types which are allowed to join during certain blocked states will not unnecessarily wait and cause deadlocks.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: dmaengine: xilinx: xdma: Fix regmap max_register The max_register field is assigned the size of the register memory region instead of the offset of the last register. The result is that reading from the regmap via debugfs can cause a segmentation fault: tail /sys/kernel/debug/regmap/xdma.1.auto/registers Unable to handle kernel paging request at virtual address ffff800082f70000 Mem abort info: ESR = 0x0000000096000007 EC = 0x25: DABT (current EL), IL = 32 bits SET = 0, FnV = 0 EA = 0, S1PTW = 0 FSC = 0x07: level 3 translation fault [...] Call trace: regmap_mmio_read32le+0x10/0x30 _regmap_bus_reg_read+0x74/0xc0 _regmap_read+0x68/0x198 regmap_read+0x54/0x88 regmap_read_debugfs+0x140/0x380 regmap_map_read_file+0x30/0x48 full_proxy_read+0x68/0xc8 vfs_read+0xcc/0x310 ksys_read+0x7c/0x120 __arm64_sys_read+0x24/0x40 invoke_syscall.constprop.0+0x64/0x108 do_el0_svc+0xb0/0xd8 el0_svc+0x38/0x130 el0t_64_sync_handler+0x120/0x138 el0t_64_sync+0x194/0x198 Code: aa1e03e9 d503201f f9400000 8b214000 (b9400000) ---[ end trace 0000000000000000 ]--- note: tail[1217] exited with irqs disabled note: tail[1217] exited with preempt_count 1 Segmentation fault


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: phy: stm32-usphyc: Fix off by one in probe() The "index" variable is used as an index into the usbphyc->phys[] array which has usbphyc->nphys elements. So if it is equal to usbphyc->nphys then it is one element out of bounds. The "index" comes from the device tree so it's data that we trust and it's unlikely to be wrong, however it's obviously still worth fixing the bug. Change the > to >=.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: w1: therm: Fix off-by-one buffer overflow in alarms_store The sysfs buffer passed to alarms_store() is allocated with 'size + 1' bytes and a NUL terminator is appended. However, the 'size' argument does not account for this extra byte. The original code then allocated 'size' bytes and used strcpy() to copy 'buf', which always writes one byte past the allocated buffer since strcpy() copies until the NUL terminator at index 'size'. Fix this by parsing the 'buf' parameter directly using simple_strtoll() without allocating any intermediate memory or string copying. This removes the overflow while simplifying the code.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: iio: imu: st_lsm6dsx: fix iio_chan_spec for sensors without event detection The st_lsm6dsx_acc_channels array of struct iio_chan_spec has a non-NULL event_spec field, indicating support for IIO events. However, event detection is not supported for all sensors, and if userspace tries to configure accelerometer wakeup events on a sensor device that does not support them (e.g. LSM6DS0), st_lsm6dsx_write_event() dereferences a NULL pointer when trying to write to the wakeup register. Define an additional struct iio_chan_spec array whose members have a NULL event_spec field, and use this array instead of st_lsm6dsx_acc_channels for sensors without event detection capability.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: iio: adc: at91-sama5d2_adc: Fix potential use-after-free in sama5d2_adc driver at91_adc_interrupt can call at91_adc_touch_data_handler function to start the work by schedule_work(&st->touch_st.workq). If we remove the module which will call at91_adc_remove to make cleanup, it will free indio_dev through iio_device_unregister but quite a bit later. While the work mentioned above will be used. The sequence of operations that may lead to a UAF bug is as follows: CPU0 CPU1 | at91_adc_workq_handler at91_adc_remove | iio_device_unregister(indio_dev) | //free indio_dev a bit later | | iio_push_to_buffers(indio_dev) | //use indio_dev Fix it by ensuring that the work is canceled before proceeding with the cleanup in at91_adc_remove.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: mmc: sdhci-of-dwcmshc: Prevent illegal clock reduction in HS200/HS400 mode When operating in HS200 or HS400 timing modes, reducing the clock frequency below 52MHz will lead to link broken as the Rockchip DWC MSHC controller requires maintaining a minimum clock of 52MHz in these modes. Add a check to prevent illegal clock reduction through debugfs: root@debian:/# echo 50000000 > /sys/kernel/debug/mmc0/clock root@debian:/# [ 30.090146] mmc0: running CQE recovery mmc0: cqhci: Failed to halt mmc0: cqhci: spurious TCN for tag 0 WARNING: drivers/mmc/host/cqhci-core.c:797 at cqhci_irq+0x254/0x818, CPU#1: kworker/1:0H/24 Modules linked in: CPU: 1 UID: 0 PID: 24 Comm: kworker/1:0H Not tainted 6.19.0-rc1-00001-g09db0998649d-dirty #204 PREEMPT Hardware name: Rockchip RK3588 EVB1 V10 Board (DT) Workqueue: kblockd blk_mq_run_work_fn pstate: 604000c9 (nZCv daIF +PAN -UAO -TCO -DIT -SSBS BTYPE=--) pc : cqhci_irq+0x254/0x818 lr : cqhci_irq+0x254/0x818 ...


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: wifi: wlcore: ensure skb headroom before skb_push This avoids occasional skb_under_panic Oops from wl1271_tx_work. In this case, headroom is less than needed (typically 110 - 94 = 16 bytes).


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: wifi: mac80211: ocb: skip rx_no_sta when interface is not joined ieee80211_ocb_rx_no_sta() assumes a valid channel context, which is only present after JOIN_OCB. RX may run before JOIN_OCB is executed, in which case the OCB interface is not operational. Skip RX peer handling when the interface is not joined to avoid warnings in the RX path.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: md: suspend array while updating raid_disks via sysfs In raid1_reshape(), freeze_array() is called before modifying the r1bio memory pool (conf->r1bio_pool) and conf->raid_disks, and unfreeze_array() is called after the update is completed. However, freeze_array() only waits until nr_sync_pending and (nr_pending - nr_queued) of all buckets reaches zero. When an I/O error occurs, nr_queued is increased and the corresponding r1bio is queued to either retry_list or bio_end_io_list. As a result, freeze_array() may unblock before these r1bios are released. This can lead to a situation where conf->raid_disks and the mempool have already been updated while queued r1bios, allocated with the old raid_disks value, are later released. Consequently, free_r1bio() may access memory out of bounds in put_all_bios() and release r1bios of the wrong size to the new mempool, potentially causing issues with the mempool as well. Since only normal I/O might increase nr_queued while an I/O error occurs, suspending the array avoids this issue. Note: Updating raid_disks via ioctl SET_ARRAY_INFO already suspends the array. Therefore, we suspend the array when updating raid_disks via sysfs to avoid this issue too.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: wifi: rtw88: Fix alignment fault in rtw_core_enable_beacon() rtw_core_enable_beacon() reads 4 bytes from an address that is not a multiple of 4. This results in a crash on some systems. Do 1 byte reads/writes instead. Unable to handle kernel paging request at virtual address ffff8000827e0522 Mem abort info: ESR = 0x0000000096000021 EC = 0x25: DABT (current EL), IL = 32 bits SET = 0, FnV = 0 EA = 0, S1PTW = 0 FSC = 0x21: alignment fault Data abort info: ISV = 0, ISS = 0x00000021, ISS2 = 0x00000000 CM = 0, WnR = 0, TnD = 0, TagAccess = 0 GCS = 0, Overlay = 0, DirtyBit = 0, Xs = 0 swapper pgtable: 4k pages, 48-bit VAs, pgdp=0000000005492000 [ffff8000827e0522] pgd=0000000000000000, p4d=10000001021d9403, pud=10000001021da403, pmd=100000011061c403, pte=00780000f3200f13 Internal error: Oops: 0000000096000021 [#1] SMP Modules linked in: [...] rtw88_8822ce rtw88_8822c rtw88_pci rtw88_core [...] CPU: 0 UID: 0 PID: 73 Comm: kworker/u32:2 Tainted: G W 6.17.9 #1-NixOS VOLUNTARY Tainted: [W]=WARN Hardware name: FriendlyElec NanoPC-T6 LTS (DT) Workqueue: phy0 rtw_c2h_work [rtw88_core] pstate: 60400009 (nZCv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--) pc : rtw_pci_read32+0x18/0x40 [rtw88_pci] lr : rtw_core_enable_beacon+0xe0/0x148 [rtw88_core] sp : ffff800080cc3ca0 x29: ffff800080cc3ca0 x28: ffff0001031fc240 x27: ffff000102100828 x26: ffffd2cb7c9b4088 x25: ffff0001031fc2c0 x24: ffff000112fdef00 x23: ffff000112fdef18 x22: ffff000111c29970 x21: 0000000000000001 x20: 0000000000000001 x19: ffff000111c22040 x18: 0000000000000000 x17: 0000000000000000 x16: 0000000000000000 x15: 0000000000000000 x14: 0000000000000000 x13: 0000000000000000 x12: 0000000000000000 x11: 0000000000000000 x10: 0000000000000000 x9 : ffffd2cb6507c090 x8 : 0000000000000000 x7 : 0000000000000000 x6 : 0000000000000000 x5 : 0000000000000000 x4 : 0000000000000000 x3 : 0000000000000000 x2 : 0000000000007f10 x1 : 0000000000000522 x0 : ffff8000827e0522 Call trace: rtw_pci_read32+0x18/0x40 [rtw88_pci] (P) rtw_hw_scan_chan_switch+0x124/0x1a8 [rtw88_core] rtw_fw_c2h_cmd_handle+0x254/0x290 [rtw88_core] rtw_c2h_work+0x50/0x98 [rtw88_core] process_one_work+0x178/0x3f8 worker_thread+0x208/0x418 kthread+0x120/0x220 ret_from_fork+0x10/0x20 Code: d28fe202 8b020000 f9524400 8b214000 (b9400000) ---[ end trace 0000000000000000 ]---


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: crypto: iaa - Fix out-of-bounds index in find_empty_iaa_compression_mode The local variable 'i' is initialized with -EINVAL, but the for loop immediately overwrites it and -EINVAL is never returned. If no empty compression mode can be found, the function would return the out-of-bounds index IAA_COMP_MODES_MAX, which would cause an invalid array access in add_iaa_compression_mode(). Fix both issues by returning either a valid index or -EINVAL.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: scsi: qla2xxx: Free sp in error path to fix system crash System crash seen during load/unload test in a loop, [61110.449331] qla2xxx [0000:27:00.0]-0042:0: Disabled MSI-X. [61110.467494] ============================================================================= [61110.467498] BUG qla2xxx_srbs (Tainted: G OE -------- --- ): Objects remaining in qla2xxx_srbs on __kmem_cache_shutdown() [61110.467501] ----------------------------------------------------------------------------- [61110.467502] Slab 0x000000000ffc8162 objects=51 used=1 fp=0x00000000e25d3d85 flags=0x57ffffc0010200(slab|head|node=1|zone=2|lastcpupid=0x1fffff) [61110.467509] CPU: 53 PID: 455206 Comm: rmmod Kdump: loaded Tainted: G OE -------- --- 5.14.0-284.11.1.el9_2.x86_64 #1 [61110.467513] Hardware name: HPE ProLiant DL385 Gen10 Plus v2/ProLiant DL385 Gen10 Plus v2, BIOS A42 08/17/2023 [61110.467515] Call Trace: [61110.467516] <TASK> [61110.467519] dump_stack_lvl+0x34/0x48 [61110.467526] slab_err.cold+0x53/0x67 [61110.467534] __kmem_cache_shutdown+0x16e/0x320 [61110.467540] kmem_cache_destroy+0x51/0x160 [61110.467544] qla2x00_module_exit+0x93/0x99 [qla2xxx] [61110.467607] ? __do_sys_delete_module.constprop.0+0x178/0x280 [61110.467613] ? syscall_trace_enter.constprop.0+0x145/0x1d0 [61110.467616] ? do_syscall_64+0x5c/0x90 [61110.467619] ? exc_page_fault+0x62/0x150 [61110.467622] ? entry_SYSCALL_64_after_hwframe+0x63/0xcd [61110.467626] </TASK> [61110.467627] Disabling lock debugging due to kernel taint [61110.467635] Object 0x0000000026f7e6e6 @offset=16000 [61110.467639] ------------[ cut here ]------------ [61110.467639] kmem_cache_destroy qla2xxx_srbs: Slab cache still has objects when called from qla2x00_module_exit+0x93/0x99 [qla2xxx] [61110.467659] WARNING: CPU: 53 PID: 455206 at mm/slab_common.c:520 kmem_cache_destroy+0x14d/0x160 [61110.467718] CPU: 53 PID: 455206 Comm: rmmod Kdump: loaded Tainted: G B OE -------- --- 5.14.0-284.11.1.el9_2.x86_64 #1 [61110.467720] Hardware name: HPE ProLiant DL385 Gen10 Plus v2/ProLiant DL385 Gen10 Plus v2, BIOS A42 08/17/2023 [61110.467721] RIP: 0010:kmem_cache_destroy+0x14d/0x160 [61110.467724] Code: 99 7d 07 00 48 89 ef e8 e1 6a 07 00 eb b3 48 8b 55 60 48 8b 4c 24 20 48 c7 c6 70 fc 66 90 48 c7 c7 f8 ef a1 90 e8 e1 ed 7c 00 <0f> 0b eb 93 c3 cc cc cc cc 66 2e 0f 1f 84 00 00 00 00 00 55 48 89 [61110.467725] RSP: 0018:ffffa304e489fe80 EFLAGS: 00010282 [61110.467727] RAX: 0000000000000000 RBX: ffffffffc0d9a860 RCX: 0000000000000027 [61110.467729] RDX: ffff8fd5ff9598a8 RSI: 0000000000000001 RDI: ffff8fd5ff9598a0 [61110.467730] RBP: ffff8fb6aaf78700 R08: 0000000000000000 R09: 0000000100d863b7 [61110.467731] R10: ffffa304e489fd20 R11: ffffffff913bef48 R12: 0000000040002000 [61110.467731] R13: 0000000000000000 R14: 0000000000000000 R15: 0000000000000000 [61110.467733] FS: 00007f64c89fb740(0000) GS:ffff8fd5ff940000(0000) knlGS:0000000000000000 [61110.467734] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [61110.467735] CR2: 00007f0f02bfe000 CR3: 00000020ad6dc005 CR4: 0000000000770ee0 [61110.467736] PKRU: 55555554 [61110.467737] Call Trace: [61110.467738] <TASK> [61110.467739] qla2x00_module_exit+0x93/0x99 [qla2xxx] [61110.467755] ? __do_sys_delete_module.constprop.0+0x178/0x280 Free sp in the error path to fix the crash.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: wifi: rtl8xxxu: fix slab-out-of-bounds in rtl8xxxu_sta_add The driver does not set hw->sta_data_size, which causes mac80211 to allocate insufficient space for driver private station data in __sta_info_alloc(). When rtl8xxxu_sta_add() accesses members of struct rtl8xxxu_sta_info through sta->drv_priv, this results in a slab-out-of-bounds write. KASAN report on RISC-V (VisionFive 2) with RTL8192EU adapter: BUG: KASAN: slab-out-of-bounds in rtl8xxxu_sta_add+0x31c/0x346 Write of size 8 at addr ffffffd6d3e9ae88 by task kworker/u16:0/12 Set hw->sta_data_size to sizeof(struct rtl8xxxu_sta_info) during probe, similar to how hw->vif_data_size is configured. This ensures mac80211 allocates sufficient space for the driver's per-station private data. Tested on StarFive VisionFive 2 v1.2A board.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: scsi: qla2xxx: Delay module unload while fabric scan in progress System crash seen during load/unload test in a loop. [105954.384919] RBP: ffff914589838dc0 R08: 0000000000000000 R09: 0000000000000086 [105954.384920] R10: 000000000000000f R11: ffffa31240904be5 R12: ffff914605f868e0 [105954.384921] R13: ffff914605f86910 R14: 0000000000008010 R15: 00000000ddb7c000 [105954.384923] FS: 0000000000000000(0000) GS:ffff9163fec40000(0000) knlGS:0000000000000000 [105954.384925] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [105954.384926] CR2: 000055d31ce1d6a0 CR3: 0000000119f5e001 CR4: 0000000000770ee0 [105954.384928] PKRU: 55555554 [105954.384929] Call Trace: [105954.384931] <IRQ> [105954.384934] qla24xx_sp_unmap+0x1f3/0x2a0 [qla2xxx] [105954.384962] ? qla_async_scan_sp_done+0x114/0x1f0 [qla2xxx] [105954.384980] ? qla24xx_els_ct_entry+0x4de/0x760 [qla2xxx] [105954.384999] ? __wake_up_common+0x80/0x190 [105954.385004] ? qla24xx_process_response_queue+0xc2/0xaa0 [qla2xxx] [105954.385023] ? qla24xx_msix_rsp_q+0x44/0xb0 [qla2xxx] [105954.385040] ? __handle_irq_event_percpu+0x3d/0x190 [105954.385044] ? handle_irq_event+0x58/0xb0 [105954.385046] ? handle_edge_irq+0x93/0x240 [105954.385050] ? __common_interrupt+0x41/0xa0 [105954.385055] ? common_interrupt+0x3e/0xa0 [105954.385060] ? asm_common_interrupt+0x22/0x40 The root cause of this was that there was a free (dma_free_attrs) in the interrupt context. There was a device discovery/fabric scan in progress. A module unload was issued which set the UNLOADING flag. As part of the discovery, after receiving an interrupt a work queue was scheduled (which involved a work to be queued). Since the UNLOADING flag is set, the work item was not allocated and the mapped memory had to be freed. The free occurred in interrupt context leading to system crash. Delay the driver unload until the fabric scan is complete to avoid the crash.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: scsi: qla2xxx: Validate sp before freeing associated memory System crash with the following signature [154563.214890] nvme nvme2: NVME-FC{1}: controller connect complete [154564.169363] qla2xxx [0000:b0:00.1]-3002:2: nvme: Sched: Set ZIO exchange threshold to 3. [154564.169405] qla2xxx [0000:b0:00.1]-ffffff:2: SET ZIO Activity exchange threshold to 5. [154565.539974] qla2xxx [0000:b0:00.1]-5013:2: RSCN database changed - 0078 0080 0000. [154565.545744] qla2xxx [0000:b0:00.1]-5013:2: RSCN database changed - 0078 00a0 0000. [154565.545857] qla2xxx [0000:b0:00.1]-11a2:2: FEC=enabled (data rate). [154565.552760] qla2xxx [0000:b0:00.1]-11a2:2: FEC=enabled (data rate). [154565.553079] BUG: kernel NULL pointer dereference, address: 00000000000000f8 [154565.553080] #PF: supervisor read access in kernel mode [154565.553082] #PF: error_code(0x0000) - not-present page [154565.553084] PGD 80000010488ab067 P4D 80000010488ab067 PUD 104978a067 PMD 0 [154565.553089] Oops: 0000 1 PREEMPT SMP PTI [154565.553092] CPU: 10 PID: 858 Comm: qla2xxx_2_dpc Kdump: loaded Tainted: G OE ------- --- 5.14.0-503.11.1.el9_5.x86_64 #1 [154565.553096] Hardware name: HPE Synergy 660 Gen10/Synergy 660 Gen10 Compute Module, BIOS I43 09/30/2024 [154565.553097] RIP: 0010:qla_fab_async_scan.part.0+0x40b/0x870 [qla2xxx] [154565.553141] Code: 00 00 e8 58 a3 ec d4 49 89 e9 ba 12 20 00 00 4c 89 e6 49 c7 c0 00 ee a8 c0 48 c7 c1 66 c0 a9 c0 bf 00 80 00 10 e8 15 69 00 00 <4c> 8b 8d f8 00 00 00 4d 85 c9 74 35 49 8b 84 24 00 19 00 00 48 8b [154565.553143] RSP: 0018:ffffb4dbc8aebdd0 EFLAGS: 00010286 [154565.553145] RAX: 0000000000000000 RBX: ffff8ec2cf0908d0 RCX: 0000000000000002 [154565.553147] RDX: 0000000000000000 RSI: ffffffffc0a9c896 RDI: ffffb4dbc8aebd47 [154565.553148] RBP: 0000000000000000 R08: ffffb4dbc8aebd45 R09: 0000000000ffff0a [154565.553150] R10: 0000000000000000 R11: 000000000000000f R12: ffff8ec2cf0908d0 [154565.553151] R13: ffff8ec2cf090900 R14: 0000000000000102 R15: ffff8ec2cf084000 [154565.553152] FS: 0000000000000000(0000) GS:ffff8ed27f800000(0000) knlGS:0000000000000000 [154565.553154] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [154565.553155] CR2: 00000000000000f8 CR3: 000000113ae0a005 CR4: 00000000007706f0 [154565.553157] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 [154565.553158] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 [154565.553159] PKRU: 55555554 [154565.553160] Call Trace: [154565.553162] <TASK> [154565.553165] ? show_trace_log_lvl+0x1c4/0x2df [154565.553172] ? show_trace_log_lvl+0x1c4/0x2df [154565.553177] ? qla_fab_async_scan.part.0+0x40b/0x870 [qla2xxx] [154565.553215] ? __die_body.cold+0x8/0xd [154565.553218] ? page_fault_oops+0x134/0x170 [154565.553223] ? snprintf+0x49/0x70 [154565.553229] ? exc_page_fault+0x62/0x150 [154565.553238] ? asm_exc_page_fault+0x22/0x30 Check for sp being non NULL before freeing any associated memory


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: net: fix memory leak in skb_segment_list for GRO packets When skb_segment_list() is called during packet forwarding, it handles packets that were aggregated by the GRO engine. Historically, the segmentation logic in skb_segment_list assumes that individual segments are split from a parent SKB and may need to carry their own socket memory accounting. Accordingly, the code transfers truesize from the parent to the newly created segments. Prior to commit ed4cccef64c1 ("gro: fix ownership transfer"), this truesize subtraction in skb_segment_list() was valid because fragments still carry a reference to the original socket. However, commit ed4cccef64c1 ("gro: fix ownership transfer") changed this behavior by ensuring that fraglist entries are explicitly orphaned (skb->sk = NULL) to prevent illegal orphaning later in the stack. This change meant that the entire socket memory charge remained with the head SKB, but the corresponding accounting logic in skb_segment_list() was never updated. As a result, the current code unconditionally adds each fragment's truesize to delta_truesize and subtracts it from the parent SKB. Since the fragments are no longer charged to the socket, this subtraction results in an effective under-count of memory when the head is freed. This causes sk_wmem_alloc to remain non-zero, preventing socket destruction and leading to a persistent memory leak. The leak can be observed via KMEMLEAK when tearing down the networking environment: unreferenced object 0xffff8881e6eb9100 (size 2048): comm "ping", pid 6720, jiffies 4295492526 backtrace: kmem_cache_alloc_noprof+0x5c6/0x800 sk_prot_alloc+0x5b/0x220 sk_alloc+0x35/0xa00 inet6_create.part.0+0x303/0x10d0 __sock_create+0x248/0x640 __sys_socket+0x11b/0x1d0 Since skb_segment_list() is exclusively used for SKB_GSO_FRAGLIST packets constructed by GRO, the truesize adjustment is removed. The call to skb_release_head_state() must be preserved. As documented in commit cf673ed0e057 ("net: fix fraglist segmentation reference count leak"), it is still required to correctly drop references to SKB extensions that may be overwritten during __copy_skb_header().


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: net: mscc: ocelot: Fix crash when adding interface under a lag Commit 15faa1f67ab4 ("lan966x: Fix crash when adding interface under a lag") fixed a similar issue in the lan966x driver caused by a NULL pointer dereference. The ocelot_set_aggr_pgids() function in the ocelot driver has similar logic and is susceptible to the same crash. This issue specifically affects the ocelot_vsc7514.c frontend, which leaves unused ports as NULL pointers. The felix_vsc9959.c frontend is unaffected as it uses the DSA framework which registers all ports. Fix this by checking if the port pointer is valid before accessing it.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: nfsd: check that server is running in unlock_filesystem If we are trying to unlock the filesystem via an administrative interface and nfsd isn't running, it crashes the server. This happens currently because nfsd4_revoke_states() access state structures (eg., conf_id_hashtbl) that has been freed as a part of the server shutdown. [ 59.465072] Call trace: [ 59.465308] nfsd4_revoke_states+0x1b4/0x898 [nfsd] (P) [ 59.465830] write_unlock_fs+0x258/0x440 [nfsd] [ 59.466278] nfsctl_transaction_write+0xb0/0x120 [nfsd] [ 59.466780] vfs_write+0x1f0/0x938 [ 59.467088] ksys_write+0xfc/0x1f8 [ 59.467395] __arm64_sys_write+0x74/0xb8 [ 59.467746] invoke_syscall.constprop.0+0xdc/0x1e8 [ 59.468177] do_el0_svc+0x154/0x1d8 [ 59.468489] el0_svc+0x40/0xe0 [ 59.468767] el0t_64_sync_handler+0xa0/0xe8 [ 59.469138] el0t_64_sync+0x1ac/0x1b0 Ensure this can't happen by taking the nfsd_mutex and checking that the server is still up, and then holding the mutex across the call to nfsd4_revoke_states().


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: nvme-tcp: fix NULL pointer dereferences in nvmet_tcp_build_pdu_iovec Commit efa56305908b ("nvmet-tcp: Fix a kernel panic when host sends an invalid H2C PDU length") added ttag bounds checking and data_offset validation in nvmet_tcp_handle_h2c_data_pdu(), but it did not validate whether the command's data structures (cmd->req.sg and cmd->iov) have been properly initialized before processing H2C_DATA PDUs. The nvmet_tcp_build_pdu_iovec() function dereferences these pointers without NULL checks. This can be triggered by sending H2C_DATA PDU immediately after the ICREQ/ICRESP handshake, before sending a CONNECT command or NVMe write command. Attack vectors that trigger NULL pointer dereferences: 1. H2C_DATA PDU sent before CONNECT -> both pointers NULL 2. H2C_DATA PDU for READ command -> cmd->req.sg allocated, cmd->iov NULL 3. H2C_DATA PDU for uninitialized command slot -> both pointers NULL The fix validates both cmd->req.sg and cmd->iov before calling nvmet_tcp_build_pdu_iovec(). Both checks are required because: - Uninitialized commands: both NULL - READ commands: cmd->req.sg allocated, cmd->iov NULL - WRITE commands: both allocated


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: ip6_tunnel: use skb_vlan_inet_prepare() in __ip6_tnl_rcv() Blamed commit did not take care of VLAN encapsulations as spotted by syzbot [1]. Use skb_vlan_inet_prepare() instead of pskb_inet_may_pull(). [1] BUG: KMSAN: uninit-value in __INET_ECN_decapsulate include/net/inet_ecn.h:253 [inline] BUG: KMSAN: uninit-value in INET_ECN_decapsulate include/net/inet_ecn.h:275 [inline] BUG: KMSAN: uninit-value in IP6_ECN_decapsulate+0x7a8/0x1fa0 include/net/inet_ecn.h:321 __INET_ECN_decapsulate include/net/inet_ecn.h:253 [inline] INET_ECN_decapsulate include/net/inet_ecn.h:275 [inline] IP6_ECN_decapsulate+0x7a8/0x1fa0 include/net/inet_ecn.h:321 ip6ip6_dscp_ecn_decapsulate+0x16f/0x1b0 net/ipv6/ip6_tunnel.c:729 __ip6_tnl_rcv+0xed9/0x1b50 net/ipv6/ip6_tunnel.c:860 ip6_tnl_rcv+0xc3/0x100 net/ipv6/ip6_tunnel.c:903 gre_rcv+0x1529/0x1b90 net/ipv6/ip6_gre.c:-1 ip6_protocol_deliver_rcu+0x1c89/0x2c60 net/ipv6/ip6_input.c:438 ip6_input_finish+0x1f4/0x4a0 net/ipv6/ip6_input.c:489 NF_HOOK include/linux/netfilter.h:318 [inline] ip6_input+0x9c/0x330 net/ipv6/ip6_input.c:500 ip6_mc_input+0x7ca/0xc10 net/ipv6/ip6_input.c:590 dst_input include/net/dst.h:474 [inline] ip6_rcv_finish+0x958/0x990 net/ipv6/ip6_input.c:79 NF_HOOK include/linux/netfilter.h:318 [inline] ipv6_rcv+0xf1/0x3c0 net/ipv6/ip6_input.c:311 __netif_receive_skb_one_core net/core/dev.c:6139 [inline] __netif_receive_skb+0x1df/0xac0 net/core/dev.c:6252 netif_receive_skb_internal net/core/dev.c:6338 [inline] netif_receive_skb+0x57/0x630 net/core/dev.c:6397 tun_rx_batched+0x1df/0x980 drivers/net/tun.c:1485 tun_get_user+0x5c0e/0x6c60 drivers/net/tun.c:1953 tun_chr_write_iter+0x3e9/0x5c0 drivers/net/tun.c:1999 new_sync_write fs/read_write.c:593 [inline] vfs_write+0xbe2/0x15d0 fs/read_write.c:686 ksys_write fs/read_write.c:738 [inline] __do_sys_write fs/read_write.c:749 [inline] __se_sys_write fs/read_write.c:746 [inline] __x64_sys_write+0x1fb/0x4d0 fs/read_write.c:746 x64_sys_call+0x30ab/0x3e70 arch/x86/include/generated/asm/syscalls_64.h:2 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline] do_syscall_64+0xd3/0xf80 arch/x86/entry/syscall_64.c:94 entry_SYSCALL_64_after_hwframe+0x77/0x7f Uninit was created at: slab_post_alloc_hook mm/slub.c:4960 [inline] slab_alloc_node mm/slub.c:5263 [inline] kmem_cache_alloc_node_noprof+0x9e7/0x17a0 mm/slub.c:5315 kmalloc_reserve+0x13c/0x4b0 net/core/skbuff.c:586 __alloc_skb+0x805/0x1040 net/core/skbuff.c:690 alloc_skb include/linux/skbuff.h:1383 [inline] alloc_skb_with_frags+0xc5/0xa60 net/core/skbuff.c:6712 sock_alloc_send_pskb+0xacc/0xc60 net/core/sock.c:2995 tun_alloc_skb drivers/net/tun.c:1461 [inline] tun_get_user+0x1142/0x6c60 drivers/net/tun.c:1794 tun_chr_write_iter+0x3e9/0x5c0 drivers/net/tun.c:1999 new_sync_write fs/read_write.c:593 [inline] vfs_write+0xbe2/0x15d0 fs/read_write.c:686 ksys_write fs/read_write.c:738 [inline] __do_sys_write fs/read_write.c:749 [inline] __se_sys_write fs/read_write.c:746 [inline] __x64_sys_write+0x1fb/0x4d0 fs/read_write.c:746 x64_sys_call+0x30ab/0x3e70 arch/x86/include/generated/asm/syscalls_64.h:2 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline] do_syscall_64+0xd3/0xf80 arch/x86/entry/syscall_64.c:94 entry_SYSCALL_64_after_hwframe+0x77/0x7f CPU: 0 UID: 0 PID: 6465 Comm: syz.0.17 Not tainted syzkaller #0 PREEMPT(none) Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 10/25/2025


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: dst: fix races in rt6_uncached_list_del() and rt_del_uncached_list() syzbot was able to crash the kernel in rt6_uncached_list_flush_dev() in an interesting way [1] Crash happens in list_del_init()/INIT_LIST_HEAD() while writing list->prev, while the prior write on list->next went well. static inline void INIT_LIST_HEAD(struct list_head *list) { WRITE_ONCE(list->next, list); // This went well WRITE_ONCE(list->prev, list); // Crash, @list has been freed. } Issue here is that rt6_uncached_list_del() did not attempt to lock ul->lock, as list_empty(&rt->dst.rt_uncached) returned true because the WRITE_ONCE(list->next, list) happened on the other CPU. We might use list_del_init_careful() and list_empty_careful(), or make sure rt6_uncached_list_del() always grabs the spinlock whenever rt->dst.rt_uncached_list has been set. A similar fix is neeed for IPv4. [1] BUG: KASAN: slab-use-after-free in INIT_LIST_HEAD include/linux/list.h:46 [inline] BUG: KASAN: slab-use-after-free in list_del_init include/linux/list.h:296 [inline] BUG: KASAN: slab-use-after-free in rt6_uncached_list_flush_dev net/ipv6/route.c:191 [inline] BUG: KASAN: slab-use-after-free in rt6_disable_ip+0x633/0x730 net/ipv6/route.c:5020 Write of size 8 at addr ffff8880294cfa78 by task kworker/u8:14/3450 CPU: 0 UID: 0 PID: 3450 Comm: kworker/u8:14 Tainted: G L syzkaller #0 PREEMPT_{RT,(full)} Tainted: [L]=SOFTLOCKUP Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 10/25/2025 Workqueue: netns cleanup_net Call Trace: <TASK> dump_stack_lvl+0xe8/0x150 lib/dump_stack.c:120 print_address_description mm/kasan/report.c:378 [inline] print_report+0xca/0x240 mm/kasan/report.c:482 kasan_report+0x118/0x150 mm/kasan/report.c:595 INIT_LIST_HEAD include/linux/list.h:46 [inline] list_del_init include/linux/list.h:296 [inline] rt6_uncached_list_flush_dev net/ipv6/route.c:191 [inline] rt6_disable_ip+0x633/0x730 net/ipv6/route.c:5020 addrconf_ifdown+0x143/0x18a0 net/ipv6/addrconf.c:3853 addrconf_notify+0x1bc/0x1050 net/ipv6/addrconf.c:-1 notifier_call_chain+0x19d/0x3a0 kernel/notifier.c:85 call_netdevice_notifiers_extack net/core/dev.c:2268 [inline] call_netdevice_notifiers net/core/dev.c:2282 [inline] netif_close_many+0x29c/0x410 net/core/dev.c:1785 unregister_netdevice_many_notify+0xb50/0x2330 net/core/dev.c:12353 ops_exit_rtnl_list net/core/net_namespace.c:187 [inline] ops_undo_list+0x3dc/0x990 net/core/net_namespace.c:248 cleanup_net+0x4de/0x7b0 net/core/net_namespace.c:696 process_one_work kernel/workqueue.c:3257 [inline] process_scheduled_works+0xad1/0x1770 kernel/workqueue.c:3340 worker_thread+0x8a0/0xda0 kernel/workqueue.c:3421 kthread+0x711/0x8a0 kernel/kthread.c:463 ret_from_fork+0x510/0xa50 arch/x86/kernel/process.c:158 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:246 </TASK> Allocated by task 803: kasan_save_stack mm/kasan/common.c:57 [inline] kasan_save_track+0x3e/0x80 mm/kasan/common.c:78 unpoison_slab_object mm/kasan/common.c:340 [inline] __kasan_slab_alloc+0x6c/0x80 mm/kasan/common.c:366 kasan_slab_alloc include/linux/kasan.h:253 [inline] slab_post_alloc_hook mm/slub.c:4953 [inline] slab_alloc_node mm/slub.c:5263 [inline] kmem_cache_alloc_noprof+0x18d/0x6c0 mm/slub.c:5270 dst_alloc+0x105/0x170 net/core/dst.c:89 ip6_dst_alloc net/ipv6/route.c:342 [inline] icmp6_dst_alloc+0x75/0x460 net/ipv6/route.c:3333 mld_sendpack+0x683/0xe60 net/ipv6/mcast.c:1844 mld_send_cr net/ipv6/mcast.c:2154 [inline] mld_ifc_work+0x83e/0xd60 net/ipv6/mcast.c:2693 process_one_work kernel/workqueue.c:3257 [inline] process_scheduled_works+0xad1/0x1770 kernel/workqueue.c:3340 worker_thread+0x8a0/0xda0 kernel/workqueue.c:3421 kthread+0x711/0x8a0 kernel/kthread.c:463 ret_from_fork+0x510/0xa50 arch/x86/kernel/process.c:158 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entr ---truncated---


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: ipv6: Fix use-after-free in inet6_addr_del(). syzbot reported use-after-free of inet6_ifaddr in inet6_addr_del(). [0] The cited commit accidentally moved ipv6_del_addr() for mngtmpaddr before reading its ifp->flags for temporary addresses in inet6_addr_del(). Let's move ipv6_del_addr() down to fix the UAF. [0]: BUG: KASAN: slab-use-after-free in inet6_addr_del.constprop.0+0x67a/0x6b0 net/ipv6/addrconf.c:3117 Read of size 4 at addr ffff88807b89c86c by task syz.3.1618/9593 CPU: 0 UID: 0 PID: 9593 Comm: syz.3.1618 Not tainted syzkaller #0 PREEMPT(full) Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 10/25/2025 Call Trace: <TASK> __dump_stack lib/dump_stack.c:94 [inline] dump_stack_lvl+0x116/0x1f0 lib/dump_stack.c:120 print_address_description mm/kasan/report.c:378 [inline] print_report+0xcd/0x630 mm/kasan/report.c:482 kasan_report+0xe0/0x110 mm/kasan/report.c:595 inet6_addr_del.constprop.0+0x67a/0x6b0 net/ipv6/addrconf.c:3117 addrconf_del_ifaddr+0x11e/0x190 net/ipv6/addrconf.c:3181 inet6_ioctl+0x1e5/0x2b0 net/ipv6/af_inet6.c:582 sock_do_ioctl+0x118/0x280 net/socket.c:1254 sock_ioctl+0x227/0x6b0 net/socket.c:1375 vfs_ioctl fs/ioctl.c:51 [inline] __do_sys_ioctl fs/ioctl.c:597 [inline] __se_sys_ioctl fs/ioctl.c:583 [inline] __x64_sys_ioctl+0x18e/0x210 fs/ioctl.c:583 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline] do_syscall_64+0xcd/0xf80 arch/x86/entry/syscall_64.c:94 entry_SYSCALL_64_after_hwframe+0x77/0x7f RIP: 0033:0x7f164cf8f749 Code: ff ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 00 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 a8 ff ff ff f7 d8 64 89 01 48 RSP: 002b:00007f164de64038 EFLAGS: 00000246 ORIG_RAX: 0000000000000010 RAX: ffffffffffffffda RBX: 00007f164d1e5fa0 RCX: 00007f164cf8f749 RDX: 0000200000000000 RSI: 0000000000008936 RDI: 0000000000000003 RBP: 00007f164d013f91 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000 R13: 00007f164d1e6038 R14: 00007f164d1e5fa0 R15: 00007ffde15c8288 </TASK> Allocated by task 9593: kasan_save_stack+0x33/0x60 mm/kasan/common.c:56 kasan_save_track+0x14/0x30 mm/kasan/common.c:77 poison_kmalloc_redzone mm/kasan/common.c:397 [inline] __kasan_kmalloc+0xaa/0xb0 mm/kasan/common.c:414 kmalloc_noprof include/linux/slab.h:957 [inline] kzalloc_noprof include/linux/slab.h:1094 [inline] ipv6_add_addr+0x4e3/0x2010 net/ipv6/addrconf.c:1120 inet6_addr_add+0x256/0x9b0 net/ipv6/addrconf.c:3050 addrconf_add_ifaddr+0x1fc/0x450 net/ipv6/addrconf.c:3160 inet6_ioctl+0x103/0x2b0 net/ipv6/af_inet6.c:580 sock_do_ioctl+0x118/0x280 net/socket.c:1254 sock_ioctl+0x227/0x6b0 net/socket.c:1375 vfs_ioctl fs/ioctl.c:51 [inline] __do_sys_ioctl fs/ioctl.c:597 [inline] __se_sys_ioctl fs/ioctl.c:583 [inline] __x64_sys_ioctl+0x18e/0x210 fs/ioctl.c:583 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline] do_syscall_64+0xcd/0xf80 arch/x86/entry/syscall_64.c:94 entry_SYSCALL_64_after_hwframe+0x77/0x7f Freed by task 6099: kasan_save_stack+0x33/0x60 mm/kasan/common.c:56 kasan_save_track+0x14/0x30 mm/kasan/common.c:77 kasan_save_free_info+0x3b/0x60 mm/kasan/generic.c:584 poison_slab_object mm/kasan/common.c:252 [inline] __kasan_slab_free+0x5f/0x80 mm/kasan/common.c:284 kasan_slab_free include/linux/kasan.h:234 [inline] slab_free_hook mm/slub.c:2540 [inline] slab_free_freelist_hook mm/slub.c:2569 [inline] slab_free_bulk mm/slub.c:6696 [inline] kmem_cache_free_bulk mm/slub.c:7383 [inline] kmem_cache_free_bulk+0x2bf/0x680 mm/slub.c:7362 kfree_bulk include/linux/slab.h:830 [inline] kvfree_rcu_bulk+0x1b7/0x1e0 mm/slab_common.c:1523 kvfree_rcu_drain_ready mm/slab_common.c:1728 [inline] kfree_rcu_monitor+0x1d0/0x2f0 mm/slab_common.c:1801 process_one_work+0x9ba/0x1b20 kernel/workqueue.c:3257 process_scheduled_works kernel/workqu ---truncated---


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: idpf: fix error handling in the init_task on load If the init_task fails during a driver load, we end up without vports and netdevs, effectively failing the entire process. In that state a subsequent reset will result in a crash as the service task attempts to access uninitialized resources. Following trace is from an error in the init_task where the CREATE_VPORT (op 501) is rejected by the FW: [40922.763136] idpf 0000:83:00.0: Device HW Reset initiated [40924.449797] idpf 0000:83:00.0: Transaction failed (op 501) [40958.148190] idpf 0000:83:00.0: HW reset detected [40958.161202] BUG: kernel NULL pointer dereference, address: 00000000000000a8 ... [40958.168094] Workqueue: idpf-0000:83:00.0-vc_event idpf_vc_event_task [idpf] [40958.168865] RIP: 0010:idpf_vc_event_task+0x9b/0x350 [idpf] ... [40958.177932] Call Trace: [40958.178491] <TASK> [40958.179040] process_one_work+0x226/0x6d0 [40958.179609] worker_thread+0x19e/0x340 [40958.180158] ? __pfx_worker_thread+0x10/0x10 [40958.180702] kthread+0x10f/0x250 [40958.181238] ? __pfx_kthread+0x10/0x10 [40958.181774] ret_from_fork+0x251/0x2b0 [40958.182307] ? __pfx_kthread+0x10/0x10 [40958.182834] ret_from_fork_asm+0x1a/0x30 [40958.183370] </TASK> Fix the error handling in the init_task to make sure the service and mailbox tasks are disabled if the error happens during load. These are started in idpf_vc_core_init(), which spawns the init_task and has no way of knowing if it failed. If the error happens on reset, following successful driver load, the tasks can still run, as that will allow the netdevs to attempt recovery through another reset. Stop the PTP callbacks either way as those will be restarted by the call to idpf_vc_core_init() during a successful reset.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: net: usb: pegasus: fix memory leak in update_eth_regs_async() When asynchronously writing to the device registers and if usb_submit_urb() fail, the code fail to release allocated to this point resources.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: idpf: fix memory leak in idpf_vport_rel() Free vport->rx_ptype_lkup in idpf_vport_rel() to avoid leaking memory during a reset. Reported by kmemleak: unreferenced object 0xff450acac838a000 (size 4096): comm "kworker/u258:5", pid 7732, jiffies 4296830044 hex dump (first 32 bytes): 00 00 00 00 00 10 00 00 00 10 00 00 00 00 00 00 ................ 00 00 00 00 00 00 00 00 00 10 00 00 00 00 00 00 ................ backtrace (crc 3da81902): __kmalloc_cache_noprof+0x469/0x7a0 idpf_send_get_rx_ptype_msg+0x90/0x570 [idpf] idpf_init_task+0x1ec/0x8d0 [idpf] process_one_work+0x226/0x6d0 worker_thread+0x19e/0x340 kthread+0x10f/0x250 ret_from_fork+0x251/0x2b0 ret_from_fork_asm+0x1a/0x30


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: dmaengine: qcom: gpi: Fix memory leak in gpi_peripheral_config() Fix a memory leak in gpi_peripheral_config() where the original memory pointed to by gchan->config could be lost if krealloc() fails. The issue occurs when: 1. gchan->config points to previously allocated memory 2. krealloc() fails and returns NULL 3. The function directly assigns NULL to gchan->config, losing the reference to the original memory 4. The original memory becomes unreachable and cannot be freed Fix this by using a temporary variable to hold the krealloc() result and only updating gchan->config when the allocation succeeds. Found via static analysis and code review.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: dmaengine: omap-dma: fix dma_pool resource leak in error paths The dma_pool created by dma_pool_create() is not destroyed when dma_async_device_register() or of_dma_controller_register() fails, causing a resource leak in the probe error paths. Add dma_pool_destroy() in both error paths to properly release the allocated dma_pool resource.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: net/mlx5e: Pass netdev to mlx5e_destroy_netdev instead of priv mlx5e_priv is an unstable structure that can be memset(0) if profile attaching fails. Pass netdev to mlx5e_destroy_netdev() to guarantee it will work on a valid netdev. On mlx5e_remove: Check validity of priv->profile, before attempting to cleanup any resources that might be not there. This fixes a kernel oops in mlx5e_remove when switchdev mode fails due to change profile failure. $ devlink dev eswitch set pci/0000:00:03.0 mode switchdev Error: mlx5_core: Failed setting eswitch to offloads. dmesg: workqueue: Failed to create a rescuer kthread for wq "mlx5e": -EINTR mlx5_core 0012:03:00.1: mlx5e_netdev_init_profile:6214:(pid 37199): mlx5e_priv_init failed, err=-12 mlx5_core 0012:03:00.1 gpu3rdma1: mlx5e_netdev_change_profile: new profile init failed, -12 workqueue: Failed to create a rescuer kthread for wq "mlx5e": -EINTR mlx5_core 0012:03:00.1: mlx5e_netdev_init_profile:6214:(pid 37199): mlx5e_priv_init failed, err=-12 mlx5_core 0012:03:00.1 gpu3rdma1: mlx5e_netdev_change_profile: failed to rollback to orig profile, -12 $ devlink dev reload pci/0000:00:03.0 ==> oops BUG: kernel NULL pointer dereference, address: 0000000000000370 PGD 0 P4D 0 Oops: Oops: 0000 [#1] SMP NOPTI CPU: 15 UID: 0 PID: 520 Comm: devlink Not tainted 6.18.0-rc5+ #115 PREEMPT(voluntary) Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-2.fc40 04/01/2014 RIP: 0010:mlx5e_dcbnl_dscp_app+0x23/0x100 RSP: 0018:ffffc9000083f8b8 EFLAGS: 00010286 RAX: ffff8881126fc380 RBX: ffff8881015ac400 RCX: ffffffff826ffc45 RDX: 0000000000000000 RSI: 0000000000000001 RDI: ffff8881035109c0 RBP: ffff8881035109c0 R08: ffff888101e3e838 R09: ffff888100264e10 R10: ffffc9000083f898 R11: ffffc9000083f8a0 R12: ffff888101b921a0 R13: ffff888101b921a0 R14: ffff8881015ac9a0 R15: ffff8881015ac400 FS: 00007f789a3c8740(0000) GS:ffff88856aa59000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 0000000000000370 CR3: 000000010b6c0001 CR4: 0000000000370ef0 Call Trace: <TASK> mlx5e_remove+0x57/0x110 device_release_driver_internal+0x19c/0x200 bus_remove_device+0xc6/0x130 device_del+0x160/0x3d0 ? devl_param_driverinit_value_get+0x2d/0x90 mlx5_detach_device+0x89/0xe0 mlx5_unload_one_devl_locked+0x3a/0x70 mlx5_devlink_reload_down+0xc8/0x220 devlink_reload+0x7d/0x260 devlink_nl_reload_doit+0x45b/0x5a0 genl_family_rcv_msg_doit+0xe8/0x140


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: can: etas_es58x: allow partial RX URB allocation to succeed When es58x_alloc_rx_urbs() fails to allocate the requested number of URBs but succeeds in allocating some, it returns an error code. This causes es58x_open() to return early, skipping the cleanup label 'free_urbs', which leads to the anchored URBs being leaked. As pointed out by maintainer Vincent Mailhol, the driver is designed to handle partial URB allocation gracefully. Therefore, partial allocation should not be treated as a fatal error. Modify es58x_alloc_rx_urbs() to return 0 if at least one URB has been allocated, restoring the intended behavior and preventing the leak in es58x_open().


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: pnfs/flexfiles: Fix memory leak in nfs4_ff_alloc_deviceid_node() In nfs4_ff_alloc_deviceid_node(), if the allocation for ds_versions fails, the function jumps to the out_scratch label without freeing the already allocated dsaddrs list, leading to a memory leak. Fix this by jumping to the out_err_drain_dsaddrs label, which properly frees the dsaddrs list before cleaning up other resources.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: drm/panel-simple: fix connector type for DataImage SCF0700C48GGU18 panel The connector type for the DataImage SCF0700C48GGU18 panel is missing and devm_drm_panel_bridge_add() requires connector type to be set. This leads to a warning and a backtrace in the kernel log and panel does not work: " WARNING: CPU: 3 PID: 38 at drivers/gpu/drm/bridge/panel.c:379 devm_drm_of_get_bridge+0xac/0xb8 " The warning is triggered by a check for valid connector type in devm_drm_panel_bridge_add(). If there is no valid connector type set for a panel, the warning is printed and panel is not added. Fill in the missing connector type to fix the warning and make the panel operational once again.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: NFS: Fix a deadlock involving nfs_release_folio() Wang Zhaolong reports a deadlock involving NFSv4.1 state recovery waiting on kthreadd, which is attempting to reclaim memory by calling nfs_release_folio(). The latter cannot make progress due to state recovery being needed. It seems that the only safe thing to do here is to kick off a writeback of the folio, without waiting for completion, or else kicking off an asynchronous commit.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: net: hv_netvsc: reject RSS hash key programming without RX indirection table RSS configuration requires a valid RX indirection table. When the device reports a single receive queue, rndis_filter_device_add() does not allocate an indirection table, accepting RSS hash key updates in this state leads to a hang. Fix this by gating netvsc_set_rxfh() on ndc->rx_table_sz and return -EOPNOTSUPP when the table is absent. This aligns set_rxfh with the device capabilities and prevents incorrect behavior.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: uacce: implement mremap in uacce_vm_ops to return -EPERM The current uacce_vm_ops does not support the mremap operation of vm_operations_struct. Implement .mremap to return -EPERM to remind users. The reason we need to explicitly disable mremap is that when the driver does not implement .mremap, it uses the default mremap method. This could lead to a risk scenario: An application might first mmap address p1, then mremap to p2, followed by munmap(p1), and finally munmap(p2). Since the default mremap copies the original vma's vm_private_data (i.e., q) to the new vma, both munmap operations would trigger vma_close, causing q->qfr to be freed twice(qfr will be set to null here, so repeated release is ok).


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: vsock/virtio: Coalesce only linear skb vsock/virtio common tries to coalesce buffers in rx queue: if a linear skb (with a spare tail room) is followed by a small skb (length limited by GOOD_COPY_LEN = 128), an attempt is made to join them. Since the introduction of MSG_ZEROCOPY support, assumption that a small skb will always be linear is incorrect. In the zerocopy case, data is lost and the linear skb is appended with uninitialized kernel memory. Of all 3 supported virtio-based transports, only loopback-transport is affected. G2H virtio-transport rx queue operates on explicitly linear skbs; see virtio_vsock_alloc_linear_skb() in virtio_vsock_rx_fill(). H2G vhost-transport may allocate non-linear skbs, but only for sizes that are not considered for coalescence; see PAGE_ALLOC_COSTLY_ORDER in virtio_vsock_alloc_skb(). Ensure only linear skbs are coalesced. Note that skb_tailroom(last_skb) > 0 guarantees last_skb is linear.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: can: ems_usb: ems_usb_read_bulk_callback(): fix URB memory leak Fix similar memory leak as in commit 7352e1d5932a ("can: gs_usb: gs_usb_receive_bulk_callback(): fix URB memory leak"). In ems_usb_open(), the URBs for USB-in transfers are allocated, added to the dev->rx_submitted anchor and submitted. In the complete callback ems_usb_read_bulk_callback(), the URBs are processed and resubmitted. In ems_usb_close() the URBs are freed by calling usb_kill_anchored_urbs(&dev->rx_submitted). However, this does not take into account that the USB framework unanchors the URB before the complete function is called. This means that once an in-URB has been completed, it is no longer anchored and is ultimately not released in ems_usb_close(). Fix the memory leak by anchoring the URB in the ems_usb_read_bulk_callback() to the dev->rx_submitted anchor.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: crypto: authencesn - reject too-short AAD (assoclen<8) to match ESP/ESN spec authencesn assumes an ESP/ESN-formatted AAD. When assoclen is shorter than the minimum expected length, crypto_authenc_esn_decrypt() can advance past the end of the destination scatterlist and trigger a NULL pointer dereference in scatterwalk_map_and_copy(), leading to a kernel panic (DoS). Add a minimum AAD length check to fail fast on invalid inputs.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: can: kvaser_usb: kvaser_usb_read_bulk_callback(): fix URB memory leak Fix similar memory leak as in commit 7352e1d5932a ("can: gs_usb: gs_usb_receive_bulk_callback(): fix URB memory leak"). In kvaser_usb_set_{,data_}bittiming() -> kvaser_usb_setup_rx_urbs(), the URBs for USB-in transfers are allocated, added to the dev->rx_submitted anchor and submitted. In the complete callback kvaser_usb_read_bulk_callback(), the URBs are processed and resubmitted. In kvaser_usb_remove_interfaces() the URBs are freed by calling usb_kill_anchored_urbs(&dev->rx_submitted). However, this does not take into account that the USB framework unanchors the URB before the complete function is called. This means that once an in-URB has been completed, it is no longer anchored and is ultimately not released in usb_kill_anchored_urbs(). Fix the memory leak by anchoring the URB in the kvaser_usb_read_bulk_callback() to the dev->rx_submitted anchor.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: platform/x86: hp-bioscfg: Fix kernel panic in GET_INSTANCE_ID macro The GET_INSTANCE_ID macro that caused a kernel panic when accessing sysfs attributes: 1. Off-by-one error: The loop condition used '<=' instead of '<', causing access beyond array bounds. Since array indices are 0-based and go from 0 to instances_count-1, the loop should use '<'. 2. Missing NULL check: The code dereferenced attr_name_kobj->name without checking if attr_name_kobj was NULL, causing a null pointer dereference in min_length_show() and other attribute show functions. The panic occurred when fwupd tried to read BIOS configuration attributes: Oops: general protection fault [#1] SMP KASAN NOPTI KASAN: null-ptr-deref in range [0x0000000000000000-0x0000000000000007] RIP: 0010:min_length_show+0xcf/0x1d0 [hp_bioscfg] Add a NULL check for attr_name_kobj before dereferencing and corrects the loop boundary to match the pattern used elsewhere in the driver.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: uacce: ensure safe queue release with state management Directly calling `put_queue` carries risks since it cannot guarantee that resources of `uacce_queue` have been fully released beforehand. So adding a `stop_queue` operation for the UACCE_CMD_PUT_Q command and leaving the `put_queue` operation to the final resource release ensures safety. Queue states are defined as follows: - UACCE_Q_ZOMBIE: Initial state - UACCE_Q_INIT: After opening `uacce` - UACCE_Q_STARTED: After `start` is issued via `ioctl` When executing `poweroff -f` in virt while accelerator are still working, `uacce_fops_release` and `uacce_remove` may execute concurrently. This can cause `uacce_put_queue` within `uacce_fops_release` to access a NULL `ops` pointer. Therefore, add state checks to prevent accessing freed pointers.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: net/sched: act_ife: avoid possible NULL deref tcf_ife_encode() must make sure ife_encode() does not return NULL. syzbot reported: Oops: general protection fault, probably for non-canonical address 0xdffffc0000000000: 0000 [#1] SMP KASAN NOPTI KASAN: null-ptr-deref in range [0x0000000000000000-0x0000000000000007] RIP: 0010:ife_tlv_meta_encode+0x41/0xa0 net/ife/ife.c:166 CPU: 3 UID: 0 PID: 8990 Comm: syz.0.696 Not tainted syzkaller #0 PREEMPT(full) Call Trace: <TASK> ife_encode_meta_u32+0x153/0x180 net/sched/act_ife.c:101 tcf_ife_encode net/sched/act_ife.c:841 [inline] tcf_ife_act+0x1022/0x1de0 net/sched/act_ife.c:877 tc_act include/net/tc_wrapper.h:130 [inline] tcf_action_exec+0x1c0/0xa20 net/sched/act_api.c:1152 tcf_exts_exec include/net/pkt_cls.h:349 [inline] mall_classify+0x1a0/0x2a0 net/sched/cls_matchall.c:42 tc_classify include/net/tc_wrapper.h:197 [inline] __tcf_classify net/sched/cls_api.c:1764 [inline] tcf_classify+0x7f2/0x1380 net/sched/cls_api.c:1860 multiq_classify net/sched/sch_multiq.c:39 [inline] multiq_enqueue+0xe0/0x510 net/sched/sch_multiq.c:66 dev_qdisc_enqueue+0x45/0x250 net/core/dev.c:4147 __dev_xmit_skb net/core/dev.c:4262 [inline] __dev_queue_xmit+0x2998/0x46c0 net/core/dev.c:4798


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: platform/x86/amd: Fix memory leak in wbrf_record() The tmp buffer is allocated using kcalloc() but is not freed if acpi_evaluate_dsm() fails. This causes a memory leak in the error path. Fix this by explicitly freeing the tmp buffer in the error handling path of acpi_evaluate_dsm().


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: spi: spi-sprd-adi: Fix double free in probe error path The driver currently uses spi_alloc_host() to allocate the controller but registers it using devm_spi_register_controller(). If devm_register_restart_handler() fails, the code jumps to the put_ctlr label and calls spi_controller_put(). However, since the controller was registered via a devm function, the device core will automatically call spi_controller_put() again when the probe fails. This results in a double-free of the spi_controller structure. Fix this by switching to devm_spi_alloc_host() and removing the manual spi_controller_put() call.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: vsock/virtio: fix potential underflow in virtio_transport_get_credit() The credit calculation in virtio_transport_get_credit() uses unsigned arithmetic: ret = vvs->peer_buf_alloc - (vvs->tx_cnt - vvs->peer_fwd_cnt); If the peer shrinks its advertised buffer (peer_buf_alloc) while bytes are in flight, the subtraction can underflow and produce a large positive value, potentially allowing more data to be queued than the peer can handle. Reuse virtio_transport_has_space() which already handles this case and add a comment to make it clear why we are doing that. [Stefano: use virtio_transport_has_space() instead of duplicating the code] [Stefano: tweak the commit message]


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: Octeontx2-af: Add proper checks for fwdata firmware populates MAC address, link modes (supported, advertised) and EEPROM data in shared firmware structure which kernel access via MAC block(CGX/RPM). Accessing fwdata, on boards booted with out MAC block leading to kernel panics. Internal error: Oops: 0000000096000005 [#1] SMP [ 10.460721] Modules linked in: [ 10.463779] CPU: 0 UID: 0 PID: 174 Comm: kworker/0:3 Not tainted 6.19.0-rc5-00154-g76ec646abdf7-dirty #3 PREEMPT [ 10.474045] Hardware name: Marvell OcteonTX CN98XX board (DT) [ 10.479793] Workqueue: events work_for_cpu_fn [ 10.484159] pstate: 80400009 (Nzcv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--) [ 10.491124] pc : rvu_sdp_init+0x18/0x114 [ 10.495051] lr : rvu_probe+0xe58/0x1d18


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: regmap: Fix race condition in hwspinlock irqsave routine Previously, the address of the shared member '&map->spinlock_flags' was passed directly to 'hwspin_lock_timeout_irqsave'. This creates a race condition where multiple contexts contending for the lock could overwrite the shared flags variable, potentially corrupting the state for the current lock owner. Fix this by using a local stack variable 'flags' to store the IRQ state temporarily.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: wifi: rsi: Fix memory corruption due to not set vif driver data size The struct ieee80211_vif contains trailing space for vif driver data, when struct ieee80211_vif is allocated, the total memory size that is allocated is sizeof(struct ieee80211_vif) + size of vif driver data. The size of vif driver data is set by each WiFi driver as needed. The RSI911x driver does not set vif driver data size, no trailing space for vif driver data is therefore allocated past struct ieee80211_vif . The RSI911x driver does however use the vif driver data to store its vif driver data structure "struct vif_priv". An access to vif->drv_priv leads to access out of struct ieee80211_vif bounds and corruption of some memory. In case of the failure observed locally, rsi_mac80211_add_interface() would write struct vif_priv *vif_info = (struct vif_priv *)vif->drv_priv; vif_info->vap_id = vap_idx. This write corrupts struct fq_tin member struct list_head new_flows . The flow = list_first_entry(head, struct fq_flow, flowchain); in fq_tin_reset() then reports non-NULL bogus address, which when accessed causes a crash. The trigger is very simple, boot the machine with init=/bin/sh , mount devtmpfs, sysfs, procfs, and then do "ip link set wlan0 up", "sleep 1", "ip link set wlan0 down" and the crash occurs. Fix this by setting the correct size of vif driver data, which is the size of "struct vif_priv", so that memory is allocated and the driver can store its driver data in it, instead of corrupting memory around it.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: net/sched: Enforce that teql can only be used as root qdisc Design intent of teql is that it is only supposed to be used as root qdisc. We need to check for that constraint. Although not important, I will describe the scenario that unearthed this issue for the curious. GangMin Kim <km.kim1503@gmail.com> managed to concot a scenario as follows: ROOT qdisc 1:0 (QFQ) ├── class 1:1 (weight=15, lmax=16384) netem with delay 6.4s ── class 1:2 (weight=1, lmax=1514) teql GangMin sends a packet which is enqueued to 1:1 (netem). Any invocation of dequeue by QFQ from this class will not return a packet until after 6.4s. In the meantime, a second packet is sent and it lands on 1:2. teql's enqueue will return success and this will activate class 1:2. Main issue is that teql only updates the parent visible qlen (sch->q.qlen) at dequeue. Since QFQ will only call dequeue if peek succeeds (and teql's peek always returns NULL), dequeue will never be called and thus the qlen will remain as 0. With that in mind, when GangMin updates 1:2's lmax value, the qfq_change_class calls qfq_deact_rm_from_agg. Since the child qdisc's qlen was not incremented, qfq fails to deactivate the class, but still frees its pointers from the aggregate. So when the first packet is rescheduled after 6.4 seconds (netem's delay), a dangling pointer is accessed causing GangMin's causing a UAF.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: ALSA: ctxfi: Fix potential OOB access in audio mixer handling In the audio mixer handling code of ctxfi driver, the conf field is used as a kind of loop index, and it's referred in the index callbacks (amixer_index() and sum_index()). As spotted recently by fuzzers, the current code causes OOB access at those functions. | UBSAN: array-index-out-of-bounds in /build/reproducible-path/linux-6.17.8/sound/pci/ctxfi/ctamixer.c:347:48 | index 8 is out of range for type 'unsigned char [8]' After the analysis, the cause was found to be the lack of the proper (re-)initialization of conj field. This patch addresses those OOB accesses by adding the proper initializations of the loop indices.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: ALSA: scarlett2: Fix buffer overflow in config retrieval The scarlett2_usb_get_config() function has a logic error in the endianness conversion code that can cause buffer overflows when count > 1. The code checks `if (size == 2)` where `size` is the total buffer size in bytes, then loops `count` times treating each element as u16 (2 bytes). This causes the loop to access `count * 2` bytes when the buffer only has `size` bytes allocated. Fix by checking the element size (config_item->size) instead of the total buffer size. This ensures the endianness conversion matches the actual element type.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: can: mcba_usb: mcba_usb_read_bulk_callback(): fix URB memory leak Fix similar memory leak as in commit 7352e1d5932a ("can: gs_usb: gs_usb_receive_bulk_callback(): fix URB memory leak"). In mcba_usb_probe() -> mcba_usb_start(), the URBs for USB-in transfers are allocated, added to the priv->rx_submitted anchor and submitted. In the complete callback mcba_usb_read_bulk_callback(), the URBs are processed and resubmitted. In mcba_usb_close() -> mcba_urb_unlink() the URBs are freed by calling usb_kill_anchored_urbs(&priv->rx_submitted). However, this does not take into account that the USB framework unanchors the URB before the complete function is called. This means that once an in-URB has been completed, it is no longer anchored and is ultimately not released in usb_kill_anchored_urbs(). Fix the memory leak by anchoring the URB in the mcba_usb_read_bulk_callback()to the priv->rx_submitted anchor.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: can: gs_usb: gs_usb_receive_bulk_callback(): unanchor URL on usb_submit_urb() error In commit 7352e1d5932a ("can: gs_usb: gs_usb_receive_bulk_callback(): fix URB memory leak"), the URB was re-anchored before usb_submit_urb() in gs_usb_receive_bulk_callback() to prevent a leak of this URB during cleanup. However, this patch did not take into account that usb_submit_urb() could fail. The URB remains anchored and usb_kill_anchored_urbs(&parent->rx_submitted) in gs_can_close() loops infinitely since the anchor list never becomes empty. To fix the bug, unanchor the URB when an usb_submit_urb() error occurs, also print an info message.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: fou: Don't allow 0 for FOU_ATTR_IPPROTO. fou_udp_recv() has the same problem mentioned in the previous patch. If FOU_ATTR_IPPROTO is set to 0, skb is not freed by fou_udp_recv() nor "resubmit"-ted in ip_protocol_deliver_rcu(). Let's forbid 0 for FOU_ATTR_IPPROTO.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: be2net: Fix NULL pointer dereference in be_cmd_get_mac_from_list When the parameter pmac_id_valid argument of be_cmd_get_mac_from_list() is set to false, the driver may request the PMAC_ID from the firmware of the network card, and this function will store that PMAC_ID at the provided address pmac_id. This is the contract of this function. However, there is a location within the driver where both pmac_id_valid == false and pmac_id == NULL are being passed. This could result in dereferencing a NULL pointer. To resolve this issue, it is necessary to pass the address of a stub variable to the function.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: irqchip/gic-v3-its: Avoid truncating memory addresses On 32-bit machines with CONFIG_ARM_LPAE, it is possible for lowmem allocations to be backed by addresses physical memory above the 32-bit address limit, as found while experimenting with larger VMSPLIT configurations. This caused the qemu virt model to crash in the GICv3 driver, which allocates the 'itt' object using GFP_KERNEL. Since all memory below the 4GB physical address limit is in ZONE_DMA in this configuration, kmalloc() defaults to higher addresses for ZONE_NORMAL, and the ITS driver stores the physical address in a 32-bit 'unsigned long' variable. Change the itt_addr variable to the correct phys_addr_t type instead, along with all other variables in this driver that hold a physical address. The gicv5 driver correctly uses u64 variables, while all other irqchip drivers don't call virt_to_phys or similar interfaces. It's expected that other device drivers have similar issues, but fixing this one is sufficient for booting a virtio based guest.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: vsock/virtio: cap TX credit to local buffer size The virtio transports derives its TX credit directly from peer_buf_alloc, which is set from the remote endpoint's SO_VM_SOCKETS_BUFFER_SIZE value. On the host side this means that the amount of data we are willing to queue for a connection is scaled by a guest-chosen buffer size, rather than the host's own vsock configuration. A malicious guest can advertise a large buffer and read slowly, causing the host to allocate a correspondingly large amount of sk_buff memory. The same thing would happen in the guest with a malicious host, since virtio transports share the same code base. Introduce a small helper, virtio_transport_tx_buf_size(), that returns min(peer_buf_alloc, buf_alloc), and use it wherever we consume peer_buf_alloc. This ensures the effective TX window is bounded by both the peer's advertised buffer and our own buf_alloc (already clamped to buffer_max_size via SO_VM_SOCKETS_BUFFER_MAX_SIZE), so a remote peer cannot force the other to queue more data than allowed by its own vsock settings. On an unpatched Ubuntu 22.04 host (~64 GiB RAM), running a PoC with 32 guest vsock connections advertising 2 GiB each and reading slowly drove Slab/SUnreclaim from ~0.5 GiB to ~57 GiB; the system only recovered after killing the QEMU process. That said, if QEMU memory is limited with cgroups, the maximum memory used will be limited. With this patch applied: Before: MemFree: ~61.6 GiB Slab: ~142 MiB SUnreclaim: ~117 MiB After 32 high-credit connections: MemFree: ~61.5 GiB Slab: ~178 MiB SUnreclaim: ~152 MiB Only ~35 MiB increase in Slab/SUnreclaim, no host OOM, and the guest remains responsive. Compatibility with non-virtio transports: - VMCI uses the AF_VSOCK buffer knobs to size its queue pairs per socket based on the local vsk->buffer_* values; the remote side cannot enlarge those queues beyond what the local endpoint configured. - Hyper-V's vsock transport uses fixed-size VMBus ring buffers and an MTU bound; there is no peer-controlled credit field comparable to peer_buf_alloc, and the remote endpoint cannot drive in-flight kernel memory above those ring sizes. - The loopback path reuses virtio_transport_common.c, so it naturally follows the same semantics as the virtio transport. This change is limited to virtio_transport_common.c and thus affects virtio-vsock, vhost-vsock, and loopback, bringing them in line with the "remote window intersected with local policy" behaviour that VMCI and Hyper-V already effectively have. [Stefano: small adjustments after changing the previous patch] [Stefano: tweak the commit message]


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: tracing: Fix crash on synthetic stacktrace field usage When creating a synthetic event based on an existing synthetic event that had a stacktrace field and the new synthetic event used that field a kernel crash occurred: ~# cd /sys/kernel/tracing ~# echo 's:stack unsigned long stack[];' > dynamic_events ~# echo 'hist:keys=prev_pid:s0=common_stacktrace if prev_state & 3' >> events/sched/sched_switch/trigger ~# echo 'hist:keys=next_pid:s1=$s0:onmatch(sched.sched_switch).trace(stack,$s1)' >> events/sched/sched_switch/trigger The above creates a synthetic event that takes a stacktrace when a task schedules out in a non-running state and passes that stacktrace to the sched_switch event when that task schedules back in. It triggers the "stack" synthetic event that has a stacktrace as its field (called "stack"). ~# echo 's:syscall_stack s64 id; unsigned long stack[];' >> dynamic_events ~# echo 'hist:keys=common_pid:s2=stack' >> events/synthetic/stack/trigger ~# echo 'hist:keys=common_pid:s3=$s2,i0=id:onmatch(synthetic.stack).trace(syscall_stack,$i0,$s3)' >> events/raw_syscalls/sys_exit/trigger The above makes another synthetic event called "syscall_stack" that attaches the first synthetic event (stack) to the sys_exit trace event and records the stacktrace from the stack event with the id of the system call that is exiting. When enabling this event (or using it in a historgram): ~# echo 1 > events/synthetic/syscall_stack/enable Produces a kernel crash! BUG: unable to handle page fault for address: 0000000000400010 #PF: supervisor read access in kernel mode #PF: error_code(0x0000) - not-present page PGD 0 P4D 0 Oops: Oops: 0000 [#1] SMP PTI CPU: 6 UID: 0 PID: 1257 Comm: bash Not tainted 6.16.3+deb14-amd64 #1 PREEMPT(lazy) Debian 6.16.3-1 Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.17.0-debian-1.17.0-1 04/01/2014 RIP: 0010:trace_event_raw_event_synth+0x90/0x380 Code: c5 00 00 00 00 85 d2 0f 84 e1 00 00 00 31 db eb 34 0f 1f 00 66 66 2e 0f 1f 84 00 00 00 00 00 66 66 2e 0f 1f 84 00 00 00 00 00 <49> 8b 04 24 48 83 c3 01 8d 0c c5 08 00 00 00 01 cd 41 3b 5d 40 0f RSP: 0018:ffffd2670388f958 EFLAGS: 00010202 RAX: ffff8ba1065cc100 RBX: 0000000000000000 RCX: 0000000000000000 RDX: 0000000000000001 RSI: fffff266ffda7b90 RDI: ffffd2670388f9b0 RBP: 0000000000000010 R08: ffff8ba104e76000 R09: ffffd2670388fa50 R10: ffff8ba102dd42e0 R11: ffffffff9a908970 R12: 0000000000400010 R13: ffff8ba10a246400 R14: ffff8ba10a710220 R15: fffff266ffda7b90 FS: 00007fa3bc63f740(0000) GS:ffff8ba2e0f48000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 0000000000400010 CR3: 0000000107f9e003 CR4: 0000000000172ef0 Call Trace: <TASK> ? __tracing_map_insert+0x208/0x3a0 action_trace+0x67/0x70 event_hist_trigger+0x633/0x6d0 event_triggers_call+0x82/0x130 trace_event_buffer_commit+0x19d/0x250 trace_event_raw_event_sys_exit+0x62/0xb0 syscall_exit_work+0x9d/0x140 do_syscall_64+0x20a/0x2f0 ? trace_event_raw_event_sched_switch+0x12b/0x170 ? save_fpregs_to_fpstate+0x3e/0x90 ? _raw_spin_unlock+0xe/0x30 ? finish_task_switch.isra.0+0x97/0x2c0 ? __rseq_handle_notify_resume+0xad/0x4c0 ? __schedule+0x4b8/0xd00 ? restore_fpregs_from_fpstate+0x3c/0x90 ? switch_fpu_return+0x5b/0xe0 ? do_syscall_64+0x1ef/0x2f0 ? do_fault+0x2e9/0x540 ? __handle_mm_fault+0x7d1/0xf70 ? count_memcg_events+0x167/0x1d0 ? handle_mm_fault+0x1d7/0x2e0 ? do_user_addr_fault+0x2c3/0x7f0 entry_SYSCALL_64_after_hwframe+0x76/0x7e The reason is that the stacktrace field is not labeled as such, and is treated as a normal field and not as a dynamic event that it is. In trace_event_raw_event_synth() the event is field is still treated as a dynamic array, but the retrieval of the data is considered a normal field, and the reference is just the meta data: // Meta data is retrieved instead of a dynamic array ---truncated---


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: ALSA: usb-audio: Fix use-after-free in snd_usb_mixer_free() When snd_usb_create_mixer() fails, snd_usb_mixer_free() frees mixer->id_elems but the controls already added to the card still reference the freed memory. Later when snd_card_register() runs, the OSS mixer layer calls their callbacks and hits a use-after-free read. Call trace: get_ctl_value+0x63f/0x820 sound/usb/mixer.c:411 get_min_max_with_quirks.isra.0+0x240/0x1f40 sound/usb/mixer.c:1241 mixer_ctl_feature_info+0x26b/0x490 sound/usb/mixer.c:1381 snd_mixer_oss_build_test+0x174/0x3a0 sound/core/oss/mixer_oss.c:887 ... snd_card_register+0x4ed/0x6d0 sound/core/init.c:923 usb_audio_probe+0x5ef/0x2a90 sound/usb/card.c:1025 Fix by calling snd_ctl_remove() for all mixer controls before freeing id_elems. We save the next pointer first because snd_ctl_remove() frees the current element.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: slimbus: core: fix device reference leak on report present Slimbus devices can be allocated dynamically upon reception of report-present messages. Make sure to drop the reference taken when looking up already registered devices. Note that this requires taking an extra reference in case the device has not yet been registered and has to be allocated.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: intel_th: fix device leak on output open() Make sure to drop the reference taken when looking up the th device during output device open() on errors and on close(). Note that a recent commit fixed the leak in a couple of open() error paths but not all of them, and the reference is still leaking on successful open().


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: uacce: fix isolate sysfs check condition uacce supports the device isolation feature. If the driver implements the isolate_err_threshold_read and isolate_err_threshold_write callback functions, uacce will create sysfs files now. Users can read and configure the isolation policy through sysfs. Currently, sysfs files are created as long as either isolate_err_threshold_read or isolate_err_threshold_write callback functions are present. However, accessing a non-existent callback function may cause the system to crash. Therefore, intercept the creation of sysfs if neither read nor write exists; create sysfs if either is supported, but intercept unsupported operations at the call site.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: gue: Fix skb memleak with inner IP protocol 0. syzbot reported skb memleak below. [0] The repro generated a GUE packet with its inner protocol 0. gue_udp_recv() returns -guehdr->proto_ctype for "resubmit" in ip_protocol_deliver_rcu(), but this only works with non-zero protocol number. Let's drop such packets. Note that 0 is a valid number (IPv6 Hop-by-Hop Option). I think it is not practical to encap HOPOPT in GUE, so once someone starts to complain, we could pass down a resubmit flag pointer to distinguish two zeros from the upper layer: * no error * resubmit HOPOPT [0] BUG: memory leak unreferenced object 0xffff888109695a00 (size 240): comm "syz.0.17", pid 6088, jiffies 4294943096 hex dump (first 32 bytes): 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00 40 c2 10 81 88 ff ff 00 00 00 00 00 00 00 00 .@.............. backtrace (crc a84b336f): kmemleak_alloc_recursive include/linux/kmemleak.h:44 [inline] slab_post_alloc_hook mm/slub.c:4958 [inline] slab_alloc_node mm/slub.c:5263 [inline] kmem_cache_alloc_noprof+0x3b4/0x590 mm/slub.c:5270 __build_skb+0x23/0x60 net/core/skbuff.c:474 build_skb+0x20/0x190 net/core/skbuff.c:490 __tun_build_skb drivers/net/tun.c:1541 [inline] tun_build_skb+0x4a1/0xa40 drivers/net/tun.c:1636 tun_get_user+0xc12/0x2030 drivers/net/tun.c:1770 tun_chr_write_iter+0x71/0x120 drivers/net/tun.c:1999 new_sync_write fs/read_write.c:593 [inline] vfs_write+0x45d/0x710 fs/read_write.c:686 ksys_write+0xa7/0x170 fs/read_write.c:738 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline] do_syscall_64+0xa4/0xf80 arch/x86/entry/syscall_64.c:94 entry_SYSCALL_64_after_hwframe+0x77/0x7f


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: uacce: fix cdev handling in the cleanup path When cdev_device_add fails, it internally releases the cdev memory, and if cdev_device_del is then executed, it will cause a hang error. To fix it, we check the return value of cdev_device_add() and clear uacce->cdev to avoid calling cdev_device_del in the uacce_remove.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: bonding: limit BOND_MODE_8023AD to Ethernet devices BOND_MODE_8023AD makes sense for ARPHRD_ETHER only. syzbot reported: BUG: KASAN: global-out-of-bounds in __hw_addr_create net/core/dev_addr_lists.c:63 [inline] BUG: KASAN: global-out-of-bounds in __hw_addr_add_ex+0x25d/0x760 net/core/dev_addr_lists.c:118 Read of size 16 at addr ffffffff8bf94040 by task syz.1.3580/19497 CPU: 1 UID: 0 PID: 19497 Comm: syz.1.3580 Tainted: G L syzkaller #0 PREEMPT(full) Tainted: [L]=SOFTLOCKUP Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 10/25/2025 Call Trace: <TASK> dump_stack_lvl+0xe8/0x150 lib/dump_stack.c:120 print_address_description mm/kasan/report.c:378 [inline] print_report+0xca/0x240 mm/kasan/report.c:482 kasan_report+0x118/0x150 mm/kasan/report.c:595 check_region_inline mm/kasan/generic.c:-1 [inline] kasan_check_range+0x2b0/0x2c0 mm/kasan/generic.c:200 __asan_memcpy+0x29/0x70 mm/kasan/shadow.c:105 __hw_addr_create net/core/dev_addr_lists.c:63 [inline] __hw_addr_add_ex+0x25d/0x760 net/core/dev_addr_lists.c:118 __dev_mc_add net/core/dev_addr_lists.c:868 [inline] dev_mc_add+0xa1/0x120 net/core/dev_addr_lists.c:886 bond_enslave+0x2b8b/0x3ac0 drivers/net/bonding/bond_main.c:2180 do_set_master+0x533/0x6d0 net/core/rtnetlink.c:2963 do_setlink+0xcf0/0x41c0 net/core/rtnetlink.c:3165 rtnl_changelink net/core/rtnetlink.c:3776 [inline] __rtnl_newlink net/core/rtnetlink.c:3935 [inline] rtnl_newlink+0x161c/0x1c90 net/core/rtnetlink.c:4072 rtnetlink_rcv_msg+0x7cf/0xb70 net/core/rtnetlink.c:6958 netlink_rcv_skb+0x208/0x470 net/netlink/af_netlink.c:2550 netlink_unicast_kernel net/netlink/af_netlink.c:1318 [inline] netlink_unicast+0x82f/0x9e0 net/netlink/af_netlink.c:1344 netlink_sendmsg+0x805/0xb30 net/netlink/af_netlink.c:1894 sock_sendmsg_nosec net/socket.c:727 [inline] __sock_sendmsg+0x21c/0x270 net/socket.c:742 ____sys_sendmsg+0x505/0x820 net/socket.c:2592 ___sys_sendmsg+0x21f/0x2a0 net/socket.c:2646 __sys_sendmsg+0x164/0x220 net/socket.c:2678 do_syscall_32_irqs_on arch/x86/entry/syscall_32.c:83 [inline] __do_fast_syscall_32+0x1dc/0x560 arch/x86/entry/syscall_32.c:307 do_fast_syscall_32+0x34/0x80 arch/x86/entry/syscall_32.c:332 entry_SYSENTER_compat_after_hwframe+0x84/0x8e </TASK> The buggy address belongs to the variable: lacpdu_mcast_addr+0x0/0x40


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: leds: led-class: Only Add LED to leds_list when it is fully ready Before this change the LED was added to leds_list before led_init_core() gets called adding it the list before led_classdev.set_brightness_work gets initialized. This leaves a window where led_trigger_register() of a LED's default trigger will call led_trigger_set() which calls led_set_brightness() which in turn will end up queueing the *uninitialized* led_classdev.set_brightness_work. This race gets hit by the lenovo-thinkpad-t14s EC driver which registers 2 LEDs with a default trigger provided by snd_ctl_led.ko in quick succession. The first led_classdev_register() causes an async modprobe of snd_ctl_led to run and that async modprobe manages to exactly hit the window where the second LED is on the leds_list without led_init_core() being called for it, resulting in: ------------[ cut here ]------------ WARNING: CPU: 11 PID: 5608 at kernel/workqueue.c:4234 __flush_work+0x344/0x390 Hardware name: LENOVO 21N2S01F0B/21N2S01F0B, BIOS N42ET93W (2.23 ) 09/01/2025 ... Call trace: __flush_work+0x344/0x390 (P) flush_work+0x2c/0x50 led_trigger_set+0x1c8/0x340 led_trigger_register+0x17c/0x1c0 led_trigger_register_simple+0x84/0xe8 snd_ctl_led_init+0x40/0xf88 [snd_ctl_led] do_one_initcall+0x5c/0x318 do_init_module+0x9c/0x2b8 load_module+0x7e0/0x998 Close the race window by moving the adding of the LED to leds_list to after the led_init_core() call.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: arm64/fpsimd: signal: Fix restoration of SVE context When SME is supported, Restoring SVE signal context can go wrong in a few ways, including placing the task into an invalid state where the kernel may read from out-of-bounds memory (and may potentially take a fatal fault) and/or may kill the task with a SIGKILL. (1) Restoring a context with SVE_SIG_FLAG_SM set can place the task into an invalid state where SVCR.SM is set (and sve_state is non-NULL) but TIF_SME is clear, consequently resuting in out-of-bounds memory reads and/or killing the task with SIGKILL. This can only occur in unusual (but legitimate) cases where the SVE signal context has either been modified by userspace or was saved in the context of another task (e.g. as with CRIU), as otherwise the presence of an SVE signal context with SVE_SIG_FLAG_SM implies that TIF_SME is already set. While in this state, task_fpsimd_load() will NOT configure SMCR_ELx (leaving some arbitrary value configured in hardware) before restoring SVCR and attempting to restore the streaming mode SVE registers from memory via sve_load_state(). As the value of SMCR_ELx.LEN may be larger than the task's streaming SVE vector length, this may read memory outside of the task's allocated sve_state, reading unrelated data and/or triggering a fault. While this can result in secrets being loaded into streaming SVE registers, these values are never exposed. As TIF_SME is clear, fpsimd_bind_task_to_cpu() will configure CPACR_ELx.SMEN to trap EL0 accesses to streaming mode SVE registers, so these cannot be accessed directly at EL0. As fpsimd_save_user_state() verifies the live vector length before saving (S)SVE state to memory, no secret values can be saved back to memory (and hence cannot be observed via ptrace, signals, etc). When the live vector length doesn't match the expected vector length for the task, fpsimd_save_user_state() will send a fatal SIGKILL signal to the task. Hence the task may be killed after executing userspace for some period of time. (2) Restoring a context with SVE_SIG_FLAG_SM clear does not clear the task's SVCR.SM. If SVCR.SM was set prior to restoring the context, then the task will be left in streaming mode unexpectedly, and some register state will be combined inconsistently, though the task will be left in legitimate state from the kernel's PoV. This can only occur in unusual (but legitimate) cases where ptrace has been used to set SVCR.SM after entry to the sigreturn syscall, as syscall entry clears SVCR.SM. In these cases, the the provided SVE register data will be loaded into the task's sve_state using the non-streaming SVE vector length and the FPSIMD registers will be merged into this using the streaming SVE vector length. Fix (1) by setting TIF_SME when setting SVCR.SM. This also requires ensuring that the task's sme_state has been allocated, but as this could contain live ZA state, it should not be zeroed. Fix (2) by clearing SVCR.SM when restoring a SVE signal context with SVE_SIG_FLAG_SM clear. For consistency, I've pulled the manipulation of SVCR, TIF_SVE, TIF_SME, and fp_type earlier, immediately after the allocation of sve_state/sme_state, before the restore of the actual register state. This makes it easier to ensure that these are always modified consistently, even if a fault is taken while reading the register data from the signal context. I do not expect any software to depend on the exact state restored when a fault is taken while reading the context.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: ice: fix devlink reload call trace Commit 4da71a77fc3b ("ice: read internal temperature sensor") introduced internal temperature sensor reading via HWMON. ice_hwmon_init() was added to ice_init_feature() and ice_hwmon_exit() was added to ice_remove(). As a result if devlink reload is used to reinit the device and then the driver is removed, a call trace can occur. BUG: unable to handle page fault for address: ffffffffc0fd4b5d Call Trace: string+0x48/0xe0 vsnprintf+0x1f9/0x650 sprintf+0x62/0x80 name_show+0x1f/0x30 dev_attr_show+0x19/0x60 The call trace repeats approximately every 10 minutes when system monitoring tools (e.g., sadc) attempt to read the orphaned hwmon sysfs attributes that reference freed module memory. The sequence is: 1. Driver load, ice_hwmon_init() gets called from ice_init_feature() 2. Devlink reload down, flow does not call ice_remove() 3. Devlink reload up, ice_hwmon_init() gets called from ice_init_feature() resulting in a second instance 4. Driver unload, ice_hwmon_exit() called from ice_remove() leaving the first hwmon instance orphaned with dangling pointer Fix this by moving ice_hwmon_exit() from ice_remove() to ice_deinit_features() to ensure proper cleanup symmetry with ice_hwmon_init().


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: net/sched: qfq: Use cl_is_active to determine whether class is active in qfq_rm_from_ag This is more of a preventive patch to make the code more consistent and to prevent possible exploits that employ child qlen manipulations on qfq. use cl_is_active instead of relying on the child qdisc's qlen to determine class activation.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: arm64/fpsimd: signal: Allocate SSVE storage when restoring ZA The code to restore a ZA context doesn't attempt to allocate the task's sve_state before setting TIF_SME. Consequently, restoring a ZA context can place a task into an invalid state where TIF_SME is set but the task's sve_state is NULL. In legitimate but uncommon cases where the ZA signal context was NOT created by the kernel in the context of the same task (e.g. if the task is saved/restored with something like CRIU), we have no guarantee that sve_state had been allocated previously. In these cases, userspace can enter streaming mode without trapping while sve_state is NULL, causing a later NULL pointer dereference when the kernel attempts to store the register state: | # ./sigreturn-za | Unable to handle kernel NULL pointer dereference at virtual address 0000000000000000 | Mem abort info: | ESR = 0x0000000096000046 | EC = 0x25: DABT (current EL), IL = 32 bits | SET = 0, FnV = 0 | EA = 0, S1PTW = 0 | FSC = 0x06: level 2 translation fault | Data abort info: | ISV = 0, ISS = 0x00000046, ISS2 = 0x00000000 | CM = 0, WnR = 1, TnD = 0, TagAccess = 0 | GCS = 0, Overlay = 0, DirtyBit = 0, Xs = 0 | user pgtable: 4k pages, 52-bit VAs, pgdp=0000000101f47c00 | [0000000000000000] pgd=08000001021d8403, p4d=0800000102274403, pud=0800000102275403, pmd=0000000000000000 | Internal error: Oops: 0000000096000046 [#1] SMP | Modules linked in: | CPU: 0 UID: 0 PID: 153 Comm: sigreturn-za Not tainted 6.19.0-rc1 #1 PREEMPT | Hardware name: linux,dummy-virt (DT) | pstate: 214000c9 (nzCv daIF +PAN -UAO -TCO +DIT -SSBS BTYPE=--) | pc : sve_save_state+0x4/0xf0 | lr : fpsimd_save_user_state+0xb0/0x1c0 | sp : ffff80008070bcc0 | x29: ffff80008070bcc0 x28: fff00000c1ca4c40 x27: 63cfa172fb5cf658 | x26: fff00000c1ca5228 x25: 0000000000000000 x24: 0000000000000000 | x23: 0000000000000000 x22: fff00000c1ca4c40 x21: fff00000c1ca4c40 | x20: 0000000000000020 x19: fff00000ff6900f0 x18: 0000000000000000 | x17: fff05e8e0311f000 x16: 0000000000000000 x15: 028fca8f3bdaf21c | x14: 0000000000000212 x13: fff00000c0209f10 x12: 0000000000000020 | x11: 0000000000200b20 x10: 0000000000000000 x9 : fff00000ff69dcc0 | x8 : 00000000000003f2 x7 : 0000000000000001 x6 : fff00000c1ca5b48 | x5 : fff05e8e0311f000 x4 : 0000000008000000 x3 : 0000000000000000 | x2 : 0000000000000001 x1 : fff00000c1ca5970 x0 : 0000000000000440 | Call trace: | sve_save_state+0x4/0xf0 (P) | fpsimd_thread_switch+0x48/0x198 | __switch_to+0x20/0x1c0 | __schedule+0x36c/0xce0 | schedule+0x34/0x11c | exit_to_user_mode_loop+0x124/0x188 | el0_interrupt+0xc8/0xd8 | __el0_irq_handler_common+0x18/0x24 | el0t_64_irq_handler+0x10/0x1c | el0t_64_irq+0x198/0x19c | Code: 54000040 d51b4408 d65f03c0 d503245f (e5bb5800) | ---[ end trace 0000000000000000 ]--- Fix this by having restore_za_context() ensure that the task's sve_state is allocated, matching what we do when taking an SME trap. Any live SVE/SSVE state (which is restored earlier from a separate signal context) must be preserved, and hence this is not zeroed.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: can: usb_8dev: usb_8dev_read_bulk_callback(): fix URB memory leak Fix similar memory leak as in commit 7352e1d5932a ("can: gs_usb: gs_usb_receive_bulk_callback(): fix URB memory leak"). In usb_8dev_open() -> usb_8dev_start(), the URBs for USB-in transfers are allocated, added to the priv->rx_submitted anchor and submitted. In the complete callback usb_8dev_read_bulk_callback(), the URBs are processed and resubmitted. In usb_8dev_close() -> unlink_all_urbs() the URBs are freed by calling usb_kill_anchored_urbs(&priv->rx_submitted). However, this does not take into account that the USB framework unanchors the URB before the complete function is called. This means that once an in-URB has been completed, it is no longer anchored and is ultimately not released in usb_kill_anchored_urbs(). Fix the memory leak by anchoring the URB in the usb_8dev_read_bulk_callback() to the priv->rx_submitted anchor.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: scsi: core: Wake up the error handler when final completions race against each other The fragile ordering between marking commands completed or failed so that the error handler only wakes when the last running command completes or times out has race conditions. These race conditions can cause the SCSI layer to fail to wake the error handler, leaving I/O through the SCSI host stuck as the error state cannot advance. First, there is an memory ordering issue within scsi_dec_host_busy(). The write which clears SCMD_STATE_INFLIGHT may be reordered with reads counting in scsi_host_busy(). While the local CPU will see its own write, reordering can allow other CPUs in scsi_dec_host_busy() or scsi_eh_inc_host_failed() to see a raised busy count, causing no CPU to see a host busy equal to the host_failed count. This race condition can be prevented with a memory barrier on the error path to force the write to be visible before counting host busy commands. Second, there is a general ordering issue with scsi_eh_inc_host_failed(). By counting busy commands before incrementing host_failed, it can race with a final command in scsi_dec_host_busy(), such that scsi_dec_host_busy() does not see host_failed incremented but scsi_eh_inc_host_failed() counts busy commands before SCMD_STATE_INFLIGHT is cleared by scsi_dec_host_busy(), resulting in neither waking the error handler task. This needs the call to scsi_host_busy() to be moved after host_failed is incremented to close the race condition.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: netfilter: nf_tables: fix inverted genmask check in nft_map_catchall_activate() nft_map_catchall_activate() has an inverted element activity check compared to its non-catchall counterpart nft_mapelem_activate() and compared to what is logically required. nft_map_catchall_activate() is called from the abort path to re-activate catchall map elements that were deactivated during a failed transaction. It should skip elements that are already active (they don't need re-activation) and process elements that are inactive (they need to be restored). Instead, the current code does the opposite: it skips inactive elements and processes active ones. Compare the non-catchall activate callback, which is correct: nft_mapelem_activate(): if (nft_set_elem_active(ext, iter->genmask)) return 0; /* skip active, process inactive */ With the buggy catchall version: nft_map_catchall_activate(): if (!nft_set_elem_active(ext, genmask)) continue; /* skip inactive, process active */ The consequence is that when a DELSET operation is aborted, nft_setelem_data_activate() is never called for the catchall element. For NFT_GOTO verdict elements, this means nft_data_hold() is never called to restore the chain->use reference count. Each abort cycle permanently decrements chain->use. Once chain->use reaches zero, DELCHAIN succeeds and frees the chain while catchall verdict elements still reference it, resulting in a use-after-free. This is exploitable for local privilege escalation from an unprivileged user via user namespaces + nftables on distributions that enable CONFIG_USER_NS and CONFIG_NF_TABLES. Fix by removing the negation so the check matches nft_mapelem_activate(): skip active elements, process inactive ones.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: nvmet-tcp: add bounds checks in nvmet_tcp_build_pdu_iovec nvmet_tcp_build_pdu_iovec() could walk past cmd->req.sg when a PDU length or offset exceeds sg_cnt and then use bogus sg->length/offset values, leading to _copy_to_iter() GPF/KASAN. Guard sg_idx, remaining entries, and sg->length/offset before building the bvec.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: io_uring/io-wq: check IO_WQ_BIT_EXIT inside work run loop Currently this is checked before running the pending work. Normally this is quite fine, as work items either end up blocking (which will create a new worker for other items), or they complete fairly quickly. But syzbot reports an issue where io-wq takes seemingly forever to exit, and with a bit of debugging, this turns out to be because it queues a bunch of big (2GB - 4096b) reads with a /dev/msr* file. Since this file type doesn't support ->read_iter(), loop_rw_iter() ends up handling them. Each read returns 16MB of data read, which takes 20 (!!) seconds. With a bunch of these pending, processing the whole chain can take a long time. Easily longer than the syzbot uninterruptible sleep timeout of 140 seconds. This then triggers a complaint off the io-wq exit path: INFO: task syz.4.135:6326 blocked for more than 143 seconds. Not tainted syzkaller #0 Blocked by coredump. "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. task:syz.4.135 state:D stack:26824 pid:6326 tgid:6324 ppid:5957 task_flags:0x400548 flags:0x00080000 Call Trace: <TASK> context_switch kernel/sched/core.c:5256 [inline] __schedule+0x1139/0x6150 kernel/sched/core.c:6863 __schedule_loop kernel/sched/core.c:6945 [inline] schedule+0xe7/0x3a0 kernel/sched/core.c:6960 schedule_timeout+0x257/0x290 kernel/time/sleep_timeout.c:75 do_wait_for_common kernel/sched/completion.c:100 [inline] __wait_for_common+0x2fc/0x4e0 kernel/sched/completion.c:121 io_wq_exit_workers io_uring/io-wq.c:1328 [inline] io_wq_put_and_exit+0x271/0x8a0 io_uring/io-wq.c:1356 io_uring_clean_tctx+0x10d/0x190 io_uring/tctx.c:203 io_uring_cancel_generic+0x69c/0x9a0 io_uring/cancel.c:651 io_uring_files_cancel include/linux/io_uring.h:19 [inline] do_exit+0x2ce/0x2bd0 kernel/exit.c:911 do_group_exit+0xd3/0x2a0 kernel/exit.c:1112 get_signal+0x2671/0x26d0 kernel/signal.c:3034 arch_do_signal_or_restart+0x8f/0x7e0 arch/x86/kernel/signal.c:337 __exit_to_user_mode_loop kernel/entry/common.c:41 [inline] exit_to_user_mode_loop+0x8c/0x540 kernel/entry/common.c:75 __exit_to_user_mode_prepare include/linux/irq-entry-common.h:226 [inline] syscall_exit_to_user_mode_prepare include/linux/irq-entry-common.h:256 [inline] syscall_exit_to_user_mode_work include/linux/entry-common.h:159 [inline] syscall_exit_to_user_mode include/linux/entry-common.h:194 [inline] do_syscall_64+0x4ee/0xf80 arch/x86/entry/syscall_64.c:100 entry_SYSCALL_64_after_hwframe+0x77/0x7f RIP: 0033:0x7fa02738f749 RSP: 002b:00007fa0281ae0e8 EFLAGS: 00000246 ORIG_RAX: 00000000000000ca RAX: fffffffffffffe00 RBX: 00007fa0275e6098 RCX: 00007fa02738f749 RDX: 0000000000000000 RSI: 0000000000000080 RDI: 00007fa0275e6098 RBP: 00007fa0275e6090 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000 R13: 00007fa0275e6128 R14: 00007fff14e4fcb0 R15: 00007fff14e4fd98 There's really nothing wrong here, outside of processing these reads will take a LONG time. However, we can speed up the exit by checking the IO_WQ_BIT_EXIT inside the io_worker_handle_work() loop, as syzbot will exit the ring after queueing up all of these reads. Then once the first item is processed, io-wq will simply cancel the rest. That should avoid syzbot running into this complaint again.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: pmdomain: imx8m-blk-ctrl: Remove separate rst and clk mask for 8mq vpu For i.MX8MQ platform, the ADB in the VPUMIX domain has no separate reset and clock enable bits, but is ungated and reset together with the VPUs. So we can't reset G1 or G2 separately, it may led to the system hang. Remove rst_mask and clk_mask of imx8mq_vpu_blk_ctl_domain_data. Let imx8mq_vpu_power_notifier() do really vpu reset.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: bonding: provide a net pointer to __skb_flow_dissect() After 3cbf4ffba5ee ("net: plumb network namespace into __skb_flow_dissect") we have to provide a net pointer to __skb_flow_dissect(), either via skb->dev, skb->sk, or a user provided pointer. In the following case, syzbot was able to cook a bare skb. WARNING: net/core/flow_dissector.c:1131 at __skb_flow_dissect+0xb57/0x68b0 net/core/flow_dissector.c:1131, CPU#1: syz.2.1418/11053 Call Trace: <TASK> bond_flow_dissect drivers/net/bonding/bond_main.c:4093 [inline] __bond_xmit_hash+0x2d7/0xba0 drivers/net/bonding/bond_main.c:4157 bond_xmit_hash_xdp drivers/net/bonding/bond_main.c:4208 [inline] bond_xdp_xmit_3ad_xor_slave_get drivers/net/bonding/bond_main.c:5139 [inline] bond_xdp_get_xmit_slave+0x1fd/0x710 drivers/net/bonding/bond_main.c:5515 xdp_master_redirect+0x13f/0x2c0 net/core/filter.c:4388 bpf_prog_run_xdp include/net/xdp.h:700 [inline] bpf_test_run+0x6b2/0x7d0 net/bpf/test_run.c:421 bpf_prog_test_run_xdp+0x795/0x10e0 net/bpf/test_run.c:1390 bpf_prog_test_run+0x2c7/0x340 kernel/bpf/syscall.c:4703 __sys_bpf+0x562/0x860 kernel/bpf/syscall.c:6182 __do_sys_bpf kernel/bpf/syscall.c:6274 [inline] __se_sys_bpf kernel/bpf/syscall.c:6272 [inline] __x64_sys_bpf+0x7c/0x90 kernel/bpf/syscall.c:6272 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline] do_syscall_64+0xec/0xf80 arch/x86/entry/syscall_64.c:94


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: mISDN: annotate data-race around dev->work dev->work can re read locklessly in mISDN_read() and mISDN_poll(). Add READ_ONCE()/WRITE_ONCE() annotations. BUG: KCSAN: data-race in mISDN_ioctl / mISDN_read write to 0xffff88812d848280 of 4 bytes by task 10864 on cpu 1: misdn_add_timer drivers/isdn/mISDN/timerdev.c:175 [inline] mISDN_ioctl+0x2fb/0x550 drivers/isdn/mISDN/timerdev.c:233 vfs_ioctl fs/ioctl.c:51 [inline] __do_sys_ioctl fs/ioctl.c:597 [inline] __se_sys_ioctl+0xce/0x140 fs/ioctl.c:583 __x64_sys_ioctl+0x43/0x50 fs/ioctl.c:583 x64_sys_call+0x14b0/0x3000 arch/x86/include/generated/asm/syscalls_64.h:17 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline] do_syscall_64+0xd8/0x2c0 arch/x86/entry/syscall_64.c:94 entry_SYSCALL_64_after_hwframe+0x77/0x7f read to 0xffff88812d848280 of 4 bytes by task 10857 on cpu 0: mISDN_read+0x1f2/0x470 drivers/isdn/mISDN/timerdev.c:112 do_loop_readv_writev fs/read_write.c:847 [inline] vfs_readv+0x3fb/0x690 fs/read_write.c:1020 do_readv+0xe7/0x210 fs/read_write.c:1080 __do_sys_readv fs/read_write.c:1165 [inline] __se_sys_readv fs/read_write.c:1162 [inline] __x64_sys_readv+0x45/0x50 fs/read_write.c:1162 x64_sys_call+0x2831/0x3000 arch/x86/include/generated/asm/syscalls_64.h:20 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline] do_syscall_64+0xd8/0x2c0 arch/x86/entry/syscall_64.c:94 entry_SYSCALL_64_after_hwframe+0x77/0x7f value changed: 0x00000000 -> 0x00000001


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: sctp: move SCTP_CMD_ASSOC_SHKEY right after SCTP_CMD_PEER_INIT A null-ptr-deref was reported in the SCTP transmit path when SCTP-AUTH key initialization fails: ================================================================== KASAN: null-ptr-deref in range [0x0000000000000018-0x000000000000001f] CPU: 0 PID: 16 Comm: ksoftirqd/0 Tainted: G W 6.6.0 #2 RIP: 0010:sctp_packet_bundle_auth net/sctp/output.c:264 [inline] RIP: 0010:sctp_packet_append_chunk+0xb36/0x1260 net/sctp/output.c:401 Call Trace: sctp_packet_transmit_chunk+0x31/0x250 net/sctp/output.c:189 sctp_outq_flush_data+0xa29/0x26d0 net/sctp/outqueue.c:1111 sctp_outq_flush+0xc80/0x1240 net/sctp/outqueue.c:1217 sctp_cmd_interpreter.isra.0+0x19a5/0x62c0 net/sctp/sm_sideeffect.c:1787 sctp_side_effects net/sctp/sm_sideeffect.c:1198 [inline] sctp_do_sm+0x1a3/0x670 net/sctp/sm_sideeffect.c:1169 sctp_assoc_bh_rcv+0x33e/0x640 net/sctp/associola.c:1052 sctp_inq_push+0x1dd/0x280 net/sctp/inqueue.c:88 sctp_rcv+0x11ae/0x3100 net/sctp/input.c:243 sctp6_rcv+0x3d/0x60 net/sctp/ipv6.c:1127 The issue is triggered when sctp_auth_asoc_init_active_key() fails in sctp_sf_do_5_1C_ack() while processing an INIT_ACK. In this case, the command sequence is currently: - SCTP_CMD_PEER_INIT - SCTP_CMD_TIMER_STOP (T1_INIT) - SCTP_CMD_TIMER_START (T1_COOKIE) - SCTP_CMD_NEW_STATE (COOKIE_ECHOED) - SCTP_CMD_ASSOC_SHKEY - SCTP_CMD_GEN_COOKIE_ECHO If SCTP_CMD_ASSOC_SHKEY fails, asoc->shkey remains NULL, while asoc->peer.auth_capable and asoc->peer.peer_chunks have already been set by SCTP_CMD_PEER_INIT. This allows a DATA chunk with auth = 1 and shkey = NULL to be queued by sctp_datamsg_from_user(). Since command interpretation stops on failure, no COOKIE_ECHO should been sent via SCTP_CMD_GEN_COOKIE_ECHO. However, the T1_COOKIE timer has already been started, and it may enqueue a COOKIE_ECHO into the outqueue later. As a result, the DATA chunk can be transmitted together with the COOKIE_ECHO in sctp_outq_flush_data(), leading to the observed issue. Similar to the other places where it calls sctp_auth_asoc_init_active_key() right after sctp_process_init(), this patch moves the SCTP_CMD_ASSOC_SHKEY immediately after SCTP_CMD_PEER_INIT, before stopping T1_INIT and starting T1_COOKIE. This ensures that if shared key generation fails, authenticated DATA cannot be sent. It also allows the T1_INIT timer to retransmit INIT, giving the client another chance to process INIT_ACK and retry key setup.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: arm64: Set __nocfi on swsusp_arch_resume() A DABT is reported[1] on an android based system when resume from hiberate. This happens because swsusp_arch_suspend_exit() is marked with SYM_CODE_*() and does not have a CFI hash, but swsusp_arch_resume() will attempt to verify the CFI hash when calling a copy of swsusp_arch_suspend_exit(). Given that there's an existing requirement that the entrypoint to swsusp_arch_suspend_exit() is the first byte of the .hibernate_exit.text section, we cannot fix this by marking swsusp_arch_suspend_exit() with SYM_FUNC_*(). The simplest fix for now is to disable the CFI check in swsusp_arch_resume(). Mark swsusp_arch_resume() as __nocfi to disable the CFI check. [1] [ 22.991934][ T1] Unable to handle kernel paging request at virtual address 0000000109170ffc [ 22.991934][ T1] Mem abort info: [ 22.991934][ T1] ESR = 0x0000000096000007 [ 22.991934][ T1] EC = 0x25: DABT (current EL), IL = 32 bits [ 22.991934][ T1] SET = 0, FnV = 0 [ 22.991934][ T1] EA = 0, S1PTW = 0 [ 22.991934][ T1] FSC = 0x07: level 3 translation fault [ 22.991934][ T1] Data abort info: [ 22.991934][ T1] ISV = 0, ISS = 0x00000007, ISS2 = 0x00000000 [ 22.991934][ T1] CM = 0, WnR = 0, TnD = 0, TagAccess = 0 [ 22.991934][ T1] GCS = 0, Overlay = 0, DirtyBit = 0, Xs = 0 [ 22.991934][ T1] [0000000109170ffc] user address but active_mm is swapper [ 22.991934][ T1] Internal error: Oops: 0000000096000007 [#1] PREEMPT SMP [ 22.991934][ T1] Dumping ftrace buffer: [ 22.991934][ T1] (ftrace buffer empty) [ 22.991934][ T1] Modules linked in: [ 22.991934][ T1] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 6.6.98-android15-8-g0b1d2aee7fc3-dirty-4k #1 688c7060a825a3ac418fe53881730b355915a419 [ 22.991934][ T1] Hardware name: Unisoc UMS9360-base Board (DT) [ 22.991934][ T1] pstate: 804000c5 (Nzcv daIF +PAN -UAO -TCO -DIT -SSBS BTYPE=--) [ 22.991934][ T1] pc : swsusp_arch_resume+0x2ac/0x344 [ 22.991934][ T1] lr : swsusp_arch_resume+0x294/0x344 [ 22.991934][ T1] sp : ffffffc08006b960 [ 22.991934][ T1] x29: ffffffc08006b9c0 x28: 0000000000000000 x27: 0000000000000000 [ 22.991934][ T1] x26: 0000000000000000 x25: 0000000000000000 x24: 0000000000000820 [ 22.991934][ T1] x23: ffffffd0817e3000 x22: ffffffd0817e3000 x21: 0000000000000000 [ 22.991934][ T1] x20: ffffff8089171000 x19: ffffffd08252c8c8 x18: ffffffc080061058 [ 22.991934][ T1] x17: 00000000529c6ef0 x16: 00000000529c6ef0 x15: 0000000000000004 [ 22.991934][ T1] x14: ffffff8178c88000 x13: 0000000000000006 x12: 0000000000000000 [ 22.991934][ T1] x11: 0000000000000015 x10: 0000000000000001 x9 : ffffffd082533000 [ 22.991934][ T1] x8 : 0000000109171000 x7 : 205b5d3433393139 x6 : 392e32322020205b [ 22.991934][ T1] x5 : 000000010916f000 x4 : 000000008164b000 x3 : ffffff808a4e0530 [ 22.991934][ T1] x2 : ffffffd08058e784 x1 : 0000000082326000 x0 : 000000010a283000 [ 22.991934][ T1] Call trace: [ 22.991934][ T1] swsusp_arch_resume+0x2ac/0x344 [ 22.991934][ T1] hibernation_restore+0x158/0x18c [ 22.991934][ T1] load_image_and_restore+0xb0/0xec [ 22.991934][ T1] software_resume+0xf4/0x19c [ 22.991934][ T1] software_resume_initcall+0x34/0x78 [ 22.991934][ T1] do_one_initcall+0xe8/0x370 [ 22.991934][ T1] do_initcall_level+0xc8/0x19c [ 22.991934][ T1] do_initcalls+0x70/0xc0 [ 22.991934][ T1] do_basic_setup+0x1c/0x28 [ 22.991934][ T1] kernel_init_freeable+0xe0/0x148 [ 22.991934][ T1] kernel_init+0x20/0x1a8 [ 22.991934][ T1] ret_from_fork+0x10/0x20 [ 22.991934][ T1] Code: a9400a61 f94013e0 f9438923 f9400a64 (b85fc110) [catalin.marinas@arm.com: commit log updated by Mark Rutland]


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: dpll: Prevent duplicate registrations Modify the internal registration helpers dpll_xa_ref_{dpll,pin}_add() to reject duplicate registration attempts. Previously, if a caller attempted to register the same pin multiple times (with the same ops, priv, and cookie) on the same device, the core silently increments the reference count and return success. This behavior is incorrect because if the caller makes these duplicate registrations then for the first one dpll_pin_registration is allocated and for others the associated dpll_pin_ref.refcount is incremented. During the first unregistration the associated dpll_pin_registration is freed and for others WARN is fired. Fix this by updating the logic to return `-EEXIST` if a matching registration is found to enforce a strict "register once" policy.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: platform/x86: hp-bioscfg: Fix kobject warnings for empty attribute names The hp-bioscfg driver attempts to register kobjects with empty names when the HP BIOS returns attributes with empty name strings. This causes multiple kernel warnings: kobject: (00000000135fb5e6): attempted to be registered with empty name! WARNING: CPU: 14 PID: 3336 at lib/kobject.c:219 kobject_add_internal+0x2eb/0x310 Add validation in hp_init_bios_buffer_attribute() to check if the attribute name is empty after parsing it from the WMI buffer. If empty, log a debug message and skip registration of that attribute, allowing the module to continue processing other valid attributes.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: wifi: ath10k: fix dma_free_coherent() pointer dma_alloc_coherent() allocates a DMA mapped buffer and stores the addresses in XXX_unaligned fields. Those should be reused when freeing the buffer rather than the aligned addresses.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: wifi: ath12k: fix dma_free_coherent() pointer dma_alloc_coherent() allocates a DMA mapped buffer and stores the addresses in XXX_unaligned fields. Those should be reused when freeing the buffer rather than the aligned addresses.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: netfilter: nf_conncount: update last_gc only when GC has been performed Currently last_gc is being updated everytime a new connection is tracked, that means that it is updated even if a GC wasn't performed. With a sufficiently high packet rate, it is possible to always bypass the GC, causing the list to grow infinitely. Update the last_gc value only when a GC has been actually performed.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: btrfs: send: check for inline extents in range_is_hole_in_parent() Before accessing the disk_bytenr field of a file extent item we need to check if we are dealing with an inline extent. This is because for inline extents their data starts at the offset of the disk_bytenr field. So accessing the disk_bytenr means we are accessing inline data or in case the inline data is less than 8 bytes we can actually cause an invalid memory access if this inline extent item is the first item in the leaf or access metadata from other items.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: ext4: fix iloc.bh leak in ext4_xattr_inode_update_ref The error branch for ext4_xattr_inode_update_ref forget to release the refcount for iloc.bh. Find this when review code.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: Bluetooth: hci_uart: fix null-ptr-deref in hci_uart_write_work hci_uart_set_proto() sets HCI_UART_PROTO_INIT before calling hci_uart_register_dev(), which calls proto->open() to initialize hu->priv. However, if a TTY write wakeup occurs during this window, hci_uart_tx_wakeup() may schedule write_work before hu->priv is initialized, leading to a NULL pointer dereference in hci_uart_write_work() when proto->dequeue() accesses hu->priv. The race condition is: CPU0 CPU1 ---- ---- hci_uart_set_proto() set_bit(HCI_UART_PROTO_INIT) hci_uart_register_dev() tty write wakeup hci_uart_tty_wakeup() hci_uart_tx_wakeup() schedule_work(&hu->write_work) proto->open(hu) // initializes hu->priv hci_uart_write_work() hci_uart_dequeue() proto->dequeue(hu) // accesses hu->priv (NULL!) Fix this by moving set_bit(HCI_UART_PROTO_INIT) after proto->open() succeeds, ensuring hu->priv is initialized before any work can be scheduled.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: nfc: llcp: Fix memleak in nfc_llcp_send_ui_frame(). syzbot reported various memory leaks related to NFC, struct nfc_llcp_sock, sk_buff, nfc_dev, etc. [0] The leading log hinted that nfc_llcp_send_ui_frame() failed to allocate skb due to sock_error(sk) being -ENXIO. ENXIO is set by nfc_llcp_socket_release() when struct nfc_llcp_local is destroyed by local_cleanup(). The problem is that there is no synchronisation between nfc_llcp_send_ui_frame() and local_cleanup(), and skb could be put into local->tx_queue after it was purged in local_cleanup(): CPU1 CPU2 ---- ---- nfc_llcp_send_ui_frame() local_cleanup() |- do { ' |- pdu = nfc_alloc_send_skb(..., &err) | . | |- nfc_llcp_socket_release(local, false, ENXIO); | |- skb_queue_purge(&local->tx_queue); | | ' | |- skb_queue_tail(&local->tx_queue, pdu); | ... | |- pdu = nfc_alloc_send_skb(..., &err) | ^._________________________________.' local_cleanup() is called for struct nfc_llcp_local only after nfc_llcp_remove_local() unlinks it from llcp_devices. If we hold local->tx_queue.lock then, we can synchronise the thread and nfc_llcp_send_ui_frame(). Let's do that and check list_empty(&local->list) before queuing skb to local->tx_queue in nfc_llcp_send_ui_frame(). [0]: [ 56.074943][ T6096] llcp: nfc_llcp_send_ui_frame: Could not allocate PDU (error=-6) [ 64.318868][ T5813] kmemleak: 6 new suspected memory leaks (see /sys/kernel/debug/kmemleak) BUG: memory leak unreferenced object 0xffff8881272f6800 (size 1024): comm "syz.0.17", pid 6096, jiffies 4294942766 hex dump (first 32 bytes): 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 27 00 03 40 00 00 00 00 00 00 00 00 00 00 00 00 '..@............ backtrace (crc da58d84d): kmemleak_alloc_recursive include/linux/kmemleak.h:44 [inline] slab_post_alloc_hook mm/slub.c:4979 [inline] slab_alloc_node mm/slub.c:5284 [inline] __do_kmalloc_node mm/slub.c:5645 [inline] __kmalloc_noprof+0x3e3/0x6b0 mm/slub.c:5658 kmalloc_noprof include/linux/slab.h:961 [inline] sk_prot_alloc+0x11a/0x1b0 net/core/sock.c:2239 sk_alloc+0x36/0x360 net/core/sock.c:2295 nfc_llcp_sock_alloc+0x37/0x130 net/nfc/llcp_sock.c:979 llcp_sock_create+0x71/0xd0 net/nfc/llcp_sock.c:1044 nfc_sock_create+0xc9/0xf0 net/nfc/af_nfc.c:31 __sock_create+0x1a9/0x340 net/socket.c:1605 sock_create net/socket.c:1663 [inline] __sys_socket_create net/socket.c:1700 [inline] __sys_socket+0xb9/0x1a0 net/socket.c:1747 __do_sys_socket net/socket.c:1761 [inline] __se_sys_socket net/socket.c:1759 [inline] __x64_sys_socket+0x1b/0x30 net/socket.c:1759 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline] do_syscall_64+0xa4/0xfa0 arch/x86/entry/syscall_64.c:94 entry_SYSCALL_64_after_hwframe+0x77/0x7f BUG: memory leak unreferenced object 0xffff88810fbd9800 (size 240): comm "syz.0.17", pid 6096, jiffies 4294942850 hex dump (first 32 bytes): 68 f0 ff 08 81 88 ff ff 68 f0 ff 08 81 88 ff ff h.......h....... 00 00 00 00 00 00 00 00 00 68 2f 27 81 88 ff ff .........h/'.... backtrace (crc 6cc652b1): kmemleak_alloc_recursive include/linux/kmemleak.h:44 [inline] slab_post_alloc_hook mm/slub.c:4979 [inline] slab_alloc_node mm/slub.c:5284 [inline] kmem_cache_alloc_node_noprof+0x36f/0x5e0 mm/slub.c:5336 __alloc_skb+0x203/0x240 net/core/skbuff.c:660 alloc_skb include/linux/skbuff.h:1383 [inline] alloc_skb_with_frags+0x69/0x3f0 net/core/sk ---truncated---


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: Bluetooth: MGMT: Fix memory leak in set_ssp_complete Fix memory leak in set_ssp_complete() where mgmt_pending_cmd structures are not freed after being removed from the pending list. Commit 302a1f674c00 ("Bluetooth: MGMT: Fix possible UAFs") replaced mgmt_pending_foreach() calls with individual command handling but missed adding mgmt_pending_free() calls in both error and success paths of set_ssp_complete(). Other completion functions like set_le_complete() were fixed correctly in the same commit. This causes a memory leak of the mgmt_pending_cmd structure and its associated parameter data for each SSP command that completes. Add the missing mgmt_pending_free(cmd) calls in both code paths to fix the memory leak. Also fix the same issue in set_advertising_complete().


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: wifi: mac80211: correctly decode TTLM with default link map TID-To-Link Mapping (TTLM) elements do not contain any link mapping presence indicator if a default mapping is used and parsing needs to be skipped. Note that access points should not explicitly report an advertised TTLM with a default mapping as that is the implied mapping if the element is not included, this is even the case when switching back to the default mapping. However, mac80211 would incorrectly parse the frame and would also read one byte beyond the end of the element.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: net: fix segmentation of forwarding fraglist GRO This patch enhances GSO segment handling by properly checking the SKB_GSO_DODGY flag for frag_list GSO packets, addressing low throughput issues observed when a station accesses IPv4 servers via hotspots with an IPv6-only upstream interface. Specifically, it fixes a bug in GSO segmentation when forwarding GRO packets containing a frag_list. The function skb_segment_list cannot correctly process GRO skbs that have been converted by XLAT, since XLAT only translates the header of the head skb. Consequently, skbs in the frag_list may remain untranslated, resulting in protocol inconsistencies and reduced throughput. To address this, the patch explicitly sets the SKB_GSO_DODGY flag for GSO packets in XLAT's IPv4/IPv6 protocol translation helpers (bpf_skb_proto_4_to_6 and bpf_skb_proto_6_to_4). This marks GSO packets as potentially modified after protocol translation. As a result, GSO segmentation will avoid using skb_segment_list and instead falls back to skb_segment for packets with the SKB_GSO_DODGY flag. This ensures that only safe and fully translated frag_list packets are processed by skb_segment_list, resolving protocol inconsistencies and improving throughput when forwarding GRO packets converted by XLAT.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: can: gs_usb: gs_usb_receive_bulk_callback(): fix error message Sinc commit 79a6d1bfe114 ("can: gs_usb: gs_usb_receive_bulk_callback(): unanchor URL on usb_submit_urb() error") a failing resubmit URB will print an info message. In the case of a short read where netdev has not yet been assigned, initialize as NULL to avoid dereferencing an undefined value. Also report the error value of the failed resubmit.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: efivarfs: fix error propagation in efivar_entry_get() efivar_entry_get() always returns success even if the underlying __efivar_entry_get() fails, masking errors. This may result in uninitialized heap memory being copied to userspace in the efivarfs_file_read() path. Fix it by returning the error from __efivar_entry_get().


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: btrfs: do not strictly require dirty metadata threshold for metadata writepages [BUG] There is an internal report that over 1000 processes are waiting at the io_schedule_timeout() of balance_dirty_pages(), causing a system hang and trigger a kernel coredump. The kernel is v6.4 kernel based, but the root problem still applies to any upstream kernel before v6.18. [CAUSE] From Jan Kara for his wisdom on the dirty page balance behavior first. This cgroup dirty limit was what was actually playing the role here because the cgroup had only a small amount of memory and so the dirty limit for it was something like 16MB. Dirty throttling is responsible for enforcing that nobody can dirty (significantly) more dirty memory than there's dirty limit. Thus when a task is dirtying pages it periodically enters into balance_dirty_pages() and we let it sleep there to slow down the dirtying. When the system is over dirty limit already (either globally or within a cgroup of the running task), we will not let the task exit from balance_dirty_pages() until the number of dirty pages drops below the limit. So in this particular case, as I already mentioned, there was a cgroup with relatively small amount of memory and as a result with dirty limit set at 16MB. A task from that cgroup has dirtied about 28MB worth of pages in btrfs btree inode and these were practically the only dirty pages in that cgroup. So that means the only way to reduce the dirty pages of that cgroup is to writeback the dirty pages of btrfs btree inode, and only after that those processes can exit balance_dirty_pages(). Now back to the btrfs part, btree_writepages() is responsible for writing back dirty btree inode pages. The problem here is, there is a btrfs internal threshold that if the btree inode's dirty bytes are below the 32M threshold, it will not do any writeback. This behavior is to batch as much metadata as possible so we won't write back those tree blocks and then later re-COW them again for another modification. This internal 32MiB is higher than the existing dirty page size (28MiB), meaning no writeback will happen, causing a deadlock between btrfs and cgroup: - Btrfs doesn't want to write back btree inode until more dirty pages - Cgroup/MM doesn't want more dirty pages for btrfs btree inode Thus any process touching that btree inode is put into sleep until the number of dirty pages is reduced. Thanks Jan Kara a lot for the analysis of the root cause. [ENHANCEMENT] Since kernel commit b55102826d7d ("btrfs: set AS_KERNEL_FILE on the btree_inode"), btrfs btree inode pages will only be charged to the root cgroup which should have a much larger limit than btrfs' 32MiB threshold. So it should not affect newer kernels. But for all current LTS kernels, they are all affected by this problem, and backporting the whole AS_KERNEL_FILE may not be a good idea. Even for newer kernels I still think it's a good idea to get rid of the internal threshold at btree_writepages(), since for most cases cgroup/MM has a better view of full system memory usage than btrfs' fixed threshold. For internal callers using btrfs_btree_balance_dirty() since that function is already doing internal threshold check, we don't need to bother them. But for external callers of btree_writepages(), just respect their requests and write back whatever they want, ignoring the internal btrfs threshold to avoid such deadlock on btree inode dirty page balancing.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: drm/amdgpu: fix NULL pointer dereference in amdgpu_gmc_filter_faults_remove On APUs such as Raven and Renoir (GC 9.1.0, 9.2.2, 9.3.0), the ih1 and ih2 interrupt ring buffers are not initialized. This is by design, as these secondary IH rings are only available on discrete GPUs. See vega10_ih_sw_init() which explicitly skips ih1/ih2 initialization when AMD_IS_APU is set. However, amdgpu_gmc_filter_faults_remove() unconditionally uses ih1 to get the timestamp of the last interrupt entry. When retry faults are enabled on APUs (noretry=0), this function is called from the SVM page fault recovery path, resulting in a NULL pointer dereference when amdgpu_ih_decode_iv_ts_helper() attempts to access ih->ring[]. The crash manifests as: BUG: kernel NULL pointer dereference, address: 0000000000000004 RIP: 0010:amdgpu_ih_decode_iv_ts_helper+0x22/0x40 [amdgpu] Call Trace: amdgpu_gmc_filter_faults_remove+0x60/0x130 [amdgpu] svm_range_restore_pages+0xae5/0x11c0 [amdgpu] amdgpu_vm_handle_fault+0xc8/0x340 [amdgpu] gmc_v9_0_process_interrupt+0x191/0x220 [amdgpu] amdgpu_irq_dispatch+0xed/0x2c0 [amdgpu] amdgpu_ih_process+0x84/0x100 [amdgpu] This issue was exposed by commit 1446226d32a4 ("drm/amdgpu: Remove GC HW IP 9.3.0 from noretry=1") which changed the default for Renoir APU from noretry=1 to noretry=0, enabling retry fault handling and thus exercising the buggy code path. Fix this by adding a check for ih1.ring_size before attempting to use it. Also restore the soft_ih support from commit dd299441654f ("drm/amdgpu: Rework retry fault removal"). This is needed if the hardware doesn't support secondary HW IH rings. v2: additional updates (Alex) (cherry picked from commit 6ce8d536c80aa1f059e82184f0d1994436b1d526)


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: ice: Fix NULL pointer dereference in ice_vsi_set_napi_queues Add NULL pointer checks in ice_vsi_set_napi_queues() to prevent crashes during resume from suspend when rings[q_idx]->q_vector is NULL. Tested adaptor: 60:00.0 Ethernet controller [0200]: Intel Corporation Ethernet Controller E810-XXV for SFP [8086:159b] (rev 02) Subsystem: Intel Corporation Ethernet Network Adapter E810-XXV-2 [8086:4003] SR-IOV state: both disabled and enabled can reproduce this issue. kernel version: v6.18 Reproduce steps: Boot up and execute suspend like systemctl suspend or rtcwake. Log: <1>[ 231.443607] BUG: kernel NULL pointer dereference, address: 0000000000000040 <1>[ 231.444052] #PF: supervisor read access in kernel mode <1>[ 231.444484] #PF: error_code(0x0000) - not-present page <6>[ 231.444913] PGD 0 P4D 0 <4>[ 231.445342] Oops: Oops: 0000 [#1] SMP NOPTI <4>[ 231.446635] RIP: 0010:netif_queue_set_napi+0xa/0x170 <4>[ 231.447067] Code: 31 f6 31 ff c3 cc cc cc cc 0f 1f 80 00 00 00 00 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 0f 1f 44 00 00 48 85 c9 74 0b <48> 83 79 30 00 0f 84 39 01 00 00 55 41 89 d1 49 89 f8 89 f2 48 89 <4>[ 231.447513] RSP: 0018:ffffcc780fc078c0 EFLAGS: 00010202 <4>[ 231.447961] RAX: ffff8b848ca30400 RBX: ffff8b848caf2028 RCX: 0000000000000010 <4>[ 231.448443] RDX: 0000000000000000 RSI: 0000000000000000 RDI: ffff8b848dbd4000 <4>[ 231.448896] RBP: ffffcc780fc078e8 R08: 0000000000000000 R09: 0000000000000000 <4>[ 231.449345] R10: 0000000000000000 R11: 0000000000000000 R12: 0000000000000001 <4>[ 231.449817] R13: ffff8b848dbd4000 R14: ffff8b84833390c8 R15: 0000000000000000 <4>[ 231.450265] FS: 00007c7b29e9d740(0000) GS:ffff8b8c068e2000(0000) knlGS:0000000000000000 <4>[ 231.450715] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 <4>[ 231.451179] CR2: 0000000000000040 CR3: 000000030626f004 CR4: 0000000000f72ef0 <4>[ 231.451629] PKRU: 55555554 <4>[ 231.452076] Call Trace: <4>[ 231.452549] <TASK> <4>[ 231.452996] ? ice_vsi_set_napi_queues+0x4d/0x110 [ice] <4>[ 231.453482] ice_resume+0xfd/0x220 [ice] <4>[ 231.453977] ? __pfx_pci_pm_resume+0x10/0x10 <4>[ 231.454425] pci_pm_resume+0x8c/0x140 <4>[ 231.454872] ? __pfx_pci_pm_resume+0x10/0x10 <4>[ 231.455347] dpm_run_callback+0x5f/0x160 <4>[ 231.455796] ? dpm_wait_for_superior+0x107/0x170 <4>[ 231.456244] device_resume+0x177/0x270 <4>[ 231.456708] dpm_resume+0x209/0x2f0 <4>[ 231.457151] dpm_resume_end+0x15/0x30 <4>[ 231.457596] suspend_devices_and_enter+0x1da/0x2b0 <4>[ 231.458054] enter_state+0x10e/0x570 Add defensive checks for both the ring pointer and its q_vector before dereferencing, allowing the system to resume successfully even when q_vectors are unmapped.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: nfc: nci: Fix race between rfkill and nci_unregister_device(). syzbot reported the splat below [0] without a repro. It indicates that struct nci_dev.cmd_wq had been destroyed before nci_close_device() was called via rfkill. nci_dev.cmd_wq is only destroyed in nci_unregister_device(), which (I think) was called from virtual_ncidev_close() when syzbot close()d an fd of virtual_ncidev. The problem is that nci_unregister_device() destroys nci_dev.cmd_wq first and then calls nfc_unregister_device(), which removes the device from rfkill by rfkill_unregister(). So, the device is still visible via rfkill even after nci_dev.cmd_wq is destroyed. Let's unregister the device from rfkill first in nci_unregister_device(). Note that we cannot call nfc_unregister_device() before nci_close_device() because 1) nfc_unregister_device() calls device_del() which frees all memory allocated by devm_kzalloc() and linked to ndev->conn_info_list 2) nci_rx_work() could try to queue nci_conn_info to ndev->conn_info_list which could be leaked Thus, nfc_unregister_device() is split into two functions so we can remove rfkill interfaces only before nci_close_device(). [0]: DEBUG_LOCKS_WARN_ON(1) WARNING: kernel/locking/lockdep.c:238 at hlock_class kernel/locking/lockdep.c:238 [inline], CPU#0: syz.0.8675/6349 WARNING: kernel/locking/lockdep.c:238 at check_wait_context kernel/locking/lockdep.c:4854 [inline], CPU#0: syz.0.8675/6349 WARNING: kernel/locking/lockdep.c:238 at __lock_acquire+0x39d/0x2cf0 kernel/locking/lockdep.c:5187, CPU#0: syz.0.8675/6349 Modules linked in: CPU: 0 UID: 0 PID: 6349 Comm: syz.0.8675 Not tainted syzkaller #0 PREEMPT(full) Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/13/2026 RIP: 0010:hlock_class kernel/locking/lockdep.c:238 [inline] RIP: 0010:check_wait_context kernel/locking/lockdep.c:4854 [inline] RIP: 0010:__lock_acquire+0x3a4/0x2cf0 kernel/locking/lockdep.c:5187 Code: 18 00 4c 8b 74 24 08 75 27 90 e8 17 f2 fc 02 85 c0 74 1c 83 3d 50 e0 4e 0e 00 75 13 48 8d 3d 43 f7 51 0e 48 c7 c6 8b 3a de 8d <67> 48 0f b9 3a 90 31 c0 0f b6 98 c4 00 00 00 41 8b 45 20 25 ff 1f RSP: 0018:ffffc9000c767680 EFLAGS: 00010046 RAX: 0000000000000001 RBX: 0000000000040000 RCX: 0000000000080000 RDX: ffffc90013080000 RSI: ffffffff8dde3a8b RDI: ffffffff8ff24ca0 RBP: 0000000000000003 R08: ffffffff8fef35a3 R09: 1ffffffff1fde6b4 R10: dffffc0000000000 R11: fffffbfff1fde6b5 R12: 00000000000012a2 R13: ffff888030338ba8 R14: ffff888030338000 R15: ffff888030338b30 FS: 00007fa5995f66c0(0000) GS:ffff8881256f8000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00007f7e72f842d0 CR3: 00000000485a0000 CR4: 00000000003526f0 Call Trace: <TASK> lock_acquire+0x106/0x330 kernel/locking/lockdep.c:5868 touch_wq_lockdep_map+0xcb/0x180 kernel/workqueue.c:3940 __flush_workqueue+0x14b/0x14f0 kernel/workqueue.c:3982 nci_close_device+0x302/0x630 net/nfc/nci/core.c:567 nci_dev_down+0x3b/0x50 net/nfc/nci/core.c:639 nfc_dev_down+0x152/0x290 net/nfc/core.c:161 nfc_rfkill_set_block+0x2d/0x100 net/nfc/core.c:179 rfkill_set_block+0x1d2/0x440 net/rfkill/core.c:346 rfkill_fop_write+0x461/0x5a0 net/rfkill/core.c:1301 vfs_write+0x29a/0xb90 fs/read_write.c:684 ksys_write+0x150/0x270 fs/read_write.c:738 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline] do_syscall_64+0xe2/0xf80 arch/x86/entry/syscall_64.c:94 entry_SYSCALL_64_after_hwframe+0x77/0x7f RIP: 0033:0x7fa59b39acb9 Code: ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 44 00 00 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 e8 ff ff ff f7 d8 64 89 01 48 RSP: 002b:00007fa5995f6028 EFLAGS: 00000246 ORIG_RAX: 0000000000000001 RAX: ffffffffffffffda RBX: 00007fa59b615fa0 RCX: 00007fa59b39acb9 RDX: 0000000000000008 RSI: 0000200000000080 RDI: 0000000000000007 RBP: 00007fa59b408bf7 R08: ---truncated---


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: mptcp: fix race in mptcp_pm_nl_flush_addrs_doit() syzbot and Eulgyu Kim reported crashes in mptcp_pm_nl_get_local_id() and/or mptcp_pm_nl_is_backup() Root cause is list_splice_init() in mptcp_pm_nl_flush_addrs_doit() which is not RCU ready. list_splice_init_rcu() can not be called here while holding pernet->lock spinlock. Many thanks to Eulgyu Kim for providing a repro and testing our patches.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: drm/imx/tve: fix probe device leak Make sure to drop the reference taken to the DDC device during probe on probe failure (e.g. probe deferral) and on driver unbind.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: bonding: fix use-after-free due to enslave fail after slave array update Fix a use-after-free which happens due to enslave failure after the new slave has been added to the array. Since the new slave can be used for Tx immediately, we can use it after it has been freed by the enslave error cleanup path which frees the allocated slave memory. Slave update array is supposed to be called last when further enslave failures are not expected. Move it after xdp setup to avoid any problems. It is very easy to reproduce the problem with a simple xdp_pass prog: ip l add bond1 type bond mode balance-xor ip l set bond1 up ip l set dev bond1 xdp object xdp_pass.o sec xdp_pass ip l add dumdum type dummy Then run in parallel: while :; do ip l set dumdum master bond1 1>/dev/null 2>&1; done; mausezahn bond1 -a own -b rand -A rand -B 1.1.1.1 -c 0 -t tcp "dp=1-1023, flags=syn" The crash happens almost immediately: [ 605.602850] Oops: general protection fault, probably for non-canonical address 0xe0e6fc2460000137: 0000 [#1] SMP KASAN NOPTI [ 605.602916] KASAN: maybe wild-memory-access in range [0x07380123000009b8-0x07380123000009bf] [ 605.602946] CPU: 0 UID: 0 PID: 2445 Comm: mausezahn Kdump: loaded Tainted: G B 6.19.0-rc6+ #21 PREEMPT(voluntary) [ 605.602979] Tainted: [B]=BAD_PAGE [ 605.602998] Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2 04/01/2014 [ 605.603032] RIP: 0010:netdev_core_pick_tx+0xcd/0x210 [ 605.603063] Code: 48 89 fa 48 c1 ea 03 80 3c 02 00 0f 85 3e 01 00 00 48 b8 00 00 00 00 00 fc ff df 4c 8b 6b 08 49 8d 7d 30 48 89 fa 48 c1 ea 03 <80> 3c 02 00 0f 85 25 01 00 00 49 8b 45 30 4c 89 e2 48 89 ee 48 89 [ 605.603111] RSP: 0018:ffff88817b9af348 EFLAGS: 00010213 [ 605.603145] RAX: dffffc0000000000 RBX: ffff88817d28b420 RCX: 0000000000000000 [ 605.603172] RDX: 00e7002460000137 RSI: 0000000000000008 RDI: 07380123000009be [ 605.603199] RBP: ffff88817b541a00 R08: 0000000000000001 R09: fffffbfff3ed8c0c [ 605.603226] R10: ffffffff9f6c6067 R11: 0000000000000001 R12: 0000000000000000 [ 605.603253] R13: 073801230000098e R14: ffff88817d28b448 R15: ffff88817b541a84 [ 605.603286] FS: 00007f6570ef67c0(0000) GS:ffff888221dfa000(0000) knlGS:0000000000000000 [ 605.603319] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 605.603343] CR2: 00007f65712fae40 CR3: 000000011371b000 CR4: 0000000000350ef0 [ 605.603373] Call Trace: [ 605.603392] <TASK> [ 605.603410] __dev_queue_xmit+0x448/0x32a0 [ 605.603434] ? __pfx_vprintk_emit+0x10/0x10 [ 605.603461] ? __pfx_vprintk_emit+0x10/0x10 [ 605.603484] ? __pfx___dev_queue_xmit+0x10/0x10 [ 605.603507] ? bond_start_xmit+0xbfb/0xc20 [bonding] [ 605.603546] ? _printk+0xcb/0x100 [ 605.603566] ? __pfx__printk+0x10/0x10 [ 605.603589] ? bond_start_xmit+0xbfb/0xc20 [bonding] [ 605.603627] ? add_taint+0x5e/0x70 [ 605.603648] ? add_taint+0x2a/0x70 [ 605.603670] ? end_report.cold+0x51/0x75 [ 605.603693] ? bond_start_xmit+0xbfb/0xc20 [bonding] [ 605.603731] bond_start_xmit+0x623/0xc20 [bonding]


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: net: wwan: t7xx: fix potential skb->frags overflow in RX path When receiving data in the DPMAIF RX path, the t7xx_dpmaif_set_frag_to_skb() function adds page fragments to an skb without checking if the number of fragments has exceeded MAX_SKB_FRAGS. This could lead to a buffer overflow in skb_shinfo(skb)->frags[] array, corrupting adjacent memory and potentially causing kernel crashes or other undefined behavior. This issue was identified through static code analysis by comparing with a similar vulnerability fixed in the mt76 driver commit b102f0c522cf ("mt76: fix array overflow on receiving too many fragments for a packet"). The vulnerability could be triggered if the modem firmware sends packets with excessive fragments. While under normal protocol conditions (MTU 3080 bytes, BAT buffer 3584 bytes), a single packet should not require additional fragments, the kernel should not blindly trust firmware behavior. Malicious, buggy, or compromised firmware could potentially craft packets with more fragments than the kernel expects. Fix this by adding a bounds check before calling skb_add_rx_frag() to ensure nr_frags does not exceed MAX_SKB_FRAGS. The check must be performed before unmapping to avoid a page leak and double DMA unmap during device teardown.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: net/mlx5e: TC, delete flows only for existing peers When deleting TC steering flows, iterate only over actual devcom peers instead of assuming all possible ports exist. This avoids touching non-existent peers and ensures cleanup is limited to devices the driver is currently connected to. BUG: kernel NULL pointer dereference, address: 0000000000000008 #PF: supervisor write access in kernel mode #PF: error_code(0x0002) - not-present page PGD 133c8a067 P4D 0 Oops: Oops: 0002 [#1] SMP CPU: 19 UID: 0 PID: 2169 Comm: tc Not tainted 6.18.0+ #156 NONE Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS rel-1.16.0-0-gd239552ce722-prebuilt.qemu.org 04/01/2014 RIP: 0010:mlx5e_tc_del_fdb_peers_flow+0xbe/0x200 [mlx5_core] Code: 00 00 a8 08 74 a8 49 8b 46 18 f6 c4 02 74 9f 4c 8d bf a0 12 00 00 4c 89 ff e8 0e e7 96 e1 49 8b 44 24 08 49 8b 0c 24 4c 89 ff <48> 89 41 08 48 89 08 49 89 2c 24 49 89 5c 24 08 e8 7d ce 96 e1 49 RSP: 0018:ff11000143867528 EFLAGS: 00010246 RAX: 0000000000000000 RBX: dead000000000122 RCX: 0000000000000000 RDX: ff11000143691580 RSI: ff110001026e5000 RDI: ff11000106f3d2a0 RBP: dead000000000100 R08: 00000000000003fd R09: 0000000000000002 R10: ff11000101c75690 R11: ff1100085faea178 R12: ff11000115f0ae78 R13: 0000000000000000 R14: ff11000115f0a800 R15: ff11000106f3d2a0 FS: 00007f35236bf740(0000) GS:ff110008dc809000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 0000000000000008 CR3: 0000000157a01001 CR4: 0000000000373eb0 Call Trace: <TASK> mlx5e_tc_del_flow+0x46/0x270 [mlx5_core] mlx5e_flow_put+0x25/0x50 [mlx5_core] mlx5e_delete_flower+0x2a6/0x3e0 [mlx5_core] tc_setup_cb_reoffload+0x20/0x80 fl_reoffload+0x26f/0x2f0 [cls_flower] ? mlx5e_tc_reoffload_flows_work+0xc0/0xc0 [mlx5_core] ? mlx5e_tc_reoffload_flows_work+0xc0/0xc0 [mlx5_core] tcf_block_playback_offloads+0x9e/0x1c0 tcf_block_unbind+0x7b/0xd0 tcf_block_setup+0x186/0x1d0 tcf_block_offload_cmd.isra.0+0xef/0x130 tcf_block_offload_unbind+0x43/0x70 __tcf_block_put+0x85/0x160 ingress_destroy+0x32/0x110 [sch_ingress] __qdisc_destroy+0x44/0x100 qdisc_graft+0x22b/0x610 tc_get_qdisc+0x183/0x4d0 rtnetlink_rcv_msg+0x2d7/0x3d0 ? rtnl_calcit.isra.0+0x100/0x100 netlink_rcv_skb+0x53/0x100 netlink_unicast+0x249/0x320 ? __alloc_skb+0x102/0x1f0 netlink_sendmsg+0x1e3/0x420 __sock_sendmsg+0x38/0x60 ____sys_sendmsg+0x1ef/0x230 ? copy_msghdr_from_user+0x6c/0xa0 ___sys_sendmsg+0x7f/0xc0 ? ___sys_recvmsg+0x8a/0xc0 ? __sys_sendto+0x119/0x180 __sys_sendmsg+0x61/0xb0 do_syscall_64+0x55/0x640 entry_SYSCALL_64_after_hwframe+0x4b/0x53 RIP: 0033:0x7f35238bb764 Code: 15 b9 86 0c 00 f7 d8 64 89 02 b8 ff ff ff ff eb bf 0f 1f 44 00 00 f3 0f 1e fa 80 3d e5 08 0d 00 00 74 13 b8 2e 00 00 00 0f 05 <48> 3d 00 f0 ff ff 77 4c c3 0f 1f 00 55 48 89 e5 48 83 ec 20 89 55 RSP: 002b:00007ffed4c35638 EFLAGS: 00000202 ORIG_RAX: 000000000000002e RAX: ffffffffffffffda RBX: 000055a2efcc75e0 RCX: 00007f35238bb764 RDX: 0000000000000000 RSI: 00007ffed4c356a0 RDI: 0000000000000003 RBP: 00007ffed4c35710 R08: 0000000000000010 R09: 00007f3523984b20 R10: 0000000000000004 R11: 0000000000000202 R12: 00007ffed4c35790 R13: 000000006947df8f R14: 000055a2efcc75e0 R15: 00007ffed4c35780


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: platform/x86: toshiba_haps: Fix memory leaks in add/remove routines toshiba_haps_add() leaks the haps object allocated by it if it returns an error after allocating that object successfully. toshiba_haps_remove() does not free the object pointed to by toshiba_haps before clearing that pointer, so it becomes unreachable allocated memory. Address these memory leaks by using devm_kzalloc() for allocating the memory in question.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: HID: i2c-hid: fix potential buffer overflow in i2c_hid_get_report() `i2c_hid_xfer` is used to read `recv_len + sizeof(__le16)` bytes of data into `ihid->rawbuf`. The former can come from the userspace in the hidraw driver and is only bounded by HID_MAX_BUFFER_SIZE(16384) by default (unless we also set `max_buffer_size` field of `struct hid_ll_driver` which we do not). The latter has size determined at runtime by the maximum size of different report types you could receive on any particular device and can be a much smaller value. Fix this by truncating `recv_len` to `ihid->bufsize - sizeof(__le16)`. The impact is low since access to hidraw devices requires root.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: nvmet-tcp: fixup hang in nvmet_tcp_listen_data_ready() When the socket is closed while in TCP_LISTEN a callback is run to flush all outstanding packets, which in turns calls nvmet_tcp_listen_data_ready() with the sk_callback_lock held. So we need to check if we are in TCP_LISTEN before attempting to get the sk_callback_lock() to avoid a deadlock.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: spi: tegra: Fix a memory leak in tegra_slink_probe() In tegra_slink_probe(), when platform_get_irq() fails, it directly returns from the function with an error code, which causes a memory leak. Replace it with a goto label to ensure proper cleanup.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: ASoC: amd: fix memory leak in acp3x pdm dma ops


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: ALSA: aloop: Fix racy access at PCM trigger The PCM trigger callback of aloop driver tries to check the PCM state and stop the stream of the tied substream in the corresponding cable. Since both check and stop operations are performed outside the cable lock, this may result in UAF when a program attempts to trigger frequently while opening/closing the tied stream, as spotted by fuzzers. For addressing the UAF, this patch changes two things: - It covers the most of code in loopback_check_format() with cable->lock spinlock, and add the proper NULL checks. This avoids already some racy accesses. - In addition, now we try to check the state of the capture PCM stream that may be stopped in this function, which was the major pain point leading to UAF.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: KVM: Don't clobber irqfd routing type when deassigning irqfd When deassigning a KVM_IRQFD, don't clobber the irqfd's copy of the IRQ's routing entry as doing so breaks kvm_arch_irq_bypass_del_producer() on x86 and arm64, which explicitly look for KVM_IRQ_ROUTING_MSI. Instead, to handle a concurrent routing update, verify that the irqfd is still active before consuming the routing information. As evidenced by the x86 and arm64 bugs, and another bug in kvm_arch_update_irqfd_routing() (see below), clobbering the entry type without notifying arch code is surprising and error prone. As a bonus, checking that the irqfd is active provides a convenient location for documenting _why_ KVM must not consume the routing entry for an irqfd that is in the process of being deassigned: once the irqfd is deleted from the list (which happens *before* the eventfd is detached), it will no longer receive updates via kvm_irq_routing_update(), and so KVM could deliver an event using stale routing information (relative to KVM_SET_GSI_ROUTING returning to userspace). As an even better bonus, explicitly checking for the irqfd being active fixes a similar bug to the one the clobbering is trying to prevent: if an irqfd is deactivated, and then its routing is changed, kvm_irq_routing_update() won't invoke kvm_arch_update_irqfd_routing() (because the irqfd isn't in the list). And so if the irqfd is in bypass mode, IRQs will continue to be posted using the old routing information. As for kvm_arch_irq_bypass_del_producer(), clobbering the routing type results in KVM incorrectly keeping the IRQ in bypass mode, which is especially problematic on AMD as KVM tracks IRQs that are being posted to a vCPU in a list whose lifetime is tied to the irqfd. Without the help of KASAN to detect use-after-free, the most common sympton on AMD is a NULL pointer deref in amd_iommu_update_ga() due to the memory for irqfd structure being re-allocated and zeroed, resulting in irqfd->irq_bypass_data being NULL when read by avic_update_iommu_vcpu_affinity(): BUG: kernel NULL pointer dereference, address: 0000000000000018 #PF: supervisor read access in kernel mode #PF: error_code(0x0000) - not-present page PGD 40cf2b9067 P4D 40cf2b9067 PUD 408362a067 PMD 0 Oops: Oops: 0000 [#1] SMP CPU: 6 UID: 0 PID: 40383 Comm: vfio_irq_test Tainted: G U W O 6.19.0-smp--5dddc257e6b2-irqfd #31 NONE Tainted: [U]=USER, [W]=WARN, [O]=OOT_MODULE Hardware name: Google, Inc. Arcadia_IT_80/Arcadia_IT_80, BIOS 34.78.2-0 09/05/2025 RIP: 0010:amd_iommu_update_ga+0x19/0xe0 Call Trace: <TASK> avic_update_iommu_vcpu_affinity+0x3d/0x90 [kvm_amd] __avic_vcpu_load+0xf4/0x130 [kvm_amd] kvm_arch_vcpu_load+0x89/0x210 [kvm] vcpu_load+0x30/0x40 [kvm] kvm_arch_vcpu_ioctl_run+0x45/0x620 [kvm] kvm_vcpu_ioctl+0x571/0x6a0 [kvm] __se_sys_ioctl+0x6d/0xb0 do_syscall_64+0x6f/0x9d0 entry_SYSCALL_64_after_hwframe+0x4b/0x53 RIP: 0033:0x46893b </TASK> ---[ end trace 0000000000000000 ]--- If AVIC is inhibited when the irfd is deassigned, the bug will manifest as list corruption, e.g. on the next irqfd assignment. list_add corruption. next->prev should be prev (ffff8d474d5cd588), but was 0000000000000000. (next=ffff8d8658f86530). ------------[ cut here ]------------ kernel BUG at lib/list_debug.c:31! Oops: invalid opcode: 0000 [#1] SMP CPU: 128 UID: 0 PID: 80818 Comm: vfio_irq_test Tainted: G U W O 6.19.0-smp--f19dc4d680ba-irqfd #28 NONE Tainted: [U]=USER, [W]=WARN, [O]=OOT_MODULE Hardware name: Google, Inc. Arcadia_IT_80/Arcadia_IT_80, BIOS 34.78.2-0 09/05/2025 RIP: 0010:__list_add_valid_or_report+0x97/0xc0 Call Trace: <TASK> avic_pi_update_irte+0x28e/0x2b0 [kvm_amd] kvm_pi_update_irte+0xbf/0x190 [kvm] kvm_arch_irq_bypass_add_producer+0x72/0x90 [kvm] irq_bypass_register_consumer+0xcd/0x170 [irqbypa ---truncated---


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: spi: tegra210-quad: Protect curr_xfer in tegra_qspi_combined_seq_xfer The curr_xfer field is read by the IRQ handler without holding the lock to check if a transfer is in progress. When clearing curr_xfer in the combined sequence transfer loop, protect it with the spinlock to prevent a race with the interrupt handler. Protect the curr_xfer clearing at the exit path of tegra_qspi_combined_seq_xfer() with the spinlock to prevent a race with the interrupt handler that reads this field. Without this protection, the IRQ handler could read a partially updated curr_xfer value, leading to NULL pointer dereference or use-after-free.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: net/sched: cls_u32: use skb_header_pointer_careful() skb_header_pointer() does not fully validate negative @offset values. Use skb_header_pointer_careful() instead. GangMin Kim provided a report and a repro fooling u32_classify(): BUG: KASAN: slab-out-of-bounds in u32_classify+0x1180/0x11b0 net/sched/cls_u32.c:221


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: spi: tegra210-quad: Protect curr_xfer check in IRQ handler Now that all other accesses to curr_xfer are done under the lock, protect the curr_xfer NULL check in tegra_qspi_isr_thread() with the spinlock. Without this protection, the following race can occur: CPU0 (ISR thread) CPU1 (timeout path) ---------------- ------------------- if (!tqspi->curr_xfer) // sees non-NULL spin_lock() tqspi->curr_xfer = NULL spin_unlock() handle_*_xfer() spin_lock() t = tqspi->curr_xfer // NULL! ... t->len ... // NULL dereference! With this patch, all curr_xfer accesses are now properly synchronized. Although all accesses to curr_xfer are done under the lock, in tegra_qspi_isr_thread() it checks for NULL, releases the lock and reacquires it later in handle_cpu_based_xfer()/handle_dma_based_xfer(). There is a potential for an update in between, which could cause a NULL pointer dereference. To handle this, add a NULL check inside the handlers after acquiring the lock. This ensures that if the timeout path has already cleared curr_xfer, the handler will safely return without dereferencing the NULL pointer.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: ALSA: usb-audio: Prevent excessive number of frames In this case, the user constructed the parameters with maxpacksize 40 for rate 22050 / pps 1000, and packsize[0] 22 packsize[1] 23. The buffer size for each data URB is maxpacksize * packets, which in this example is 40 * 6 = 240; When the user performs a write operation to send audio data into the ALSA PCM playback stream, the calculated number of frames is packsize[0] * packets = 264, which exceeds the allocated URB buffer size, triggering the out-of-bounds (OOB) issue reported by syzbot [1]. Added a check for the number of single data URB frames when calculating the number of frames to prevent [1]. [1] BUG: KASAN: slab-out-of-bounds in copy_to_urb+0x261/0x460 sound/usb/pcm.c:1487 Write of size 264 at addr ffff88804337e800 by task syz.0.17/5506 Call Trace: copy_to_urb+0x261/0x460 sound/usb/pcm.c:1487 prepare_playback_urb+0x953/0x13d0 sound/usb/pcm.c:1611 prepare_outbound_urb+0x377/0xc50 sound/usb/endpoint.c:333


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: macvlan: fix error recovery in macvlan_common_newlink() valis provided a nice repro to crash the kernel: ip link add p1 type veth peer p2 ip link set address 00:00:00:00:00:20 dev p1 ip link set up dev p1 ip link set up dev p2 ip link add mv0 link p2 type macvlan mode source ip link add invalid% link p2 type macvlan mode source macaddr add 00:00:00:00:00:20 ping -c1 -I p1 1.2.3.4 He also gave a very detailed analysis: <quote valis> The issue is triggered when a new macvlan link is created with MACVLAN_MODE_SOURCE mode and MACVLAN_MACADDR_ADD (or MACVLAN_MACADDR_SET) parameter, lower device already has a macvlan port and register_netdevice() called from macvlan_common_newlink() fails (e.g. because of the invalid link name). In this case macvlan_hash_add_source is called from macvlan_change_sources() / macvlan_common_newlink(): This adds a reference to vlan to the port's vlan_source_hash using macvlan_source_entry. vlan is a pointer to the priv data of the link that is being created. When register_netdevice() fails, the error is returned from macvlan_newlink() to rtnl_newlink_create(): if (ops->newlink) err = ops->newlink(dev, &params, extack); else err = register_netdevice(dev); if (err < 0) { free_netdev(dev); goto out; } and free_netdev() is called, causing a kvfree() on the struct net_device that is still referenced in the source entry attached to the lower device's macvlan port. Now all packets sent on the macvlan port with a matching source mac address will trigger a use-after-free in macvlan_forward_source(). </quote valis> With all that, my fix is to make sure we call macvlan_flush_sources() regardless of @create value whenever "goto destroy_macvlan_port;" path is taken. Many thanks to valis for following up on this issue.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: ice: Fix PTP NULL pointer dereference during VSI rebuild Fix race condition where PTP periodic work runs while VSI is being rebuilt, accessing NULL vsi->rx_rings. The sequence was: 1. ice_ptp_prepare_for_reset() cancels PTP work 2. ice_ptp_rebuild() immediately queues PTP work 3. VSI rebuild happens AFTER ice_ptp_rebuild() 4. PTP work runs and accesses NULL vsi->rx_rings Fix: Keep PTP work cancelled during rebuild, only queue it after VSI rebuild completes in ice_rebuild(). Added ice_ptp_queue_work() helper function to encapsulate the logic for queuing PTP work, ensuring it's only queued when PTP is supported and the state is ICE_PTP_READY. Error log: [ 121.392544] ice 0000:60:00.1: PTP reset successful [ 121.392692] BUG: kernel NULL pointer dereference, address: 0000000000000000 [ 121.392712] #PF: supervisor read access in kernel mode [ 121.392720] #PF: error_code(0x0000) - not-present page [ 121.392727] PGD 0 [ 121.392734] Oops: Oops: 0000 [#1] SMP NOPTI [ 121.392746] CPU: 8 UID: 0 PID: 1005 Comm: ice-ptp-0000:60 Tainted: G S 6.19.0-rc6+ #4 PREEMPT(voluntary) [ 121.392761] Tainted: [S]=CPU_OUT_OF_SPEC [ 121.392773] RIP: 0010:ice_ptp_update_cached_phctime+0xbf/0x150 [ice] [ 121.393042] Call Trace: [ 121.393047] <TASK> [ 121.393055] ice_ptp_periodic_work+0x69/0x180 [ice] [ 121.393202] kthread_worker_fn+0xa2/0x260 [ 121.393216] ? __pfx_ice_ptp_periodic_work+0x10/0x10 [ice] [ 121.393359] ? __pfx_kthread_worker_fn+0x10/0x10 [ 121.393371] kthread+0x10d/0x230 [ 121.393382] ? __pfx_kthread+0x10/0x10 [ 121.393393] ret_from_fork+0x273/0x2b0 [ 121.393407] ? __pfx_kthread+0x10/0x10 [ 121.393417] ret_from_fork_asm+0x1a/0x30 [ 121.393432] </TASK>


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: drm/amd/pm: Disable MMIO access during SMU Mode 1 reset During Mode 1 reset, the ASIC undergoes a reset cycle and becomes temporarily inaccessible via PCIe. Any attempt to access MMIO registers during this window (e.g., from interrupt handlers or other driver threads) can result in uncompleted PCIe transactions, leading to NMI panics or system hangs. To prevent this, set the `no_hw_access` flag to true immediately after triggering the reset. This signals other driver components to skip register accesses while the device is offline. A memory barrier `smp_mb()` is added to ensure the flag update is globally visible to all cores before the driver enters the sleep/wait state. (cherry picked from commit 7edb503fe4b6d67f47d8bb0dfafb8e699bb0f8a4)


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: btrfs: reject new transactions if the fs is fully read-only [BUG] There is a bug report where a heavily fuzzed fs is mounted with all rescue mount options, which leads to the following warnings during unmount: BTRFS: Transaction aborted (error -22) Modules linked in: CPU: 0 UID: 0 PID: 9758 Comm: repro.out Not tainted 6.19.0-rc5-00002-gb71e635feefc #7 PREEMPT(full) Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.15.0-1 04/01/2014 RIP: 0010:find_free_extent_update_loop fs/btrfs/extent-tree.c:4208 [inline] RIP: 0010:find_free_extent+0x52f0/0x5d20 fs/btrfs/extent-tree.c:4611 Call Trace: <TASK> btrfs_reserve_extent+0x2cd/0x790 fs/btrfs/extent-tree.c:4705 btrfs_alloc_tree_block+0x1e1/0x10e0 fs/btrfs/extent-tree.c:5157 btrfs_force_cow_block+0x578/0x2410 fs/btrfs/ctree.c:517 btrfs_cow_block+0x3c4/0xa80 fs/btrfs/ctree.c:708 btrfs_search_slot+0xcad/0x2b50 fs/btrfs/ctree.c:2130 btrfs_truncate_inode_items+0x45d/0x2350 fs/btrfs/inode-item.c:499 btrfs_evict_inode+0x923/0xe70 fs/btrfs/inode.c:5628 evict+0x5f4/0xae0 fs/inode.c:837 __dentry_kill+0x209/0x660 fs/dcache.c:670 finish_dput+0xc9/0x480 fs/dcache.c:879 shrink_dcache_for_umount+0xa0/0x170 fs/dcache.c:1661 generic_shutdown_super+0x67/0x2c0 fs/super.c:621 kill_anon_super+0x3b/0x70 fs/super.c:1289 btrfs_kill_super+0x41/0x50 fs/btrfs/super.c:2127 deactivate_locked_super+0xbc/0x130 fs/super.c:474 cleanup_mnt+0x425/0x4c0 fs/namespace.c:1318 task_work_run+0x1d4/0x260 kernel/task_work.c:233 exit_task_work include/linux/task_work.h:40 [inline] do_exit+0x694/0x22f0 kernel/exit.c:971 do_group_exit+0x21c/0x2d0 kernel/exit.c:1112 __do_sys_exit_group kernel/exit.c:1123 [inline] __se_sys_exit_group kernel/exit.c:1121 [inline] __x64_sys_exit_group+0x3f/0x40 kernel/exit.c:1121 x64_sys_call+0x2210/0x2210 arch/x86/include/generated/asm/syscalls_64.h:232 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline] do_syscall_64+0xe8/0xf80 arch/x86/entry/syscall_64.c:94 entry_SYSCALL_64_after_hwframe+0x77/0x7f RIP: 0033:0x44f639 Code: Unable to access opcode bytes at 0x44f60f. RSP: 002b:00007ffc15c4e088 EFLAGS: 00000246 ORIG_RAX: 00000000000000e7 RAX: ffffffffffffffda RBX: 00000000004c32f0 RCX: 000000000044f639 RDX: 000000000000003c RSI: 00000000000000e7 RDI: 0000000000000001 RBP: 0000000000000001 R08: ffffffffffffffc0 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 00000000004c32f0 R13: 0000000000000001 R14: 0000000000000000 R15: 0000000000000001 </TASK> Since rescue mount options will mark the full fs read-only, there should be no new transaction triggered. But during unmount we will evict all inodes, which can trigger a new transaction, and triggers warnings on a heavily corrupted fs. [CAUSE] Btrfs allows new transaction even on a read-only fs, this is to allow log replay happen even on read-only mounts, just like what ext4/xfs do. However with rescue mount options, the fs is fully read-only and cannot be remounted read-write, thus in that case we should also reject any new transactions. [FIX] If we find the fs has rescue mount options, we should treat the fs as error, so that no new transaction can be started.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: bus: fsl-mc: fix use-after-free in driver_override_show() The driver_override_show() function reads the driver_override string without holding the device_lock. However, driver_override_store() uses driver_set_override(), which modifies and frees the string while holding the device_lock. This can result in a concurrent use-after-free if the string is freed by the store function while being read by the show function. Fix this by holding the device_lock around the read operation.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: crypto: omap - Allocate OMAP_CRYPTO_FORCE_COPY scatterlists correctly The existing allocation of scatterlists in omap_crypto_copy_sg_lists() was allocating an array of scatterlist pointers, not scatterlist objects, resulting in a 4x too small allocation. Use sizeof(*new_sg) to get the correct object size.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: crypto: virtio - Add spinlock protection with virtqueue notification When VM boots with one virtio-crypto PCI device and builtin backend, run openssl benchmark command with multiple processes, such as openssl speed -evp aes-128-cbc -engine afalg -seconds 10 -multi 32 openssl processes will hangup and there is error reported like this: virtio_crypto virtio0: dataq.0:id 3 is not a head! It seems that the data virtqueue need protection when it is handled for virtio done notification. If the spinlock protection is added in virtcrypto_done_task(), openssl benchmark with multiple processes works well.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: apparmor: fix unprivileged local user can do privileged policy management An unprivileged local user can load, replace, and remove profiles by opening the apparmorfs interfaces, via a confused deputy attack, by passing the opened fd to a privileged process, and getting the privileged process to write to the interface. This does require a privileged target that can be manipulated to do the write for the unprivileged process, but once such access is achieved full policy management is possible and all the possible implications that implies: removing confinement, DoS of system or target applications by denying all execution, by-passing the unprivileged user namespace restriction, to exploiting kernel bugs for a local privilege escalation. The policy management interface can not have its permissions simply changed from 0666 to 0600 because non-root processes need to be able to load policy to different policy namespaces. Instead ensure the task writing the interface has privileges that are a subset of the task that opened the interface. This is already done via policy for confined processes, but unconfined can delegate access to the opened fd, by-passing the usual policy check.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: apparmor: validate DFA start states are in bounds in unpack_pdb Start states are read from untrusted data and used as indexes into the DFA state tables. The aa_dfa_next() function call in unpack_pdb() will access dfa->tables[YYTD_ID_BASE][start], and if the start state exceeds the number of states in the DFA, this results in an out-of-bound read. ================================================================== BUG: KASAN: slab-out-of-bounds in aa_dfa_next+0x2a1/0x360 Read of size 4 at addr ffff88811956fb90 by task su/1097 ... Reject policies with out-of-bounds start states during unpacking to prevent the issue.


Затронутые продукты
SUSE Linux Enterprise Live Patching 15 SP7:kernel-livepatch-6_4_0-150700_7_34-rt-1-150700.1.3.1
SUSE Real Time Module 15 SP7:cluster-md-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:dlm-kmp-rt-6.4.0-150700.7.34.1
SUSE Real Time Module 15 SP7:gfs2-kmp-rt-6.4.0-150700.7.34.1

Ссылки
Уязвимость SUSE-SU-2026:0962-1