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

exploitDog

suse-cvrf логотип

SUSE-SU-2025:01972-1

Опубликовано: 17 июн. 2025
Источник: 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-2024-28956: x86/ibt: Keep IBT disabled during alternative patching (bsc#1242006).
  • CVE-2024-35840: mptcp: use OPTION_MPTCP_MPJ_SYNACK in subflow_finish_connect() (bsc#1224597).
  • CVE-2024-46713: kabi fix for perf/aux: Fix AUX buffer serialization (bsc#1230581).
  • CVE-2024-50223: sched/numa: Fix the potential null pointer dereference in (bsc#1233192).
  • CVE-2024-54458: scsi: ufs: bsg: Set bsg_queue to NULL after removal (bsc#1238992).
  • CVE-2024-58070: bpf: bpf_local_storage: Always use bpf_mem_alloc in PREEMPT_RT (bsc#1238983).
  • CVE-2025-21648: netfilter: conntrack: clamp maximum hashtable size to INT_MAX (bsc#1236142).
  • CVE-2025-21683: bpf: Fix bpf_sk_select_reuseport() memory leak (bsc#1236704).
  • CVE-2025-21702: pfifo_tail_enqueue: Drop new packet when sch->limit == 0 (bsc#1237312).
  • CVE-2025-21707: mptcp: consolidate suboption status (bsc#1238862).
  • CVE-2025-21758: ipv6: mcast: add RCU protection to mld_newpack() (bsc#1238737).
  • CVE-2025-21768: net: ipv6: fix dst ref loops in rpl, seg6 and ioam6 lwtunnels (bsc#1238714).
  • CVE-2025-21787: team: better TEAM_OPTION_TYPE_STRING validation (bsc#1238774).
  • CVE-2025-21792: ax25: Fix refcount leak caused by setting SO_BINDTODEVICE sockopt (bsc#1238745).
  • CVE-2025-21814: ptp: Ensure info->enable callback is always set (bsc#1238473).
  • CVE-2025-21919: sched/fair: Fix potential memory corruption in child_cfs_rq_on_list (bsc#1240593).
  • CVE-2025-21962: cifs: Fix integer overflow while processing closetimeo mount option (bsc#1240655).
  • CVE-2025-21963: cifs: Fix integer overflow while processing acdirmax mount option (bsc#1240717).
  • CVE-2025-21964: cifs: Fix integer overflow while processing acregmax mount option (bsc#1240740).
  • CVE-2025-22018: atm: Fix NULL pointer dereference (bsc#1241266).
  • CVE-2025-22021: netfilter: socket: Lookup orig tuple for IPv6 SNAT (bsc#1241282).
  • CVE-2025-22030: mm: zswap: fix crypto_free_acomp() deadlock in zswap_cpu_comp_dead() (bsc#1241376).
  • CVE-2025-22056: netfilter: nft_tunnel: fix geneve_opt type confusion addition (bsc#1241525).
  • CVE-2025-22057: net: decrease cached dst counters in dst_release (bsc#1241533).
  • CVE-2025-22058: udp: Fix memory accounting leak (bsc#1241332).
  • CVE-2025-22063: netlabel: Fix NULL pointer exception caused by CALIPSO on IPv4 sockets (bsc#1241351).
  • CVE-2025-22064: netfilter: nf_tables: do not unregister hook when table is dormant (bsc#1241413).
  • CVE-2025-22070: fs/9p: fix NULL pointer dereference on mkdir (bsc#1241305).
  • CVE-2025-22094: powerpc/perf: Fix ref-counting on the PMU 'vpa_pmu' (bsc#1241512).
  • CVE-2025-22102: Bluetooth: btnxpuart: Fix kernel panic during FW release (bsc#1241456).
  • CVE-2025-22103: net: fix NULL pointer dereference in l3mdev_l3_rcv (bsc#1241448).
  • CVE-2025-22104: ibmvnic: Use kernel helpers for hex dumps (bsc#1241550).
  • CVE-2025-22107: net: dsa: sja1105: fix kasan out-of-bounds warning in sja1105_table_delete_entry() (bsc#1241575).
  • CVE-2025-22109: ax25: Remove broken autobind (bsc#1241573).
  • CVE-2025-23138: watch_queue: fix pipe accounting mismatch (bsc#1241648).
  • CVE-2025-23140: misc: pci_endpoint_test: Avoid issue of interrupts remaining after request_irq error (bsc#1242763).
  • CVE-2025-23145: mptcp: fix NULL pointer in can_accept_new_subflow (bsc#1242596).
  • CVE-2025-23150: ext4: fix off-by-one error in do_split (bsc#1242513).
  • CVE-2025-23154: io_uring/net: fix io_req_post_cqe abuse by send bundle (bsc#1242533).
  • CVE-2025-23160: media: mediatek: vcodec: Fix a resource leak related to the scp device in FW initialization (bsc#1242507).
  • CVE-2025-37747: kABI workaround for perf-Fix-hang-while-freeing-sigtrap-event (References: bsc#1242520).
  • CVE-2025-37748: iommu/mediatek: Fix NULL pointer deference in mtk_iommu_device_group (bsc#1242523).
  • CVE-2025-37749: net: ppp: Add bound checking for skb data on ppp_sync_txmung (bsc#1242859).
  • CVE-2025-37750: smb: client: fix UAF in decryption with multichannel (bsc#1242510).
  • CVE-2025-37755: net: libwx: handle page_pool_dev_alloc_pages error (bsc#1242506).
  • CVE-2025-37773: virtiofs: add filesystem context source name check (bsc#1242502).
  • CVE-2025-37780: isofs: Prevent the use of too small fid (bsc#1242786).
  • CVE-2025-37787: net: dsa: mv88e6xxx: avoid unregistering devlink regions which were never registered (bsc#1242585).
  • CVE-2025-37789: net: openvswitch: fix nested key length validation in the set() action (bsc#1242762).
  • CVE-2025-37790: net: mctp: Set SOCK_RCU_FREE (bsc#1242509).
  • CVE-2025-37797: net_sched: hfsc: Fix a UAF vulnerability in class handling (bsc#1242417).
  • CVE-2025-37798: codel: remove sch->q.qlen check before qdisc_tree_reduce_backlog() (bsc#1242414).
  • CVE-2025-37799: vmxnet3: Fix malformed packet sizing in vmxnet3_process_xdp (bsc#1242283).
  • CVE-2025-37803: udmabuf: fix a buf size overflow issue during udmabuf creation (bsc#1242852).
  • CVE-2025-37804: io_uring: always do atomic put from iowq (bsc#1242854).
  • CVE-2025-37809: usb: typec: class: Unlocked on error in typec_register_partner() (bsc#1242856).
  • CVE-2025-37820: xen-netfront: handle NULL returned by xdp_convert_buff_to_frame() (bsc#1242866).
  • CVE-2025-37823: net_sched: hfsc: Fix a potential UAF in hfsc_dequeue() too (bsc#1242924).
  • CVE-2025-37824: tipc: fix NULL pointer dereference in tipc_mon_reinit_self() (bsc#1242867).
  • CVE-2025-37829: cpufreq: scpi: Fix null-ptr-deref in scpi_cpufreq_get_rate() (bsc#1242875).
  • CVE-2025-37830: cpufreq: scmi: Fix null-ptr-deref in scmi_cpufreq_get_rate() (bsc#1242860).
  • CVE-2025-37831: cpufreq: apple-soc: Fix null-ptr-deref in apple_soc_cpufreq_get_rate() (bsc#1242861).
  • CVE-2025-37833: net/niu: Niu requires MSIX ENTRY_DATA fields touch before entry reads (bsc#1242868).
  • CVE-2025-37842: spi: fsl-qspi: Fix double cleanup in probe error path (bsc#1242951).
  • CVE-2025-37870: drm/amd/display: prevent hang on link training fail (bsc#1243056).
  • CVE-2025-37879: 9p/net: fix improper handling of bogus negative read/write replies (bsc#1243077).
  • CVE-2025-37886: pds_core: make wait_context part of q_info (bsc#1242944).
  • CVE-2025-37887: pds_core: handle unsupported PDS_CORE_CMD_FW_CONTROL result (bsc#1242962).
  • CVE-2025-37949: xenbus: Use kref to track req lifetime (bsc#1243541).
  • CVE-2025-37957: KVM: SVM: Forcibly leave SMM mode on SHUTDOWN interception (bsc#1243513).
  • CVE-2025-37958: mm/huge_memory: fix dereferencing invalid pmd migration entry (bsc#1243539).
  • CVE-2025-37960: memblock: Accept allocated memory before use in memblock_double_array() (bsc#1243519).
  • CVE-2025-37974: s390/pci: Fix missing check for zpci_create_device() error return (bsc#1243547).
  • CVE-2025-38152: remoteproc: core: Clear table_sz when rproc_shutdown (bsc#1241627).
  • CVE-2025-38637: net_sched: skbprio: Remove overly strict queue assertions (bsc#1241657).

The following non-security bugs were fixed:

  • ACPI PPTT: Fix coding mistakes in a couple of sizeof() calls (stable-fixes).
  • ACPI: EC: Set ec_no_wakeup for Lenovo Go S (stable-fixes).
  • ACPI: PPTT: Fix processor subtable walk (git-fixes).
  • ALSA: es1968: Add error handling for snd_pcm_hw_constraint_pow2() (git-fixes).
  • ALSA: hda/realtek - Enable speaker for HP platform (git-fixes).
  • ALSA: hda/realtek: Fix built-mic regression on other ASUS models (git-fixes).
  • ALSA: seq: Fix delivery of UMP events to group ports (git-fixes).
  • ALSA: sh: SND_AICA should depend on SH_DMA_API (git-fixes).
  • ALSA: ump: Fix a typo of snd_ump_stream_msg_device_info (git-fixes).
  • ALSA: usb-audio: Add retry on -EPROTO from usb_set_interface() (stable-fixes).
  • ALSA: usb-audio: Add sample rate quirk for Audioengine D1 (git-fixes).
  • ALSA: usb-audio: Add sample rate quirk for Microdia JP001 USB Camera (stable-fixes).
  • ALSA: usb-audio: Add second USB ID for Jabra Evolve 65 headset (stable-fixes).
  • ASoC: SOF: ipc4-control: Use SOF_CTRL_CMD_BINARY as numid for bytes_ext (git-fixes).
  • ASoC: SOF: ipc4-pcm: Delay reporting is only supported for playback direction (git-fixes).
  • ASoC: Use of_property_read_bool() (stable-fixes).
  • ASoC: simple-card-utils: Fix pointer check in graph_util_parse_link_direction (git-fixes).
  • ASoC: soc-core: Stop using of_property_read_bool() for non-boolean properties (stable-fixes).
  • ASoC: soc-pcm: Fix hw_params() and DAPM widget sequence (git-fixes).
  • ASoc: SOF: topology: connect DAI to a single DAI link (git-fixes).
  • Bluetooth: L2CAP: Fix not checking l2cap_chan security level (git-fixes).
  • Bluetooth: MGMT: Fix MGMT_OP_ADD_DEVICE invalid device flags (git-fixes).
  • Bluetooth: btintel_pcie: Add additional to checks to clear TX/RX paths (git-fixes).
  • Bluetooth: btusb: avoid NULL pointer dereference in skb_dequeue() (git-fixes).
  • Bluetooth: btusb: use skb_pull to avoid unsafe access in QCA dump handling (git-fixes).
  • Drivers: hv: Allow vmbus_sendpacket_mpb_desc() to create multiple ranges (git-fixes).
  • Fix write to cloned skb in ipv6_hop_ioam() (git-fixes).
  • HID: thrustmaster: fix memory leak in thrustmaster_interrupts() (git-fixes).
  • HID: uclogic: Add NULL check in uclogic_input_configured() (git-fixes).
  • IB/cm: use rwlock for MAD agent lock (git-fixes)
  • Input: cyttsp5 - ensure minimum reset pulse width (git-fixes).
  • Input: cyttsp5 - fix power control issue on wakeup (git-fixes).
  • Input: mtk-pmic-keys - fix possible null pointer dereference (git-fixes).
  • Input: synaptics - enable InterTouch on Dell Precision M3800 (stable-fixes).
  • Input: synaptics - enable InterTouch on Dynabook Portege X30-D (stable-fixes).
  • Input: synaptics - enable InterTouch on Dynabook Portege X30L-G (stable-fixes).
  • Input: synaptics - enable InterTouch on TUXEDO InfinityBook Pro 14 v5 (stable-fixes).
  • Input: synaptics - enable SMBus for HP Elitebook 850 G1 (stable-fixes).
  • Input: synaptics-rmi - fix crash with unsupported versions of F34 (git-fixes).
  • Input: xpad - add support for 8BitDo Ultimate 2 Wireless Controller (stable-fixes).
  • Input: xpad - fix Share button on Xbox One controllers (stable-fixes).
  • Input: xpad - fix two controller table values (git-fixes).
  • KVM: PPC: Book3S HV: Fix IRQ map warnings with XICS on pSeries KVM Guest (bsc#1242205 ltc#212592).
  • KVM: SVM: Allocate IR data using atomic allocation (git-fixes).
  • KVM: SVM: Do not change target vCPU state on AP Creation VMGEXIT error (git-fixes).
  • KVM: SVM: Drop DEBUGCTL[5:2] from guest's effective value (git-fixes).
  • KVM: SVM: Refuse to attempt VRMUN if an SEV-ES+ guest had an invalid VMSA (git-fixes).
  • KVM: SVM: Save host DR masks on CPUs with DebugSwap (jsc#PED-348).
  • KVM: SVM: Suppress DEBUGCTL.BTF on AMD (git-fixes).
  • KVM: SVM: Update dump_ghcb() to use the GHCB snapshot fields (git-fixes).
  • KVM: VMX: Do not modify guest XFD_ERR if CR0.TS=1 (git-fixes).
  • KVM: arm64: Change kvm_handle_mmio_return() return polarity (git-fixes).
  • KVM: arm64: Fix RAS trapping in pKVM for protected VMs (git-fixes).
  • KVM: arm64: Ignore PMCNTENSET_EL0 while checking for overflow status (git-fixes).
  • KVM: arm64: Mark some header functions as inline (git-fixes).
  • KVM: arm64: Tear down vGIC on failed vCPU creation (git-fixes).
  • KVM: arm64: timer: Always evaluate the need for a soft timer (git-fixes).
  • KVM: arm64: vgic-its: Add a data length check in vgic_its_save_* (git-fixes).
  • KVM: arm64: vgic-its: Clear DTE when MAPD unmaps a device (git-fixes).
  • KVM: arm64: vgic-its: Clear ITE when DISCARD frees an ITE (git-fixes).
  • KVM: arm64: vgic-v4: Fall back to software irqbypass if LPI not found (git-fixes).
  • KVM: arm64: vgic-v4: Only attempt vLPI mapping for actual MSIs (git-fixes).
  • KVM: nSVM: Pass next RIP, not current RIP, for nested VM-Exit on emulation (git-fixes).
  • KVM: nVMX: Allow emulating RDPID on behalf of L2 (git-fixes).
  • KVM: nVMX: Check PAUSE_EXITING, not BUS_LOCK_DETECTION, on PAUSE emulation (git-fixes).
  • KVM: s390: Do not use %pK through debug printing (git-fixes bsc#1243657).
  • KVM: s390: Do not use %pK through tracepoints (git-fixes bsc#1243658).
  • KVM: x86/mmu: Check and free obsolete roots in kvm_mmu_reload() (git-fixes).
  • KVM: x86/xen: Use guest's copy of pvclock when starting timer (git-fixes).
  • KVM: x86: Acquire SRCU in KVM_GET_MP_STATE to protect guest memory accesses (git-fixes).
  • KVM: x86: Check that the high 32bits are clear in kvm_arch_vcpu_ioctl_run() (git-fixes).
  • KVM: x86: Do not take kvm->lock when iterating over vCPUs in suspend notifier (git-fixes).
  • KVM: x86: Explicitly treat routing entry type changes as changes (git-fixes).
  • KVM: x86: Explicitly zero EAX and EBX when PERFMON_V2 isn't supported by KVM (git-fixes).
  • KVM: x86: Explicitly zero-initialize on-stack CPUID unions (git-fixes).
  • KVM: x86: Make x2APIC ID 100% readonly (git-fixes).
  • KVM: x86: Reject disabling of MWAIT/HLT interception when not allowed (git-fixes).
  • KVM: x86: Remove the unreachable case for 0x80000022 leaf in __do_cpuid_func() (git-fixes).
  • KVM: x86: Wake vCPU for PIC interrupt injection iff a valid IRQ was found (git-fixes).
  • KVM: x86: block KVM_CAP_SYNC_REGS if guest state is protected (git-fixes).
  • Move upstreamed sound patch into sorted section
  • Move upstreamed tpm patch into sorted section
  • NFS: O_DIRECT writes must check and adjust the file length (git-fixes).
  • NFSD: Skip sending CB_RECALL_ANY when the backchannel isn't up (git-fixes).
  • NFSv4/pnfs: Reset the layout state after a layoutreturn (git-fixes).
  • NFSv4: Do not trigger uneccessary scans for return-on-close delegations (git-fixes).
  • RDMA/cma: Fix hang when cma_netevent_callback fails to queue_work (git-fixes)
  • RDMA/core: Fix 'KASAN: slab-use-after-free Read in ib_register_device' problem (git-fixes)
  • RDMA/hns: Include hnae3.h in hns_roce_hw_v2.h (git-fixes)
  • RDMA/iwcm: Fix use-after-free of work objects after cm_id destruction (git-fixes)
  • RDMA/mlx5: Fix error flow upon firmware failure for RQ destruction (git-fixes)
  • RDMA/rxe: Fix 'trying to register non-static key in rxe_qp_do_cleanup' bug (git-fixes)
  • RDMA/rxe: Fix slab-use-after-free Read in rxe_queue_cleanup bug (git-fixes)
  • Readd patches.kabi/md-md_personality-workaround-v2.patch dropped in merge by accident.
  • Refresh fixes for cBPF issue (bsc#1242778)
  • Remove debug flavor (bsc#1243919). This is only released in Leap, and we do not have Leap 15.7
  • Revert 'drm/amd/display: Hardware cursor changes color when switched to software cursor' (stable-fixes).
  • Revert 'drm/amd: Keep display off while going into S4' (git-fixes).
  • Revert 'drm/amd: Stop evicting resources on APUs in suspend' (stable-fixes).
  • Revert 'rndis_host: Flag RNDIS modems as WWAN devices' (git-fixes).
  • Sort ITS patches
  • Squashfs: check return result of sb_min_blocksize (git-fixes).
  • USB: OHCI: Add quirk for LS7A OHCI controller (rev 0x02) (stable-fixes).
  • USB: VLI disk crashes if LPM is used (stable-fixes).
  • USB: serial: ftdi_sio: add support for Abacus Electrics Optical Probe (stable-fixes).
  • USB: serial: option: add Sierra Wireless EM9291 (stable-fixes).
  • USB: serial: simple: add OWON HDS200 series oscilloscope support (stable-fixes).
  • USB: storage: quirk for ADATA Portable HDD CH94 (stable-fixes).
  • USB: usbtmc: use interruptible sleep in usbtmc_read (git-fixes).
  • Update patches.suse/nvme-fixup-scan-failure-for-non-ANA-multipath-contro.patch (git-fixes bsc#1235149).
  • Update patches.suse/nvme-re-read-ANA-log-page-after-ns-scan-completes.patch (git-fixes bsc#1235149).
  • Xen/swiotlb: mark xen_swiotlb_fixup() __init (git-fixes).
  • add bug reference for an existing hv_netvsc change (bsc#1243737).
  • afs: Fix the server_list to unuse a displaced server rather than putting it (git-fixes).
  • afs: Make it possible to find the volumes that are using a server (git-fixes).
  • arm64: bpf: Add BHB mitigation to the epilogue for cBPF programs (bsc#1242778).
  • arm64: bpf: Add BHB mitigation to the epilogue for cBPF programs (git-fixes)
  • arm64: bpf: Only mitigate cBPF programs loaded by unprivileged users (bsc#1242778).
  • arm64: bpf: Only mitigate cBPF programs loaded by unprivileged users (git-fixes)
  • arm64: cputype: Add QCOM_CPU_PART_KRYO_3XX_GOLD (git-fixes)
  • arm64: dts: imx8mm-verdin: Link reg_usdhc2_vqmmc to usdhc2 (git-fixes)
  • arm64: errata: Add missing sentinels to Spectre-BHB MIDR arrays (git-fixes)
  • arm64: insn: Add support for encoding DSB (bsc#1242778).
  • arm64: insn: Add support for encoding DSB (git-fixes)
  • arm64: proton-pack: Add new CPUs 'k' values for branch mitigation (bsc#1242778).
  • arm64: proton-pack: Add new CPUs 'k' values for branch mitigation (git-fixes)
  • arm64: proton-pack: Expose whether the branchy loop k value (bsc#1242778).
  • arm64: proton-pack: Expose whether the branchy loop k value (git-fixes)
  • arm64: proton-pack: Expose whether the platform is mitigated by (git-fixes)
  • arm64: proton-pack: Expose whether the platform is mitigated by firmware (bsc#1242778).
  • arp: switch to dev_getbyhwaddr() in arp_req_set_public() (git-fixes).
  • ata: libata-scsi: Fix ata_mselect_control_ata_feature() return type (git-fixes).
  • ata: libata-scsi: Fix ata_msense_control_ata_feature() (git-fixes).
  • ata: libata-scsi: Improve CDL control (git-fixes).
  • auxdisplay: hd44780: Convert to platform remove callback returning void (stable-fixes).
  • auxdisplay: hd44780: Fix an API misuse in hd44780.c (git-fixes).
  • bnxt_en: Add missing skb_mark_for_recycle() in bnxt_rx_vlan() (git-fixes).
  • bnxt_en: Fix coredump logic to free allocated buffer (git-fixes).
  • bnxt_en: Fix ethtool -d byte order for 32-bit values (git-fixes).
  • bnxt_en: Fix ethtool selftest output in one of the failure cases (git-fixes).
  • bnxt_en: Fix out-of-bound memcpy() during ethtool -w (git-fixes).
  • bnxt_en: call pci_alloc_irq_vectors() after bnxt_reserve_rings() (git-fixes).
  • bnxt_en: fix module unload sequence (git-fixes).
  • bnxt_en: improve TX timestamping FIFO configuration (git-fixes).
  • bonding: fix incorrect MAC address setting to receive NS messages (git-fixes).
  • bpf: Fix mismatched RCU unlock flavour in bpf_out_neigh_v6 (git-fixes).
  • bpf: Scrub packet on bpf_redirect_peer (git-fixes).
  • bpf: add find_containing_subprog() utility function (bsc#1241590). Both spellings are actually used
  • bpf: check changes_pkt_data property for extension programs (bsc#1241590).
  • bpf: consider that tail calls invalidate packet pointers (bsc#1241590).
  • bpf: fix null dereference when computing changes_pkt_data of prog w/o subprogs (bsc#1241590).
  • bpf: refactor bpf_helper_changes_pkt_data to use helper number (bsc#1241590).
  • bpf: track changes_pkt_data property for global functions (bsc#1241590).
  • btrfs: adjust subpage bit start based on sectorsize (bsc#1241492).
  • btrfs: always fallback to buffered write if the inode requires checksum (bsc#1242831 bsc#1242710).
  • btrfs: avoid NULL pointer dereference if no valid csum tree (bsc#1243342).
  • btrfs: avoid NULL pointer dereference if no valid extent tree (bsc#1236208).
  • btrfs: avoid monopolizing a core when activating a swap file (git-fixes).
  • btrfs: do not loop for nowait writes when checking for cross references (git-fixes).
  • btrfs: fix a leaked chunk map issue in read_one_chunk() (git-fixes).
  • btrfs: fix discard worker infinite loop after disabling discard (bsc#1242012).
  • btrfs: fix non-empty delayed iputs list on unmount due to compressed write workers (git-fixes).
  • can: bcm: add locking for bcm_op runtime updates (git-fixes).
  • can: bcm: add missing rcu read protection for procfs content (git-fixes).
  • can: gw: fix RCU/BH usage in cgw_create_job() (git-fixes).
  • can: mcan: m_can_class_unregister(): fix order of unregistration calls (git-fixes).
  • can: mcp251xfd: fix TDC setting for low data bit rates (git-fixes).
  • can: mcp251xfd: mcp251xfd_remove(): fix order of unregistration calls (git-fixes).
  • can: slcan: allow reception of short error messages (git-fixes).
  • check-for-config-changes: Fix flag name typo
  • cifs: Fix integer overflow while processing actimeo mount option (git-fixes).
  • cifs: reduce warning log level for server not advertising interfaces (git-fixes).
  • crypto: algif_hash - fix double free in hash_accept (git-fixes).
  • crypto: ccp - Add support for PCI device 0x1134 (stable-fixes).
  • cxl/core/regs.c: Skip Memory Space Enable check for RCD and RCH Ports (bsc#1242125).
  • devlink: fix port new reply cmd type (git-fixes).
  • dm-bufio: do not schedule in atomic context (git-fixes).
  • dm-ebs: fix prefetch-vs-suspend race (git-fixes).
  • dm-integrity: fix a warning on invalid table line (git-fixes).
  • dm-integrity: set ti->error on memory allocation failure (git-fixes).
  • dm-verity: fix prefetch-vs-suspend race (git-fixes).
  • dm: add missing unlock on in dm_keyslot_evict() (git-fixes).
  • dm: always update the array size in realloc_argv on success (git-fixes).
  • dm: fix copying after src array boundaries (git-fixes).
  • dma-buf: insert memory barrier before updating num_fences (git-fixes).
  • dmaengine: Revert 'dmaengine: dmatest: Fix dmatest waiting less when interrupted' (git-fixes).
  • dmaengine: dmatest: Fix dmatest waiting less when interrupted (stable-fixes).
  • dmaengine: idxd: Add missing cleanup for early error out in idxd_setup_internals (git-fixes).
  • dmaengine: idxd: Add missing cleanups in cleanup internals (git-fixes).
  • dmaengine: idxd: Add missing idxd cleanup to fix memory leak in remove call (git-fixes).
  • dmaengine: idxd: Fix ->poll() return value (git-fixes).
  • dmaengine: idxd: Fix allowing write() from different address spaces (git-fixes).
  • dmaengine: idxd: Refactor remove call with idxd_cleanup() helper (git-fixes).
  • dmaengine: idxd: fix memory leak in error handling path of idxd_alloc (git-fixes).
  • dmaengine: idxd: fix memory leak in error handling path of idxd_pci_probe (git-fixes).
  • dmaengine: idxd: fix memory leak in error handling path of idxd_setup_engines (git-fixes).
  • dmaengine: idxd: fix memory leak in error handling path of idxd_setup_groups (git-fixes).
  • dmaengine: idxd: fix memory leak in error handling path of idxd_setup_wqs (git-fixes).
  • dmaengine: mediatek: Fix a possible deadlock error in mtk_cqdma_tx_status() (git-fixes).
  • dmaengine: mediatek: drop unused variable (git-fixes).
  • dmaengine: ti: k3-udma: Add missing locking (git-fixes).
  • dmaengine: ti: k3-udma: Use cap_mask directly from dma_device structure instead of a local copy (git-fixes).
  • drm/amd/display: Add scoped mutexes for amdgpu_dm_dhcp (stable-fixes).
  • drm/amd/display: Avoid flooding unnecessary info messages (git-fixes).
  • drm/amd/display: Copy AUX read reply data whenever length > 0 (git-fixes).
  • drm/amd/display: Correct the reply value when AUX write incomplete (git-fixes).
  • drm/amd/display: Fix invalid context error in dml helper (git-fixes).
  • drm/amd/display: Fix slab-use-after-free in hdcp (git-fixes).
  • drm/amd/display: Fix the checking condition in dmub aux handling (stable-fixes).
  • drm/amd/display: Fix wrong handling for AUX_DEFER case (git-fixes).
  • drm/amd/display: Force full update in gpu reset (stable-fixes).
  • drm/amd/display: Remove incorrect checking in dmub aux handler (git-fixes).
  • drm/amd/display: Shift DMUB AUX reply command if necessary (git-fixes).
  • drm/amd/display: more liberal vmin/vmax update for freesync (stable-fixes).
  • drm/amd: Add Suspend/Hibernate notification callback support (stable-fixes).
  • drm/amdgpu/hdp4: use memcfg register to post the write for HDP flush (git-fixes).
  • drm/amdgpu/hdp5.2: use memcfg register to post the write for HDP flush (git-fixes).
  • drm/amdgpu/hdp5: use memcfg register to post the write for HDP flush (git-fixes).
  • drm/amdgpu/hdp6: use memcfg register to post the write for HDP flush (git-fixes).
  • drm/amdgpu/hdp7: use memcfg register to post the write for HDP flush (git-fixes).
  • drm/amdgpu/vcn: using separate VCN1_AON_SOC offset (stable-fixes).
  • drm/amdgpu: Fix offset for HDP remap in nbio v7.11 (stable-fixes).
  • drm/amdgpu: Increase KIQ invalidate_tlbs timeout (stable-fixes).
  • drm/amdgpu: Queue KFD reset workitem in VF FED (stable-fixes).
  • drm/amdgpu: Use the right function for hdp flush (stable-fixes).
  • drm/amdgpu: fix pm notifier handling (git-fixes).
  • drm/amdgpu: trigger flr_work if reading pf2vf data failed (stable-fixes).
  • drm/amdgpu: use a dummy owner for sysfs triggered cleaner shaders v4 (stable-fixes).
  • drm/edid: fixed the bug that hdr metadata was not reset (git-fixes).
  • drm/fdinfo: Protect against driver unbind (git-fixes).
  • drm/i915/pxp: fix undefined reference to `intel_pxp_gsccs_is_ready_for_sessions' (git-fixes).
  • drm/mipi-dbi: Fix blanking for non-16 bit formats (git-fixes).
  • drm/nouveau: Fix WARN_ON in nouveau_fence_context_kill() (git-fixes).
  • drm/panel: simple: Update timings for AUO G101EVN010 (git-fixes).
  • drm/tests: shmem: Fix memleak (git-fixes).
  • drm/v3d: Add job to pending list if the reset was skipped (stable-fixes).
  • drm/xe/tests/mocs: Hold XE_FORCEWAKE_ALL for LNCF regs (git-fixes).
  • drm/xe/tests/mocs: Update xe_force_wake_get() return handling (stable-fixes).
  • drm/xe/xe3lpg: Apply Wa_14022293748, Wa_22019794406 (stable-fixes).
  • drm/xe: Add page queue multiplier (git-fixes).
  • drm/xe: Save CTX_TIMESTAMP mmio value instead of LRC value (git-fixes).
  • drm: Select DRM_KMS_HELPER from DRM_DEBUG_DP_MST_TOPOLOGY_REFS (git-fixes).
  • ethtool: cmis_cdb: use correct rpl size in ethtool_cmis_module_poll() (git-fixes).
  • ethtool: ntuple: fix rss + ring_cookie check (git-fixes).
  • ethtool: rss: fix hiding unsupported fields in dumps (git-fixes).
  • exfat: fix potential wrong error return from get_block (git-fixes).
  • ext4: add missing brelse() for bh2 in ext4_dx_add_entry() (bsc#1242342).
  • ext4: correct encrypted dentry name hash when not casefolded (bsc#1242540).
  • ext4: do not over-report free space or inodes in statvfs (bsc#1242345).
  • ext4: do not treat fhandle lookup of ea_inode as FS corruption (bsc#1242347).
  • ext4: fix FS_IOC_GETFSMAP handling (bsc#1240557).
  • ext4: goto right label 'out_mmap_sem' in ext4_setattr() (bsc#1242556).
  • ext4: make block validity check resistent to sb bh corruption (bsc#1242348).
  • ext4: partial zero eof block on unaligned inode size extension (bsc#1242336).
  • ext4: protect ext4_release_dquot against freezing (bsc#1242335).
  • ext4: replace the traditional ternary conditional operator with with max()/min() (bsc#1242536).
  • ext4: treat end of range as exclusive in ext4_zero_range() (bsc#1242539).
  • ext4: unify the type of flexbg_size to unsigned int (bsc#1242538).
  • firmware: arm_ffa: Skip Rx buffer ownership release if not acquired (git-fixes).
  • firmware: arm_scmi: Balance device refcount when destroying devices (git-fixes).
  • fs: better handle deep ancestor chains in is_subdir() (bsc#1242528).
  • fs: consistently deref the files table with rcu_dereference_raw() (bsc#1242535).
  • fs: do not allow non-init s_user_ns for filesystems without FS_USERNS_MOUNT (bsc#1242526).
  • fs: support relative paths with FSCONFIG_SET_STRING (git-fixes).
  • hv_netvsc: Preserve contiguous PFN grouping in the page buffer array (git-fixes).
  • hv_netvsc: Remove rmsg_pgcnt (git-fixes).
  • hv_netvsc: Use vmbus_sendpacket_mpb_desc() to send VMBus messages (git-fixes).
  • i2c: designware: Fix an error handling path in i2c_dw_pci_probe() (git-fixes).
  • i2c: imx-lpi2c: Fix clock count when probe defers (git-fixes).
  • ice: Check VF VSI Pointer Value in ice_vc_add_fdir_fltr() (git-fixes).
  • idpf: fix offloads support for encapsulated packets (git-fixes).
  • idpf: fix potential memory leak on kcalloc() failure (git-fixes).
  • idpf: protect shutdown from reset (git-fixes).
  • igc: fix lock order in igc_ptp_reset (git-fixes).
  • iio: accel: adxl367: fix setting odr for activity time update (git-fixes).
  • iio: adc: ad7606: fix serial register access (git-fixes).
  • iio: adc: ad7768-1: Fix conversion result sign (git-fixes).
  • iio: adc: ad7768-1: Move setting of val a bit later to avoid unnecessary return value check (stable-fixes).
  • iio: adis16201: Correct inclinometer channel resolution (git-fixes).
  • iio: imu: st_lsm6dsx: fix possible lockup in st_lsm6dsx_read_fifo (git-fixes).
  • iio: imu: st_lsm6dsx: fix possible lockup in st_lsm6dsx_read_tagged_fifo (git-fixes).
  • iio: temp: maxim-thermocouple: Fix potential lack of DMA safe buffer (git-fixes).
  • inetpeer: remove create argument of inet_getpeer_v() (git-fixes).
  • inetpeer: update inetpeer timestamp in inet_getpeer() (git-fixes).
  • io_uring/sqpoll: Increase task_work submission batch size (bsc#1238585).
  • iommu/arm-smmu-v3: Fix pgsize_bit for sva domains (bsc#1243341)
  • iommu: Fix two issues in iommu_copy_struct_from_user() (git-fixes).
  • ipv4/route: avoid unused-but-set-variable warning (git-fixes).
  • ipv4: Check !in_dev earlier for ioctl(SIOCSIFADDR) (git-fixes).
  • ipv4: Convert icmp_route_lookup() to dscp_t (git-fixes).
  • ipv4: Fix incorrect source address in Record Route option (git-fixes).
  • ipv4: Mask upper DSCP bits and ECN bits in NETLINK_FIB_LOOKUP family (git-fixes).
  • ipv4: fix source address selection with route leak (git-fixes).
  • ipv4: give an IPv4 dev to blackhole_netdev (git-fixes).
  • ipv4: icmp: Pass full DS field to ip_route_input() (git-fixes).
  • ipv4: ip_gre: Avoid skb_pull() failure in ipgre_xmit() (git-fixes).
  • ipv4: ip_gre: Fix drops of small packets in ipgre_xmit (git-fixes).
  • ipv4: ip_tunnel: Unmask upper DSCP bits in ip_md_tunnel_xmit() (git-fixes).
  • ipv4: ip_tunnel: Unmask upper DSCP bits in ip_tunnel_bind_dev() (git-fixes).
  • ipv4: ip_tunnel: Unmask upper DSCP bits in ip_tunnel_xmit() (git-fixes).
  • ipv4: properly combine dev_base_seq and ipv4.dev_addr_genid (git-fixes).
  • ipv4: raw: Fix sending packets from raw sockets via IPsec tunnels (git-fixes).
  • ipv6: Align behavior across nexthops during path selection (git-fixes).
  • ipv6: Do not consider link down nexthops in path selection (git-fixes).
  • ipv6: Start path selection from the first nexthop (git-fixes).
  • ipv6: fix omitted netlink attributes when using RTEXT_FILTER_SKIP_STATS (git-fixes).
  • irqchip/qcom-mpm: Prevent crash when trying to handle non-wake GPIOs (git-fixes).
  • isofs: fix KMSAN uninit-value bug in do_isofs_readdir() (bsc#1242307).
  • iwlwifi: correct modinfo firmware ucode (bsc#1243020).
  • jbd2: add a missing data flush during file and fs synchronization (bsc#1242346).
  • jbd2: fix off-by-one while erasing journal (bsc#1242344).
  • jbd2: flush filesystem device before updating tail sequence (bsc#1242333).
  • jbd2: increase IO priority for writing revoke records (bsc#1242332).
  • jbd2: increase the journal IO's priority (bsc#1242537).
  • jbd2: remove wrong sb->s_sequence check (bsc#1242343).
  • jiffies: Cast to unsigned long in secs_to_jiffies() conversion (bsc#1242993).
  • jiffies: Define secs_to_jiffies() (bsc#1242993).
  • kernel-obs-qa: Use srchash for dependency as well
  • loop: Add sanity check for read/write_iter (git-fixes).
  • loop: aio inherit the ioprio of original request (git-fixes).
  • loop: do not require ->write_iter for writable files in loop_configure (git-fixes).
  • md/raid1,raid10: do not ignore IO flags (git-fixes).
  • md/raid10: fix missing discard IO accounting (git-fixes).
  • md/raid10: wait barrier before returning discard request with REQ_NOWAIT (git-fixes).
  • md/raid1: Add check for missing source disk in process_checks() (git-fixes).
  • md/raid1: fix memory leak in raid1_run() if no active rdev (git-fixes).
  • md/raid5: implement pers->bitmap_sector() (git-fixes).
  • md: add a new callback pers->bitmap_sector() (git-fixes).
  • md: ensure resync is prioritized over recovery (git-fixes).
  • md: fix mddev uaf while iterating all_mddevs list (git-fixes).
  • md: preserve KABI in struct md_personality v2 (git-fixes).
  • media: videobuf2: Add missing doc comment for waiting_in_dqbuf (git-fixes).
  • mei: me: add panther lake H DID (stable-fixes).
  • mm/readahead: fix large folio support in async readahead (bsc#1242321).
  • mm: fix error handling in __filemap_get_folio() with FGP_NOWAIT (bsc#1242326).
  • mm: fix filemap_get_folios_contig returning batches of identical folios (bsc#1242327).
  • mm: fix oops when filemap_map_pmd() without prealloc_pte (bsc#1242546).
  • mptcp: mptcp_parse_option() fix for MPTCPOPT_MP_JOIN (git-fixes).
  • mptcp: refine opt_mp_capable determination (git-fixes).
  • mptcp: relax check on MPC passive fallback (git-fixes).
  • mptcp: strict validation before using mp_opt->hmac (git-fixes).
  • mptcp: use OPTION_MPTCP_MPJ_SYN in subflow_check_req() (git-fixes).
  • mtd: phram: Add the kernel lock down check (bsc#1232649).
  • neighbour: delete redundant judgment statements (git-fixes).
  • net/handshake: Fix handshake_req_destroy_test1 (git-fixes).
  • net/handshake: Fix memory leak in __sock_create() and sock_alloc_file() (git-fixes).
  • net/ipv6: Fix route deleting failure when metric equals 0 (git-fixes).
  • net/ipv6: Fix the RT cache flush via sysctl using a previous delay (git-fixes).
  • net/ipv6: delete temporary address if mngtmpaddr is removed or unmanaged (git-fixes).
  • net/mlx5: E-Switch, Initialize MAC Address for Default GID (git-fixes).
  • net/mlx5: E-switch, Fix error handling for enabling roce (git-fixes).
  • net/mlx5e: Disable MACsec offload for uplink representor profile (git-fixes).
  • net/mlx5e: Fix lock order in mlx5e_tx_reporter_ptpsq_unhealthy_recover (git-fixes).
  • net/mlx5e: TC, Continue the attr process even if encap entry is invalid (git-fixes).
  • net/mlx5e: Use custom tunnel header for vxlan gbp (git-fixes).
  • net: Add non-RCU dev_getbyhwaddr() helper (git-fixes).
  • net: Clear old fragment checksum value in napi_reuse_skb (git-fixes).
  • net: Handle napi_schedule() calls from non-interrupt (git-fixes).
  • net: Implement missing SO_TIMESTAMPING_NEW cmsg support (git-fixes).
  • net: Remove acked SYN flag from packet in the transmit queue correctly (git-fixes).
  • net: do not dump stack on queue timeout (git-fixes).
  • net: free_netdev: exit earlier if dummy (bsc#1243215).
  • net: gro: parse ipv6 ext headers without frag0 invalidation (git-fixes).
  • net: ipv6: fix UDPv6 GSO segmentation with NAT (git-fixes).
  • net: ipv6: ioam6: fix lwtunnel_output() loop (git-fixes).
  • net: loopback: Avoid sending IP packets without an Ethernet header (git-fixes).
  • net: qede: Initialize qede_ll_ops with designated initializer (git-fixes).
  • net: reenable NETIF_F_IPV6_CSUM offload for BIG TCP packets (git-fixes).
  • net: set the minimum for net_hotdata.netdev_budget_usecs (git-fixes).
  • net: skip offload for NETIF_F_IPV6_CSUM if ipv6 header contains extension (git-fixes).
  • net_sched: drr: Fix double list add in class with netem as child qdisc (git-fixes).
  • net_sched: ets: Fix double list add in class with netem as child qdisc (git-fixes).
  • net_sched: hfsc: Fix a UAF vulnerability in class with netem as child qdisc (git-fixes).
  • net_sched: qfq: Fix double list add in class with netem as child qdisc (git-fixes).
  • netdev-genl: avoid empty messages in queue dump (git-fixes).
  • netdev: fix repeated netlink messages in queue dump (git-fixes).
  • netlink: annotate data-races around sk->sk_err (git-fixes).
  • netlink: specs: tc: all actions are indexed arrays (git-fixes).
  • netlink: specs: tc: fix a couple of attribute names (git-fixes).
  • netpoll: Ensure clean state on setup failures (git-fixes).
  • nfs: handle failure of nfs_get_lock_context in unlock path (git-fixes).
  • nfsd: add list_head nf_gc to struct nfsd_file (git-fixes).
  • nilfs2: add pointer check for nilfs_direct_propagate() (git-fixes).
  • nilfs2: do not propagate ENOENT error from nilfs_btree_propagate() (git-fixes).
  • ntb: reduce stack usage in idt_scan_mws (stable-fixes).
  • ntb_hw_amd: Add NTB PCI ID for new gen CPU (stable-fixes).
  • nvme-pci: acquire cq_poll_lock in nvme_poll_irqdisable (git-fixes bsc#1223096).
  • nvme-pci: add quirk for Samsung PM173x/PM173xa disk (bsc#1241148).
  • nvme-pci: fix queue unquiesce check on slot_reset (git-fixes).
  • nvme-pci: make nvme_pci_npages_prp() __always_inline (git-fixes).
  • nvme-tcp: fix premature queue removal and I/O failover (git-fixes).
  • nvme-tcp: select CONFIG_TLS from CONFIG_NVME_TCP_TLS (git-fixes).
  • nvme: Add 'partial_nid' quirk (bsc#1241148).
  • nvme: Add warning when a partiually unique NID is detected (bsc#1241148).
  • nvme: fixup scan failure for non-ANA multipath controllers (git-fixes).
  • nvme: multipath: fix return value of nvme_available_path (git-fixes).
  • nvme: re-read ANA log page after ns scan completes (git-fixes).
  • nvme: requeue namespace scan on missed AENs (git-fixes).
  • nvme: unblock ctrl state transition for firmware update (git-fixes).
  • nvmet-fc: inline nvmet_fc_delete_assoc (git-fixes).
  • nvmet-fc: inline nvmet_fc_free_hostport (git-fixes).
  • nvmet-fc: put ref when assoc->del_work is already scheduled (git-fixes).
  • nvmet-fc: take tgtport reference only once (git-fixes).
  • nvmet-fc: update tgtport ref per assoc (git-fixes).
  • nvmet-fcloop: Remove remote port from list when unlinking (git-fixes).
  • nvmet-fcloop: add ref counting to lport (git-fixes).
  • nvmet-fcloop: replace kref with refcount (git-fixes).
  • nvmet-tcp: select CONFIG_TLS from CONFIG_NVME_TARGET_TCP_TLS (git-fixes).
  • objtool, panic: Disable SMAP in __stack_chk_fail() (bsc#1243963).
  • ocfs2: fix the issue with discontiguous allocation in the global_bitmap (git-fixes).
  • octeontx2-pf: Do not reallocate all ntuple filters (git-fixes).
  • octeontx2-pf: Fix ethtool support for SDP representors (git-fixes).
  • octeontx2-pf: qos: fix VF root node parent queue index (git-fixes).
  • padata: do not leak refcount in reorder_work (git-fixes).
  • perf: arm_cspmu: nvidia: enable NVLINK-C2C port filtering (bsc#1242172)
  • perf: arm_cspmu: nvidia: fix sysfs path in the kernel doc (bsc#1242172)
  • perf: arm_cspmu: nvidia: monitor all ports by default (bsc#1242172)
  • perf: arm_cspmu: nvidia: remove unsupported SCF events (bsc#1242172)
  • phy: Fix error handling in tegra_xusb_port_init (git-fixes).
  • phy: renesas: rcar-gen3-usb2: Fix role detection on unbind/bind (git-fixes).
  • phy: renesas: rcar-gen3-usb2: Set timing registers only once (git-fixes).
  • phy: tegra: xusb: Use a bitmask for UTMI pad power state tracking (git-fixes).
  • phy: tegra: xusb: remove a stray unlock (git-fixes).
  • pinctrl: renesas: rza2: Fix potential NULL pointer dereference (stable-fixes).
  • platform/x86/amd/pmc: Declare quirk_spurious_8042 for MECHREVO Wujie 14XA (GX4HRXL) (git-fixes).
  • platform/x86/amd: pmc: Require at least 2.5 seconds between HW sleep cycles (stable-fixes).
  • platform/x86: asus-wmi: Fix wlan_ctrl_by_user detection (git-fixes).
  • platform/x86: dell-wmi-sysman: Avoid buffer overflow in current_password_store() (git-fixes).
  • powercap: intel_rapl: Fix locking in TPMI RAPL (git-fixes).
  • powerpc/pseries/iommu: Fix kmemleak in TCE table userspace view (jsc#PED-10539 git-fixes).
  • powerpc/pseries/iommu: create DDW for devices with DMA mask less than 64-bits (bsc#1239691 bsc#1243044 ltc#212555).
  • powerpc: Do not use --- in kernel logs (git-fixes).
  • qibfs: fix another leak (git-fixes)
  • rcu/tasks-trace: Handle new PF_IDLE semantics (git-fixes)
  • rcu/tasks: Handle new PF_IDLE semantics (git-fixes)
  • rcu: Break rcu_node_0 --> &rq->__lock order (git-fixes)
  • rcu: Introduce rcu_cpu_online() (git-fixes)
  • regulator: max20086: fix invalid memory access (git-fixes).
  • rpm/check-for-config-changes: Add GCC_ASM_FLAG_OUTPUT_BROKEN
  • rtc: pcf85063: do a SW reset if POR failed (stable-fixes).
  • s390/ap: Fix CCA crypto card behavior within protected execution environment (git-fixes bsc#1243817 LTC#213623).
  • s390/bpf: Store backchain even for leaf progs (git-fixes bsc#1243805).
  • s390/cpumf: Update CPU Measurement facility extended counter set support (bsc#1243115).
  • s390/pci: Fix duplicate pci_dev_put() in disable_slot() when PF has child VFs (git-fixes).
  • s390: Add z17 elf platform (bsc#1243116).
  • sched/fair: Fix CPU bandwidth limit bypass during CPU hotplug (BSC#1241319).
  • sched/fair: Fix CPU bandwidth limit bypass during CPU hotplug (bsc#1241319).
  • sched/topology: Refinement to topology_span_sane speedup (bsc#1242119).
  • sched/topology: improve topology_span_sane speed (bsc#1242119).
  • sched: Add deprecation warning for users of RT_GROUP_SCHED (jsc#PED-11761 jsc#PED-12405).
  • scsi: Improve CDL control (git-fixes).
  • scsi: core: Clear flags for scsi_cmnd that did not complete (git-fixes).
  • scsi: hisi_sas: Fix I/O errors caused by hardware port ID changes (git-fixes).
  • scsi: lpfc: Avoid potential ndlp use-after-free in dev_loss_tmo_callbk (bsc#1242993).
  • scsi: lpfc: Convert timeouts to secs_to_jiffies() (bsc#1242993).
  • scsi: lpfc: Copyright updates for 14.4.0.9 patches (bsc#1242993).
  • scsi: lpfc: Create lpfc_vmid_info sysfs entry (bsc#1242993).
  • scsi: lpfc: Fix lpfc_check_sli_ndlp() handling for GEN_REQUEST64 commands (bsc#1242993).
  • scsi: lpfc: Fix spelling mistake 'Toplogy' -> 'Topology' (bsc#1242993).
  • scsi: lpfc: Notify FC transport of rport disappearance during PCI fcn reset (bsc#1242993).
  • scsi: lpfc: Prevent failure to reregister with NVMe transport after PRLI retry (bsc#1242993).
  • scsi: lpfc: Restart eratt_poll timer if HBA_SETUP flag still unset (bsc#1242993).
  • scsi: lpfc: Update lpfc version to 14.4.0.9 (bsc#1242993).
  • scsi: lpfc: Use memcpy() for BIOS version (bsc#1240966).
  • scsi: lpfc: convert timeouts to secs_to_jiffies() (bsc#1242993).
  • scsi: megaraid_sas: Block zero-length ATA VPD inquiry (bsc#1241388 jsc#PED-11258).
  • scsi: megaraid_sas: Block zero-length ATA VPD inquiry (git-fixes).
  • scsi: megaraid_sas: Driver version update to 07.734.00.00-rc1 (bsc#1241388 jsc#PED-11258).
  • scsi: megaraid_sas: Make most module parameters static (bsc#1241388 jsc#PED-11258).
  • scsi: mpi3mr: Add level check to control event logging (bsc#1241388 jsc#PED-12372).
  • scsi: mpi3mr: Avoid reply queue full condition (bsc#1241388 jsc#PED-12372).
  • scsi: mpi3mr: Check admin reply queue from Watchdog (bsc#1241388 jsc#PED-12372).
  • scsi: mpi3mr: Fix pending I/O counter (git-fixes).
  • scsi: mpi3mr: Fix spelling mistake 'skiping' -> 'skipping' (bsc#1241388 jsc#PED-12372).
  • scsi: mpi3mr: Handling of fault code for insufficient power (bsc#1241388 jsc#PED-12372).
  • scsi: mpi3mr: Reset the pending interrupt flag (bsc#1241388 jsc#PED-12372).
  • scsi: mpi3mr: Support for Segmented Hardware Trace buffer (bsc#1241388 jsc#PED-12372).
  • scsi: mpi3mr: Synchronize access to ioctl data buffer (bsc#1241388 jsc#PED-12372).
  • scsi: mpi3mr: Synchronous access b/w reset and tm thread for reply queue (bsc#1241388 jsc#PED-12372).
  • scsi: mpi3mr: Task Abort EH Support (bsc#1241388 jsc#PED-12372).
  • scsi: mpi3mr: Update MPI Headers to revision 35 (bsc#1241388 jsc#PED-12372).
  • scsi: mpi3mr: Update driver version to 8.12.0.3.50 (bsc#1241388 jsc#PED-12372).
  • scsi: mpi3mr: Update driver version to 8.12.1.0.50 (bsc#1241388 jsc#PED-12372).
  • scsi: mpi3mr: Update driver version to 8.13.0.5.50 (bsc#1241388 jsc#PED-12372).
  • scsi: mpi3mr: Update timestamp only for supervisor IOCs (bsc#1241388 jsc#PED-12372).
  • scsi: mpt3sas: Add details to EEDPTagMode error message (bsc#1241388 jsc#PED-11253).
  • scsi: mpt3sas: Add support for MCTP Passthrough commands (bsc#1241388 jsc#PED-11253).
  • scsi: mpt3sas: Fix buffer overflow in mpt3sas_send_mctp_passthru_req() (bsc#1241388 jsc#PED-11253).
  • scsi: mpt3sas: Fix spelling mistake 'receveid' -> 'received' (bsc#1241388 jsc#PED-11253).
  • scsi: mpt3sas: Remove unused config functions (bsc#1241388 jsc#PED-11253).
  • scsi: mpt3sas: Report driver capability as part of IOCINFO command (bsc#1241388 jsc#PED-11253).
  • scsi: mpt3sas: Send a diag reset if target reset fails (bsc#1241388 jsc#PED-11253).
  • scsi: mpt3sas: Update MPI headers to 02.00.62 version (bsc#1241388 jsc#PED-11253).
  • scsi: mpt3sas: update driver version to 52.100.00.00 (bsc#1241388 jsc#PED-11253).
  • scsi: pm80xx: Set phy_attached to zero when device is gone (git-fixes).
  • scsi: qla2xxx: Fix typos in a comment (bsc#1243090).
  • scsi: qla2xxx: Mark device strings as nonstring (bsc#1243090).
  • scsi: qla2xxx: Remove duplicate struct crb_addr_pair (bsc#1243090).
  • scsi: qla2xxx: Remove unused module parameters (bsc#1243090).
  • scsi: qla2xxx: Remove unused ql_log_qp (bsc#1243090).
  • scsi: qla2xxx: Remove unused qla2x00_gpsc() (bsc#1243090).
  • scsi: qla2xxx: Remove unused qla82xx_pci_region_offset() (bsc#1243090).
  • scsi: qla2xxx: Remove unused qla82xx_wait_for_state_change() (bsc#1243090).
  • scsi: qla2xxx: Remove unused qlt_83xx_iospace_config() (bsc#1243090).
  • scsi: qla2xxx: Remove unused qlt_fc_port_deleted() (bsc#1243090).
  • scsi: qla2xxx: Remove unused qlt_free_qfull_cmds() (bsc#1243090).
  • selftests/bpf: extend changes_pkt_data with cases w/o subprograms (bsc#1241590).
  • selftests/bpf: freplace tests for tracking of changes_packet_data (bsc#1241590).
  • selftests/bpf: test for changing packet data from global functions (bsc#1241590).
  • selftests/bpf: validate that tail call invalidates packet pointers (bsc#1241590).
  • selftests/mm: fix incorrect buffer->mirror size in hmm2 double_map test (bsc#1242203).
  • sound/virtio: Fix cancel_sync warnings on uninitialized work_structs (stable-fixes).
  • soundwire: bus: Fix race on the creation of the IRQ domain (git-fixes).
  • spi: loopback-test: Do not split 1024-byte hexdumps (git-fixes).
  • spi: spi-fsl-dspi: Halt the module after a new message transfer (git-fixes).
  • spi: spi-fsl-dspi: Reset SR flags before sending a new message (git-fixes).
  • spi: spi-fsl-dspi: restrict register range for regmap access (git-fixes).
  • spi: tegra114: Do not fail set_cs_timing when delays are zero (git-fixes).
  • spi: tegra114: Use value to check for invalid delays (git-fixes).
  • spi: tegra210-quad: add rate limiting and simplify timeout error message (stable-fixes).
  • spi: tegra210-quad: use WARN_ON_ONCE instead of WARN_ON for timeouts (stable-fixes).
  • splice: remove duplicate noinline from pipe_clear_nowait (bsc#1242328).
  • staging: axis-fifo: Correct handling of tx_fifo_depth for size validation (git-fixes).
  • staging: axis-fifo: Remove hardware resets for user errors (git-fixes).
  • staging: iio: adc: ad7816: Correct conditional logic for store mode (git-fixes).
  • tcp_bpf: Charge receive socket buffer in bpf_tcp_ingress() (git-fixes).
  • tcp_cubic: fix incorrect HyStart round start detection (git-fixes).
  • thermal: intel: x86_pkg_temp_thermal: Fix bogus trip temperature (git-fixes).
  • thunderbolt: Scan retimers after device router has been enumerated (stable-fixes).
  • tools/hv: update route parsing in kvp daemon (git-fixes).
  • tty: Require CAP_SYS_ADMIN for all usages of TIOCL_SELMOUSEREPORT (git-fixes).
  • udf: Fix inode_getblk() return value (bsc#1242313).
  • udf: Skip parent dir link count update if corrupted (bsc#1242315).
  • udf: Verify inode link counts before performing rename (bsc#1242314).
  • usb: cdnsp: fix L1 resume issue for RTL_REVISION_NEW_LPM version (git-fixes).
  • usb: dwc3: gadget: Avoid using reserved endpoints on Intel Merrifield (stable-fixes).
  • usb: dwc3: gadget: Refactor loop to avoid NULL endpoints (stable-fixes).
  • usb: gadget: Use get_status callback to set remote wakeup capability (git-fixes).
  • usb: gadget: aspeed: Add NULL pointer check in ast_vhub_init_dev() (stable-fixes).
  • usb: gadget: f_ecm: Add get_status callback (git-fixes).
  • usb: gadget: tegra-xudc: ACK ST_RC after clearing CTRL_RUN (git-fixes).
  • usb: host: max3421-hcd: Add missing spi_device_id table (stable-fixes).
  • usb: host: tegra: Prevent host controller crash when OTG port is used (git-fixes).
  • usb: host: xhci-plat: mvebu: use ->quirks instead of ->init_quirk() func (stable-fixes).
  • usb: quirks: Add delay init quirk for SanDisk 3.2Gen1 Flash Drive (stable-fixes).
  • usb: quirks: add DELAY_INIT quirk for Silicon Motion Flash Drive (stable-fixes).
  • usb: typec: class: Invalidate USB device pointers on partner unregistration (git-fixes).
  • usb: typec: tcpm: delay SNK_TRY_WAIT_DEBOUNCE to SRC_TRYWAIT transition (git-fixes).
  • usb: typec: ucsi: displayport: Fix NULL pointer access (git-fixes).
  • usb: uhci-platform: Make the clock really optional (git-fixes).
  • usb: usbtmc: Fix erroneous generic_read ioctl return (git-fixes).
  • usb: usbtmc: Fix erroneous get_stb ioctl error returns (git-fixes).
  • usb: usbtmc: Fix erroneous wait_srq ioctl return (git-fixes).
  • usb: xhci: Avoid Stop Endpoint retry loop if the endpoint seems Running (stable-fixes).
  • vfs: do not mod negative dentry count when on shrinker list (bsc#1242534).
  • vhost-scsi: Fix handling of multiple calls to vhost_scsi_set_endpoint (git-fixes).
  • virtio_console: fix missing byte order handling for cols and rows (git-fixes).
  • wifi: brcm80211: fmac: Add error handling for brcmf_usb_dl_writeimage() (git-fixes).
  • wifi: cfg80211: fix out-of-bounds access during multi-link element defragmentation (git-fixes).
  • wifi: iwlwifi: do not warn if the NIC is gone in resume (git-fixes).
  • wifi: iwlwifi: fix the check for the SCRATCH register upon resume (git-fixes).
  • wifi: mac80211, cfg80211: miscellaneous spelling fixes (git-fixes).
  • wifi: mac80211: Set n_channels after allocating struct cfg80211_scan_request (git-fixes).
  • wifi: mt76: disable napi on driver removal (git-fixes).
  • wifi: plfxlc: Remove erroneous assert in plfxlc_mac_release (git-fixes).
  • x86/bhi: Do not set BHI_DIS_S in 32-bit mode (bsc#1242778).
  • x86/bpf: Add IBHF call at end of classic BPF (bsc#1242778).
  • x86/bpf: Call branch history clearing sequence on exit (bsc#1242778).
  • x86/cpu/amd: Fix workaround for erratum 1054 (git-fixes).
  • x86/its: Fix build errors when CONFIG_MODULES=n (git-fixes).
  • x86/xen: move xen_reserve_extra_memory() (git-fixes).
  • xen/mcelog: Add __nonstring annotations for unterminated strings (git-fixes).
  • xen: Change xen-acpi-processor dom0 dependency (git-fixes).
  • xenfs/xensyms: respect hypervisor's 'next' indication (git-fixes).
  • xhci: Add helper to set an interrupters interrupt moderation interval (git-fixes).
  • xhci: Clean up stale comment on ERST_SIZE macro (stable-fixes).
  • xhci: Limit time spent with xHC interrupts disabled during bus resume (stable-fixes).
  • xhci: split free interrupter into separate remove and free parts (git-fixes).
  • xsk: Add truesize to skb_add_rx_frag() (git-fixes).
  • xsk: Do not assume metadata is always requested in TX completion (git-fixes).

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

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

Описание

In the Linux kernel, the following vulnerability has been resolved: ntb_hw_switchtec: Fix shift-out-of-bounds in switchtec_ntb_mw_set_trans There is a kernel API ntb_mw_clear_trans() would pass 0 to both addr and size. This would make xlate_pos negative. [ 23.734156] switchtec switchtec0: MW 0: part 0 addr 0x0000000000000000 size 0x0000000000000000 [ 23.734158] ================================================================================ [ 23.734172] UBSAN: shift-out-of-bounds in drivers/ntb/hw/mscc/ntb_hw_switchtec.c:293:7 [ 23.734418] shift exponent -1 is negative Ensuring xlate_pos is a positive or zero before BIT.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: netfilter: br_netfilter: skip conntrack input hook for promisc packets For historical reasons, when bridge device is in promisc mode, packets that are directed to the taps follow bridge input hook path. This patch adds a workaround to reset conntrack for these packets. Jianbo Liu reports warning splats in their test infrastructure where cloned packets reach the br_netfilter input hook to confirm the conntrack object. Scratch one bit from BR_INPUT_SKB_CB to annotate that this packet has reached the input hook because it is passed up to the bridge device to reach the taps. [ 57.571874] WARNING: CPU: 1 PID: 0 at net/bridge/br_netfilter_hooks.c:616 br_nf_local_in+0x157/0x180 [br_netfilter] [ 57.572749] Modules linked in: xt_MASQUERADE nf_conntrack_netlink nfnetlink iptable_nat xt_addrtype xt_conntrack nf_nat br_netfilter rpcsec_gss_krb5 auth_rpcgss oid_registry overlay rpcrdma rdma_ucm ib_iser libiscsi scsi_transport_isc si ib_umad rdma_cm ib_ipoib iw_cm ib_cm mlx5_ib ib_uverbs ib_core mlx5ctl mlx5_core [ 57.575158] CPU: 1 PID: 0 Comm: swapper/1 Not tainted 6.8.0+ #19 [ 57.575700] Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS rel-1.13.0-0-gf21b5a4aeb02-prebuilt.qemu.org 04/01/2014 [ 57.576662] RIP: 0010:br_nf_local_in+0x157/0x180 [br_netfilter] [ 57.577195] Code: fe ff ff 41 bd 04 00 00 00 be 04 00 00 00 e9 4a ff ff ff be 04 00 00 00 48 89 ef e8 f3 a9 3c e1 66 83 ad b4 00 00 00 04 eb 91 <0f> 0b e9 f1 fe ff ff 0f 0b e9 df fe ff ff 48 89 df e8 b3 53 47 e1 [ 57.578722] RSP: 0018:ffff88885f845a08 EFLAGS: 00010202 [ 57.579207] RAX: 0000000000000002 RBX: ffff88812dfe8000 RCX: 0000000000000000 [ 57.579830] RDX: ffff88885f845a60 RSI: ffff8881022dc300 RDI: 0000000000000000 [ 57.580454] RBP: ffff88885f845a60 R08: 0000000000000001 R09: 0000000000000003 [ 57.581076] R10: 00000000ffff1300 R11: 0000000000000002 R12: 0000000000000000 [ 57.581695] R13: ffff8881047ffe00 R14: ffff888108dbee00 R15: ffff88814519b800 [ 57.582313] FS: 0000000000000000(0000) GS:ffff88885f840000(0000) knlGS:0000000000000000 [ 57.583040] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 57.583564] CR2: 000000c4206aa000 CR3: 0000000103847001 CR4: 0000000000370eb0 [ 57.584194] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 [ 57.584820] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 [ 57.585440] Call Trace: [ 57.585721] <IRQ> [ 57.585976] ? __warn+0x7d/0x130 [ 57.586323] ? br_nf_local_in+0x157/0x180 [br_netfilter] [ 57.586811] ? report_bug+0xf1/0x1c0 [ 57.587177] ? handle_bug+0x3f/0x70 [ 57.587539] ? exc_invalid_op+0x13/0x60 [ 57.587929] ? asm_exc_invalid_op+0x16/0x20 [ 57.588336] ? br_nf_local_in+0x157/0x180 [br_netfilter] [ 57.588825] nf_hook_slow+0x3d/0xd0 [ 57.589188] ? br_handle_vlan+0x4b/0x110 [ 57.589579] br_pass_frame_up+0xfc/0x150 [ 57.589970] ? br_port_flags_change+0x40/0x40 [ 57.590396] br_handle_frame_finish+0x346/0x5e0 [ 57.590837] ? ipt_do_table+0x32e/0x430 [ 57.591221] ? br_handle_local_finish+0x20/0x20 [ 57.591656] br_nf_hook_thresh+0x4b/0xf0 [br_netfilter] [ 57.592286] ? br_handle_local_finish+0x20/0x20 [ 57.592802] br_nf_pre_routing_finish+0x178/0x480 [br_netfilter] [ 57.593348] ? br_handle_local_finish+0x20/0x20 [ 57.593782] ? nf_nat_ipv4_pre_routing+0x25/0x60 [nf_nat] [ 57.594279] br_nf_pre_routing+0x24c/0x550 [br_netfilter] [ 57.594780] ? br_nf_hook_thresh+0xf0/0xf0 [br_netfilter] [ 57.595280] br_handle_frame+0x1f3/0x3d0 [ 57.595676] ? br_handle_local_finish+0x20/0x20 [ 57.596118] ? br_handle_frame_finish+0x5e0/0x5e0 [ 57.596566] __netif_receive_skb_core+0x25b/0xfc0 [ 57.597017] ? __napi_build_skb+0x37/0x40 [ 57.597418] __netif_receive_skb_list_core+0xfb/0x220


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: netfilter: bridge: confirm multicast packets before passing them up the stack conntrack nf_confirm logic cannot handle cloned skbs referencing the same nf_conn entry, which will happen for multicast (broadcast) frames on bridges. Example: macvlan0 | br0 / \ ethX ethY ethX (or Y) receives a L2 multicast or broadcast packet containing an IP packet, flow is not yet in conntrack table. 1. skb passes through bridge and fake-ip (br_netfilter)Prerouting. -> skb->_nfct now references a unconfirmed entry 2. skb is broad/mcast packet. bridge now passes clones out on each bridge interface. 3. skb gets passed up the stack. 4. In macvlan case, macvlan driver retains clone(s) of the mcast skb and schedules a work queue to send them out on the lower devices. The clone skb->_nfct is not a copy, it is the same entry as the original skb. The macvlan rx handler then returns RX_HANDLER_PASS. 5. Normal conntrack hooks (in NF_INET_LOCAL_IN) confirm the orig skb. The Macvlan broadcast worker and normal confirm path will race. This race will not happen if step 2 already confirmed a clone. In that case later steps perform skb_clone() with skb->_nfct already confirmed (in hash table). This works fine. But such confirmation won't happen when eb/ip/nftables rules dropped the packets before they reached the nf_confirm step in postrouting. Pablo points out that nf_conntrack_bridge doesn't allow use of stateful nat, so we can safely discard the nf_conn entry and let inet call conntrack again. This doesn't work for bridge netfilter: skb could have a nat transformation. Also bridge nf prevents re-invocation of inet prerouting via 'sabotage_in' hook. Work around this problem by explicit confirmation of the entry at LOCAL_IN time, before upper layer has a chance to clone the unconfirmed entry. The downside is that this disables NAT and conntrack helpers. Alternative fix would be to add locking to all code parts that deal with unconfirmed packets, but even if that could be done in a sane way this opens up other problems, for example: -m physdev --physdev-out eth0 -j SNAT --snat-to 1.2.3.4 -m physdev --physdev-out eth1 -j SNAT --snat-to 1.2.3.5 For multicast case, only one of such conflicting mappings will be created, conntrack only handles 1:1 NAT mappings. Users should set create a setup that explicitly marks such traffic NOTRACK (conntrack bypass) to avoid this, but we cannot auto-bypass them, ruleset might have accept rules for untracked traffic already, so user-visible behaviour would change.


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

Ссылки

Описание

Exposure of Sensitive Information in Shared Microarchitectural Structures during Transient Execution for some Intel(R) Processors may allow an authenticated user to potentially enable information disclosure via local access.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: mptcp: use OPTION_MPTCP_MPJ_SYNACK in subflow_finish_connect() subflow_finish_connect() uses four fields (backup, join_id, thmac, none) that may contain garbage unless OPTION_MPTCP_MPJ_SYNACK has been set in mptcp_parse_option()


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: perf/aux: Fix AUX buffer serialization Ole reported that event->mmap_mutex is strictly insufficient to serialize the AUX buffer, add a per RB mutex to fully serialize it. Note that in the lock order comment the perf_event::mmap_mutex order was already wrong, that is, it nesting under mmap_lock is not new with this patch.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: fou: Fix null-ptr-deref in GRO. We observed a null-ptr-deref in fou_gro_receive() while shutting down a host. [0] The NULL pointer is sk->sk_user_data, and the offset 8 is of protocol in struct fou. When fou_release() is called due to netns dismantle or explicit tunnel teardown, udp_tunnel_sock_release() sets NULL to sk->sk_user_data. Then, the tunnel socket is destroyed after a single RCU grace period. So, in-flight udp4_gro_receive() could find the socket and execute the FOU GRO handler, where sk->sk_user_data could be NULL. Let's use rcu_dereference_sk_user_data() in fou_from_sock() and add NULL checks in FOU GRO handlers. [0]: BUG: kernel NULL pointer dereference, address: 0000000000000008 PF: supervisor read access in kernel mode PF: error_code(0x0000) - not-present page PGD 80000001032f4067 P4D 80000001032f4067 PUD 103240067 PMD 0 SMP PTI CPU: 0 PID: 0 Comm: swapper/0 Not tainted 5.10.216-204.855.amzn2.x86_64 #1 Hardware name: Amazon EC2 c5.large/, BIOS 1.0 10/16/2017 RIP: 0010:fou_gro_receive (net/ipv4/fou.c:233) [fou] Code: 41 5f c3 cc cc cc cc e8 e7 2e 69 f4 0f 1f 80 00 00 00 00 0f 1f 44 00 00 49 89 f8 41 54 48 89 f7 48 89 d6 49 8b 80 88 02 00 00 <0f> b6 48 08 0f b7 42 4a 66 25 fd fd 80 cc 02 66 89 42 4a 0f b6 42 RSP: 0018:ffffa330c0003d08 EFLAGS: 00010297 RAX: 0000000000000000 RBX: ffff93d9e3a6b900 RCX: 0000000000000010 RDX: ffff93d9e3a6b900 RSI: ffff93d9e3a6b900 RDI: ffff93dac2e24d08 RBP: ffff93d9e3a6b900 R08: ffff93dacbce6400 R09: 0000000000000002 R10: 0000000000000000 R11: ffffffffb5f369b0 R12: ffff93dacbce6400 R13: ffff93dac2e24d08 R14: 0000000000000000 R15: ffffffffb4edd1c0 FS: 0000000000000000(0000) GS:ffff93daee800000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 0000000000000008 CR3: 0000000102140001 CR4: 00000000007706f0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 PKRU: 55555554 Call Trace: <IRQ> ? show_trace_log_lvl (arch/x86/kernel/dumpstack.c:259) ? __die_body.cold (arch/x86/kernel/dumpstack.c:478 arch/x86/kernel/dumpstack.c:420) ? no_context (arch/x86/mm/fault.c:752) ? exc_page_fault (arch/x86/include/asm/irqflags.h:49 arch/x86/include/asm/irqflags.h:89 arch/x86/mm/fault.c:1435 arch/x86/mm/fault.c:1483) ? asm_exc_page_fault (arch/x86/include/asm/idtentry.h:571) ? fou_gro_receive (net/ipv4/fou.c:233) [fou] udp_gro_receive (include/linux/netdevice.h:2552 net/ipv4/udp_offload.c:559) udp4_gro_receive (net/ipv4/udp_offload.c:604) inet_gro_receive (net/ipv4/af_inet.c:1549 (discriminator 7)) dev_gro_receive (net/core/dev.c:6035 (discriminator 4)) napi_gro_receive (net/core/dev.c:6170) ena_clean_rx_irq (drivers/amazon/net/ena/ena_netdev.c:1558) [ena] ena_io_poll (drivers/amazon/net/ena/ena_netdev.c:1742) [ena] napi_poll (net/core/dev.c:6847) net_rx_action (net/core/dev.c:6917) __do_softirq (arch/x86/include/asm/jump_label.h:25 include/linux/jump_label.h:200 include/trace/events/irq.h:142 kernel/softirq.c:299) asm_call_irq_on_stack (arch/x86/entry/entry_64.S:809) </IRQ> do_softirq_own_stack (arch/x86/include/asm/irq_stack.h:27 arch/x86/include/asm/irq_stack.h:77 arch/x86/kernel/irq_64.c:77) irq_exit_rcu (kernel/softirq.c:393 kernel/softirq.c:423 kernel/softirq.c:435) common_interrupt (arch/x86/kernel/irq.c:239) asm_common_interrupt (arch/x86/include/asm/idtentry.h:626) RIP: 0010:acpi_idle_do_entry (arch/x86/include/asm/irqflags.h:49 arch/x86/include/asm/irqflags.h:89 drivers/acpi/processor_idle.c:114 drivers/acpi/processor_idle.c:575) Code: 8b 15 d1 3c c4 02 ed c3 cc cc cc cc 65 48 8b 04 25 40 ef 01 00 48 8b 00 a8 08 75 eb 0f 1f 44 00 00 0f 00 2d d5 09 55 00 fb f4 <fa> c3 cc cc cc cc e9 be fc ff ff 66 66 2e 0f 1f 84 00 00 00 00 00 RSP: 0018:ffffffffb5603e58 EFLAGS: 00000246 RAX: 0000000000004000 RBX: ffff93dac0929c00 RCX: ffff93daee833900 RDX: ffff93daee800000 RSI: ffff93d ---truncated---


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: fou: fix initialization of grc The grc must be initialize first. There can be a condition where if fou is NULL, goto out will be executed and grc would be used uninitialized.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: tcp: fix mptcp DSS corruption due to large pmtu xmit Syzkaller was able to trigger a DSS corruption: TCP: request_sock_subflow_v4: Possible SYN flooding on port [::]:20002. Sending cookies. ------------[ cut here ]------------ WARNING: CPU: 0 PID: 5227 at net/mptcp/protocol.c:695 __mptcp_move_skbs_from_subflow+0x20a9/0x21f0 net/mptcp/protocol.c:695 Modules linked in: CPU: 0 UID: 0 PID: 5227 Comm: syz-executor350 Not tainted 6.11.0-syzkaller-08829-gaf9c191ac2a0 #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 08/06/2024 RIP: 0010:__mptcp_move_skbs_from_subflow+0x20a9/0x21f0 net/mptcp/protocol.c:695 Code: 0f b6 dc 31 ff 89 de e8 b5 dd ea f5 89 d8 48 81 c4 50 01 00 00 5b 41 5c 41 5d 41 5e 41 5f 5d c3 cc cc cc cc e8 98 da ea f5 90 <0f> 0b 90 e9 47 ff ff ff e8 8a da ea f5 90 0f 0b 90 e9 99 e0 ff ff RSP: 0018:ffffc90000006db8 EFLAGS: 00010246 RAX: ffffffff8ba9df18 RBX: 00000000000055f0 RCX: ffff888030023c00 RDX: 0000000000000100 RSI: 00000000000081e5 RDI: 00000000000055f0 RBP: 1ffff110062bf1ae R08: ffffffff8ba9cf12 R09: 1ffff110062bf1b8 R10: dffffc0000000000 R11: ffffed10062bf1b9 R12: 0000000000000000 R13: dffffc0000000000 R14: 00000000700cec61 R15: 00000000000081e5 FS: 000055556679c380(0000) GS:ffff8880b8600000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 0000000020287000 CR3: 0000000077892000 CR4: 00000000003506f0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 Call Trace: <IRQ> move_skbs_to_msk net/mptcp/protocol.c:811 [inline] mptcp_data_ready+0x29c/0xa90 net/mptcp/protocol.c:854 subflow_data_ready+0x34a/0x920 net/mptcp/subflow.c:1490 tcp_data_queue+0x20fd/0x76c0 net/ipv4/tcp_input.c:5283 tcp_rcv_established+0xfba/0x2020 net/ipv4/tcp_input.c:6237 tcp_v4_do_rcv+0x96d/0xc70 net/ipv4/tcp_ipv4.c:1915 tcp_v4_rcv+0x2dc0/0x37f0 net/ipv4/tcp_ipv4.c:2350 ip_protocol_deliver_rcu+0x22e/0x440 net/ipv4/ip_input.c:205 ip_local_deliver_finish+0x341/0x5f0 net/ipv4/ip_input.c:233 NF_HOOK+0x3a4/0x450 include/linux/netfilter.h:314 NF_HOOK+0x3a4/0x450 include/linux/netfilter.h:314 __netif_receive_skb_one_core net/core/dev.c:5662 [inline] __netif_receive_skb+0x2bf/0x650 net/core/dev.c:5775 process_backlog+0x662/0x15b0 net/core/dev.c:6107 __napi_poll+0xcb/0x490 net/core/dev.c:6771 napi_poll net/core/dev.c:6840 [inline] net_rx_action+0x89b/0x1240 net/core/dev.c:6962 handle_softirqs+0x2c5/0x980 kernel/softirq.c:554 do_softirq+0x11b/0x1e0 kernel/softirq.c:455 </IRQ> <TASK> __local_bh_enable_ip+0x1bb/0x200 kernel/softirq.c:382 local_bh_enable include/linux/bottom_half.h:33 [inline] rcu_read_unlock_bh include/linux/rcupdate.h:919 [inline] __dev_queue_xmit+0x1764/0x3e80 net/core/dev.c:4451 dev_queue_xmit include/linux/netdevice.h:3094 [inline] neigh_hh_output include/net/neighbour.h:526 [inline] neigh_output include/net/neighbour.h:540 [inline] ip_finish_output2+0xd41/0x1390 net/ipv4/ip_output.c:236 ip_local_out net/ipv4/ip_output.c:130 [inline] __ip_queue_xmit+0x118c/0x1b80 net/ipv4/ip_output.c:536 __tcp_transmit_skb+0x2544/0x3b30 net/ipv4/tcp_output.c:1466 tcp_transmit_skb net/ipv4/tcp_output.c:1484 [inline] tcp_mtu_probe net/ipv4/tcp_output.c:2547 [inline] tcp_write_xmit+0x641d/0x6bf0 net/ipv4/tcp_output.c:2752 __tcp_push_pending_frames+0x9b/0x360 net/ipv4/tcp_output.c:3015 tcp_push_pending_frames include/net/tcp.h:2107 [inline] tcp_data_snd_check net/ipv4/tcp_input.c:5714 [inline] tcp_rcv_established+0x1026/0x2020 net/ipv4/tcp_input.c:6239 tcp_v4_do_rcv+0x96d/0xc70 net/ipv4/tcp_ipv4.c:1915 sk_backlog_rcv include/net/sock.h:1113 [inline] __release_sock+0x214/0x350 net/core/sock.c:3072 release_sock+0x61/0x1f0 net/core/sock.c:3626 mptcp_push_ ---truncated---


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: nfsd: fix race between laundromat and free_stateid There is a race between laundromat handling of revoked delegations and a client sending free_stateid operation. Laundromat thread finds that delegation has expired and needs to be revoked so it marks the delegation stid revoked and it puts it on a reaper list but then it unlock the state lock and the actual delegation revocation happens without the lock. Once the stid is marked revoked a racing free_stateid processing thread does the following (1) it calls list_del_init() which removes it from the reaper list and (2) frees the delegation stid structure. The laundromat thread ends up not calling the revoke_delegation() function for this particular delegation but that means it will no release the lock lease that exists on the file. Now, a new open for this file comes in and ends up finding that lease list isn't empty and calls nfsd_breaker_owns_lease() which ends up trying to derefence a freed delegation stateid. Leading to the followint use-after-free KASAN warning: kernel: ================================================================== kernel: BUG: KASAN: slab-use-after-free in nfsd_breaker_owns_lease+0x140/0x160 [nfsd] kernel: Read of size 8 at addr ffff0000e73cd0c8 by task nfsd/6205 kernel: kernel: CPU: 2 UID: 0 PID: 6205 Comm: nfsd Kdump: loaded Not tainted 6.11.0-rc7+ #9 kernel: Hardware name: Apple Inc. Apple Virtualization Generic Platform, BIOS 2069.0.0.0.0 08/03/2024 kernel: Call trace: kernel: dump_backtrace+0x98/0x120 kernel: show_stack+0x1c/0x30 kernel: dump_stack_lvl+0x80/0xe8 kernel: print_address_description.constprop.0+0x84/0x390 kernel: print_report+0xa4/0x268 kernel: kasan_report+0xb4/0xf8 kernel: __asan_report_load8_noabort+0x1c/0x28 kernel: nfsd_breaker_owns_lease+0x140/0x160 [nfsd] kernel: nfsd_file_do_acquire+0xb3c/0x11d0 [nfsd] kernel: nfsd_file_acquire_opened+0x84/0x110 [nfsd] kernel: nfs4_get_vfs_file+0x634/0x958 [nfsd] kernel: nfsd4_process_open2+0xa40/0x1a40 [nfsd] kernel: nfsd4_open+0xa08/0xe80 [nfsd] kernel: nfsd4_proc_compound+0xb8c/0x2130 [nfsd] kernel: nfsd_dispatch+0x22c/0x718 [nfsd] kernel: svc_process_common+0x8e8/0x1960 [sunrpc] kernel: svc_process+0x3d4/0x7e0 [sunrpc] kernel: svc_handle_xprt+0x828/0xe10 [sunrpc] kernel: svc_recv+0x2cc/0x6a8 [sunrpc] kernel: nfsd+0x270/0x400 [nfsd] kernel: kthread+0x288/0x310 kernel: ret_from_fork+0x10/0x20 This patch proposes a fixed that's based on adding 2 new additional stid's sc_status values that help coordinate between the laundromat and other operations (nfsd4_free_stateid() and nfsd4_delegreturn()). First to make sure, that once the stid is marked revoked, it is not removed by the nfsd4_free_stateid(), the laundromat take a reference on the stateid. Then, coordinating whether the stid has been put on the cl_revoked list or we are processing FREE_STATEID and need to make sure to remove it from the list, each check that state and act accordingly. If laundromat has added to the cl_revoke list before the arrival of FREE_STATEID, then nfsd4_free_stateid() knows to remove it from the list. If nfsd4_free_stateid() finds that operations arrived before laundromat has placed it on cl_revoke list, it marks the state freed and then laundromat will no longer add it to the list. Also, for nfsd4_delegreturn() when looking for the specified stid, we need to access stid that are marked removed or freeable, it means the laundromat has started processing it but hasn't finished and this delegreturn needs to return nfserr_deleg_revoked and not nfserr_bad_stateid. The latter will not trigger a FREE_STATEID and the lack of it will leave this stid on the cl_revoked list indefinitely.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: sched/numa: Fix the potential null pointer dereference in task_numa_work() When running stress-ng-vm-segv test, we found a null pointer dereference error in task_numa_work(). Here is the backtrace: [323676.066985] Unable to handle kernel NULL pointer dereference at virtual address 0000000000000020 ...... [323676.067108] CPU: 35 PID: 2694524 Comm: stress-ng-vm-se ...... [323676.067113] pstate: 23401009 (nzCv daif +PAN -UAO +TCO +DIT +SSBS BTYPE=--) [323676.067115] pc : vma_migratable+0x1c/0xd0 [323676.067122] lr : task_numa_work+0x1ec/0x4e0 [323676.067127] sp : ffff8000ada73d20 [323676.067128] x29: ffff8000ada73d20 x28: 0000000000000000 x27: 000000003e89f010 [323676.067130] x26: 0000000000080000 x25: ffff800081b5c0d8 x24: ffff800081b27000 [323676.067133] x23: 0000000000010000 x22: 0000000104d18cc0 x21: ffff0009f7158000 [323676.067135] x20: 0000000000000000 x19: 0000000000000000 x18: ffff8000ada73db8 [323676.067138] x17: 0001400000000000 x16: ffff800080df40b0 x15: 0000000000000035 [323676.067140] x14: ffff8000ada73cc8 x13: 1fffe0017cc72001 x12: ffff8000ada73cc8 [323676.067142] x11: ffff80008001160c x10: ffff000be639000c x9 : ffff8000800f4ba4 [323676.067145] x8 : ffff000810375000 x7 : ffff8000ada73974 x6 : 0000000000000001 [323676.067147] x5 : 0068000b33e26707 x4 : 0000000000000001 x3 : ffff0009f7158000 [323676.067149] x2 : 0000000000000041 x1 : 0000000000004400 x0 : 0000000000000000 [323676.067152] Call trace: [323676.067153] vma_migratable+0x1c/0xd0 [323676.067155] task_numa_work+0x1ec/0x4e0 [323676.067157] task_work_run+0x78/0xd8 [323676.067161] do_notify_resume+0x1ec/0x290 [323676.067163] el0_svc+0x150/0x160 [323676.067167] el0t_64_sync_handler+0xf8/0x128 [323676.067170] el0t_64_sync+0x17c/0x180 [323676.067173] Code: d2888001 910003fd f9000bf3 aa0003f3 (f9401000) [323676.067177] SMP: stopping secondary CPUs [323676.070184] Starting crashdump kernel... stress-ng-vm-segv in stress-ng is used to stress test the SIGSEGV error handling function of the system, which tries to cause a SIGSEGV error on return from unmapping the whole address space of the child process. Normally this program will not cause kernel crashes. But before the munmap system call returns to user mode, a potential task_numa_work() for numa balancing could be added and executed. In this scenario, since the child process has no vma after munmap, the vma_next() in task_numa_work() will return a null pointer even if the vma iterator restarts from 0. Recheck the vma pointer before dereferencing it in task_numa_work().


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: scsi: ufs: bsg: Set bsg_queue to NULL after removal Currently, this does not cause any issues, but I believe it is necessary to set bsg_queue to NULL after removing it to prevent potential use-after-free (UAF) access.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: net/smc: initialize close_work early to avoid warning We encountered a warning that close_work was canceled before initialization. WARNING: CPU: 7 PID: 111103 at kernel/workqueue.c:3047 __flush_work+0x19e/0x1b0 Workqueue: events smc_lgr_terminate_work [smc] RIP: 0010:__flush_work+0x19e/0x1b0 Call Trace: ? __wake_up_common+0x7a/0x190 ? work_busy+0x80/0x80 __cancel_work_timer+0xe3/0x160 smc_close_cancel_work+0x1a/0x70 [smc] smc_close_active_abort+0x207/0x360 [smc] __smc_lgr_terminate.part.38+0xc8/0x180 [smc] process_one_work+0x19e/0x340 worker_thread+0x30/0x370 ? process_one_work+0x340/0x340 kthread+0x117/0x130 ? __kthread_cancel_work+0x50/0x50 ret_from_fork+0x22/0x30 This is because when smc_close_cancel_work is triggered, e.g. the RDMA driver is rmmod and the LGR is terminated, the conn->close_work is flushed before initialization, resulting in WARN_ON(!work->func). __smc_lgr_terminate | smc_connect_{rdma|ism} ------------------------------------------------------------- | smc_conn_create | \- smc_lgr_register_conn for conn in lgr->conns_all | \- smc_conn_kill | \- smc_close_active_abort | \- smc_close_cancel_work | \- cancel_work_sync | \- __flush_work | (close_work) | | smc_close_init | \- INIT_WORK(&close_work) So fix this by initializing close_work before establishing the connection.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: bpf: Mark raw_tp arguments with PTR_MAYBE_NULL Arguments to a raw tracepoint are tagged as trusted, which carries the semantics that the pointer will be non-NULL. However, in certain cases, a raw tracepoint argument may end up being NULL. More context about this issue is available in [0]. Thus, there is a discrepancy between the reality, that raw_tp arguments can actually be NULL, and the verifier's knowledge, that they are never NULL, causing explicit NULL checks to be deleted, and accesses to such pointers potentially crashing the kernel. To fix this, mark raw_tp arguments as PTR_MAYBE_NULL, and then special case the dereference and pointer arithmetic to permit it, and allow passing them into helpers/kfuncs; these exceptions are made for raw_tp programs only. Ensure that we don't do this when ref_obj_id > 0, as in that case this is an acquired object and doesn't need such adjustment. The reason we do mask_raw_tp_trusted_reg logic is because other will recheck in places whether the register is a trusted_reg, and then consider our register as untrusted when detecting the presence of the PTR_MAYBE_NULL flag. To allow safe dereference, we enable PROBE_MEM marking when we see loads into trusted pointers with PTR_MAYBE_NULL. While trusted raw_tp arguments can also be passed into helpers or kfuncs where such broken assumption may cause issues, a future patch set will tackle their case separately, as PTR_TO_BTF_ID (without PTR_TRUSTED) can already be passed into helpers and causes similar problems. Thus, they are left alone for now. It is possible that these checks also permit passing non-raw_tp args that are trusted PTR_TO_BTF_ID with null marking. In such a case, allowing dereference when pointer is NULL expands allowed behavior, so won't regress existing programs, and the case of passing these into helpers is the same as above and will be dealt with later. Also update the failure case in tp_btf_nullable selftest to capture the new behavior, as the verifier will no longer cause an error when directly dereference a raw tracepoint argument marked as __nullable. [0]: https://lore.kernel.org/bpf/ZrCZS6nisraEqehw@jlelli-thinkpadt14gen4.remote.csb


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: OPP: add index check to assert to avoid buffer overflow in _read_freq() Pass the freq index to the assert function to make sure we do not read a freq out of the opp->rates[] table when called from the indexed variants: dev_pm_opp_find_freq_exact_indexed() or dev_pm_opp_find_freq_ceil/floor_indexed(). Add a secondary parameter to the assert function, unused for assert_single_clk() then add assert_clk_index() which will check for the clock index when called from the _indexed() find functions.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: ocfs2: handle a symlink read error correctly Patch series "Convert ocfs2 to use folios". Mark did a conversion of ocfs2 to use folios and sent it to me as a giant patch for review ;-) So I've redone it as individual patches, and credited Mark for the patches where his code is substantially the same. It's not a bad way to do it; his patch had some bugs and my patches had some bugs. Hopefully all our bugs were different from each other. And hopefully Mark likes all the changes I made to his code! This patch (of 23): If we can't read the buffer, be sure to unlock the page before returning.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: bpf: bpf_local_storage: Always use bpf_mem_alloc in PREEMPT_RT In PREEMPT_RT, kmalloc(GFP_ATOMIC) is still not safe in non preemptible context. bpf_mem_alloc must be used in PREEMPT_RT. This patch is to enforce bpf_mem_alloc in the bpf_local_storage when CONFIG_PREEMPT_RT is enabled. [ 35.118559] BUG: sleeping function called from invalid context at kernel/locking/spinlock_rt.c:48 [ 35.118566] in_atomic(): 1, irqs_disabled(): 0, non_block: 0, pid: 1832, name: test_progs [ 35.118569] preempt_count: 1, expected: 0 [ 35.118571] RCU nest depth: 1, expected: 1 [ 35.118577] INFO: lockdep is turned off. ... [ 35.118647] __might_resched+0x433/0x5b0 [ 35.118677] rt_spin_lock+0xc3/0x290 [ 35.118700] ___slab_alloc+0x72/0xc40 [ 35.118723] __kmalloc_noprof+0x13f/0x4e0 [ 35.118732] bpf_map_kzalloc+0xe5/0x220 [ 35.118740] bpf_selem_alloc+0x1d2/0x7b0 [ 35.118755] bpf_local_storage_update+0x2fa/0x8b0 [ 35.118784] bpf_sk_storage_get_tracing+0x15a/0x1d0 [ 35.118791] bpf_prog_9a118d86fca78ebb_trace_inet_sock_set_state+0x44/0x66 [ 35.118795] bpf_trace_run3+0x222/0x400 [ 35.118820] __bpf_trace_inet_sock_set_state+0x11/0x20 [ 35.118824] trace_inet_sock_set_state+0x112/0x130 [ 35.118830] inet_sk_state_store+0x41/0x90 [ 35.118836] tcp_set_state+0x3b3/0x640 There is no need to adjust the gfp_flags passing to the bpf_mem_cache_alloc_flags() which only honors the GFP_KERNEL. The verifier has ensured GFP_KERNEL is passed only in sleepable context. It has been an old issue since the first introduction of the bpf_local_storage ~5 years ago, so this patch targets the bpf-next. bpf_mem_alloc is needed to solve it, so the Fixes tag is set to the commit when bpf_mem_alloc was first used in the bpf_local_storage.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: PCI/ASPM: Fix link state exit during switch upstream function removal Before 456d8aa37d0f ("PCI/ASPM: Disable ASPM on MFD function removal to avoid use-after-free"), we would free the ASPM link only after the last function on the bus pertaining to the given link was removed. That was too late. If function 0 is removed before sibling function, link->downstream would point to free'd memory after. After above change, we freed the ASPM parent link state upon any function removal on the bus pertaining to a given link. That is too early. If the link is to a PCIe switch with MFD on the upstream port, then removing functions other than 0 first would free a link which still remains parent_link to the remaining downstream ports. The resulting GPFs are especially frequent during hot-unplug, because pciehp removes devices on the link bus in reverse order. On that switch, function 0 is the virtual P2P bridge to the internal bus. Free exactly when function 0 is removed -- before the parent link is obsolete, but after all subordinate links are gone. [kwilczynski: commit log]


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: jfs: add check read-only before truncation in jfs_truncate_nolock() Added a check for "read-only" mode in the `jfs_truncate_nolock` function to avoid errors related to writing to a read-only filesystem. Call stack: block_write_begin() { jfs_write_failed() { jfs_truncate() { jfs_truncate_nolock() { txEnd() { ... log = JFS_SBI(tblk->sb)->log; // (log == NULL) If the `isReadOnly(ip)` condition is triggered in `jfs_truncate_nolock`, the function execution will stop, and no further data modification will occur. Instead, the `xtTruncate` function will be called with the "COMMIT_WMAP" flag, preventing modifications in "read-only" mode.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: jfs: add check read-only before txBeginAnon() call Added a read-only check before calling `txBeginAnon` in `extAlloc` and `extRecord`. This prevents modification attempts on a read-only mounted filesystem, avoiding potential errors or crashes. Call trace: txBeginAnon+0xac/0x154 extAlloc+0xe8/0xdec fs/jfs/jfs_extent.c:78 jfs_get_block+0x340/0xb98 fs/jfs/inode.c:248 __block_write_begin_int+0x580/0x166c fs/buffer.c:2128 __block_write_begin fs/buffer.c:2177 [inline] block_write_begin+0x98/0x11c fs/buffer.c:2236 jfs_write_begin+0x44/0x88 fs/jfs/inode.c:299


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: wifi: ath11k: add srng->lock for ath11k_hal_srng_* in monitor mode ath11k_hal_srng_* should be used with srng->lock to protect srng data. For ath11k_dp_rx_mon_dest_process() and ath11k_dp_full_mon_process_rx(), they use ath11k_hal_srng_* for many times but never call srng->lock. So when running (full) monitor mode, warning will occur: RIP: 0010:ath11k_hal_srng_dst_peek+0x18/0x30 [ath11k] Call Trace: ? ath11k_hal_srng_dst_peek+0x18/0x30 [ath11k] ath11k_dp_rx_process_mon_status+0xc45/0x1190 [ath11k] ? idr_alloc_u32+0x97/0xd0 ath11k_dp_rx_process_mon_rings+0x32a/0x550 [ath11k] ath11k_dp_service_srng+0x289/0x5a0 [ath11k] ath11k_pcic_ext_grp_napi_poll+0x30/0xd0 [ath11k] __napi_poll+0x30/0x1f0 net_rx_action+0x198/0x320 __do_softirq+0xdd/0x319 So add srng->lock for them to avoid such warnings. Inorder to fetch the srng->lock, should change srng's definition from 'void' to 'struct hal_srng'. And initialize them elsewhere to prevent one line of code from being too long. This is consistent with other ring process functions, such as ath11k_dp_process_rx(). Tested-on: WCN6855 hw2.0 PCI WLAN.HSP.1.1-03125-QCAHSPSWPL_V1_V2_SILICONZ_LITE-3.6510.30 Tested-on: QCN9074 hw1.0 PCI WLAN.HK.2.7.0.1-01744-QCAHKSWPL_SILICONZ-1


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: wifi: ath11k: fix RCU stall while reaping monitor destination ring While processing the monitor destination ring, MSDUs are reaped from the link descriptor based on the corresponding buf_id. However, sometimes the driver cannot obtain a valid buffer corresponding to the buf_id received from the hardware. This causes an infinite loop in the destination processing, resulting in a kernel crash. kernel log: ath11k_pci 0000:58:00.0: data msdu_pop: invalid buf_id 309 ath11k_pci 0000:58:00.0: data dp_rx_monitor_link_desc_return failed ath11k_pci 0000:58:00.0: data msdu_pop: invalid buf_id 309 ath11k_pci 0000:58:00.0: data dp_rx_monitor_link_desc_return failed Fix this by skipping the problematic buf_id and reaping the next entry, replacing the break with the next MSDU processing. Tested-on: WCN6855 hw2.0 PCI WLAN.HSP.1.1-03125-QCAHSPSWPL_V1_V2_SILICONZ_LITE-3.6510.30 Tested-on: QCN9074 hw1.0 PCI WLAN.HK.2.7.0.1-01744-QCAHKSWPL_SILICONZ-1


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: netfilter: conntrack: clamp maximum hashtable size to INT_MAX Use INT_MAX as maximum size for the conntrack hashtable. Otherwise, it is possible to hit WARN_ON_ONCE in __kvmalloc_node_noprof() when resizing hashtable because __GFP_NOWARN is unset. See: 0708a0afe291 ("mm: Consider __GFP_NOWARN flag for oversized kvmalloc() calls") Note: hashtable resize is only possible from init_netns.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: bpf: Fix bpf_sk_select_reuseport() memory leak As pointed out in the original comment, lookup in sockmap can return a TCP ESTABLISHED socket. Such TCP socket may have had SO_ATTACH_REUSEPORT_EBPF set before it was ESTABLISHED. In other words, a non-NULL sk_reuseport_cb does not imply a non-refcounted socket. Drop sk's reference in both error paths. unreferenced object 0xffff888101911800 (size 2048): comm "test_progs", pid 44109, jiffies 4297131437 hex dump (first 32 bytes): 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 80 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ backtrace (crc 9336483b): __kmalloc_noprof+0x3bf/0x560 __reuseport_alloc+0x1d/0x40 reuseport_alloc+0xca/0x150 reuseport_attach_prog+0x87/0x140 sk_reuseport_attach_bpf+0xc8/0x100 sk_setsockopt+0x1181/0x1990 do_sock_setsockopt+0x12b/0x160 __sys_setsockopt+0x7b/0xc0 __x64_sys_setsockopt+0x1b/0x30 do_syscall_64+0x93/0x180 entry_SYSCALL_64_after_hwframe+0x76/0x7e


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: pfifo_tail_enqueue: Drop new packet when sch->limit == 0 Expected behaviour: In case we reach scheduler's limit, pfifo_tail_enqueue() will drop a packet in scheduler's queue and decrease scheduler's qlen by one. Then, pfifo_tail_enqueue() enqueue new packet and increase scheduler's qlen by one. Finally, pfifo_tail_enqueue() return `NET_XMIT_CN` status code. Weird behaviour: In case we set `sch->limit == 0` and trigger pfifo_tail_enqueue() on a scheduler that has no packet, the 'drop a packet' step will do nothing. This means the scheduler's qlen still has value equal 0. Then, we continue to enqueue new packet and increase scheduler's qlen by one. In summary, we can leverage pfifo_tail_enqueue() to increase qlen by one and return `NET_XMIT_CN` status code. The problem is: Let's say we have two qdiscs: Qdisc_A and Qdisc_B. - Qdisc_A's type must have '->graft()' function to create parent/child relationship. Let's say Qdisc_A's type is `hfsc`. Enqueue packet to this qdisc will trigger `hfsc_enqueue`. - Qdisc_B's type is pfifo_head_drop. Enqueue packet to this qdisc will trigger `pfifo_tail_enqueue`. - Qdisc_B is configured to have `sch->limit == 0`. - Qdisc_A is configured to route the enqueued's packet to Qdisc_B. Enqueue packet through Qdisc_A will lead to: - hfsc_enqueue(Qdisc_A) -> pfifo_tail_enqueue(Qdisc_B) - Qdisc_B->q.qlen += 1 - pfifo_tail_enqueue() return `NET_XMIT_CN` - hfsc_enqueue() check for `NET_XMIT_SUCCESS` and see `NET_XMIT_CN` => hfsc_enqueue() don't increase qlen of Qdisc_A. The whole process lead to a situation where Qdisc_A->q.qlen == 0 and Qdisc_B->q.qlen == 1. Replace 'hfsc' with other type (for example: 'drr') still lead to the same problem. This violate the design where parent's qlen should equal to the sum of its childrens'qlen. Bug impact: This issue can be used for user->kernel privilege escalation when it is reachable.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: mptcp: consolidate suboption status MPTCP maintains the received sub-options status is the bitmask carrying the received suboptions and in several bitfields carrying per suboption additional info. Zeroing the bitmask before parsing is not enough to ensure a consistent status, and the MPTCP code has to additionally clear some bitfiled depending on the actually parsed suboption. The above schema is fragile, and syzbot managed to trigger a path where a relevant bitfield is not cleared/initialized: BUG: KMSAN: uninit-value in __mptcp_expand_seq net/mptcp/options.c:1030 [inline] BUG: KMSAN: uninit-value in mptcp_expand_seq net/mptcp/protocol.h:864 [inline] BUG: KMSAN: uninit-value in ack_update_msk net/mptcp/options.c:1060 [inline] BUG: KMSAN: uninit-value in mptcp_incoming_options+0x2036/0x3d30 net/mptcp/options.c:1209 __mptcp_expand_seq net/mptcp/options.c:1030 [inline] mptcp_expand_seq net/mptcp/protocol.h:864 [inline] ack_update_msk net/mptcp/options.c:1060 [inline] mptcp_incoming_options+0x2036/0x3d30 net/mptcp/options.c:1209 tcp_data_queue+0xb4/0x7be0 net/ipv4/tcp_input.c:5233 tcp_rcv_established+0x1061/0x2510 net/ipv4/tcp_input.c:6264 tcp_v4_do_rcv+0x7f3/0x11a0 net/ipv4/tcp_ipv4.c:1916 tcp_v4_rcv+0x51df/0x5750 net/ipv4/tcp_ipv4.c:2351 ip_protocol_deliver_rcu+0x2a3/0x13d0 net/ipv4/ip_input.c:205 ip_local_deliver_finish+0x336/0x500 net/ipv4/ip_input.c:233 NF_HOOK include/linux/netfilter.h:314 [inline] ip_local_deliver+0x21f/0x490 net/ipv4/ip_input.c:254 dst_input include/net/dst.h:460 [inline] ip_rcv_finish+0x4a2/0x520 net/ipv4/ip_input.c:447 NF_HOOK include/linux/netfilter.h:314 [inline] ip_rcv+0xcd/0x380 net/ipv4/ip_input.c:567 __netif_receive_skb_one_core net/core/dev.c:5704 [inline] __netif_receive_skb+0x319/0xa00 net/core/dev.c:5817 process_backlog+0x4ad/0xa50 net/core/dev.c:6149 __napi_poll+0xe7/0x980 net/core/dev.c:6902 napi_poll net/core/dev.c:6971 [inline] net_rx_action+0xa5a/0x19b0 net/core/dev.c:7093 handle_softirqs+0x1a0/0x7c0 kernel/softirq.c:561 __do_softirq+0x14/0x1a kernel/softirq.c:595 do_softirq+0x9a/0x100 kernel/softirq.c:462 __local_bh_enable_ip+0x9f/0xb0 kernel/softirq.c:389 local_bh_enable include/linux/bottom_half.h:33 [inline] rcu_read_unlock_bh include/linux/rcupdate.h:919 [inline] __dev_queue_xmit+0x2758/0x57d0 net/core/dev.c:4493 dev_queue_xmit include/linux/netdevice.h:3168 [inline] neigh_hh_output include/net/neighbour.h:523 [inline] neigh_output include/net/neighbour.h:537 [inline] ip_finish_output2+0x187c/0x1b70 net/ipv4/ip_output.c:236 __ip_finish_output+0x287/0x810 ip_finish_output+0x4b/0x600 net/ipv4/ip_output.c:324 NF_HOOK_COND include/linux/netfilter.h:303 [inline] ip_output+0x15f/0x3f0 net/ipv4/ip_output.c:434 dst_output include/net/dst.h:450 [inline] ip_local_out net/ipv4/ip_output.c:130 [inline] __ip_queue_xmit+0x1f2a/0x20d0 net/ipv4/ip_output.c:536 ip_queue_xmit+0x60/0x80 net/ipv4/ip_output.c:550 __tcp_transmit_skb+0x3cea/0x4900 net/ipv4/tcp_output.c:1468 tcp_transmit_skb net/ipv4/tcp_output.c:1486 [inline] tcp_write_xmit+0x3b90/0x9070 net/ipv4/tcp_output.c:2829 __tcp_push_pending_frames+0xc4/0x380 net/ipv4/tcp_output.c:3012 tcp_send_fin+0x9f6/0xf50 net/ipv4/tcp_output.c:3618 __tcp_close+0x140c/0x1550 net/ipv4/tcp.c:3130 __mptcp_close_ssk+0x74e/0x16f0 net/mptcp/protocol.c:2496 mptcp_close_ssk+0x26b/0x2c0 net/mptcp/protocol.c:2550 mptcp_pm_nl_rm_addr_or_subflow+0x635/0xd10 net/mptcp/pm_netlink.c:889 mptcp_pm_nl_rm_subflow_received net/mptcp/pm_netlink.c:924 [inline] mptcp_pm_flush_addrs_and_subflows net/mptcp/pm_netlink.c:1688 [inline] mptcp_nl_flush_addrs_list net/mptcp/pm_netlink.c:1709 [inline] mptcp_pm_nl_flush_addrs_doit+0xe10/0x1630 net/mptcp/pm_netlink.c:1750 genl_family_rcv_msg_doit net/netlink/genetlink.c:1115 [inline] ---truncated---


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: ipv6: mcast: add RCU protection to mld_newpack() mld_newpack() can be called without RTNL or RCU being held. Note that we no longer can use sock_alloc_send_skb() because ipv6.igmp_sk uses GFP_KERNEL allocations which can sleep. Instead use alloc_skb() and charge the net->ipv6.igmp_sk socket under RCU protection.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: net: ipv6: fix dst ref loops in rpl, seg6 and ioam6 lwtunnels Some lwtunnels have a dst cache for post-transformation dst. If the packet destination did not change we may end up recording a reference to the lwtunnel in its own cache, and the lwtunnel state will never be freed. Discovered by the ioam6.sh test, kmemleak was recently fixed to catch per-cpu memory leaks. I'm not sure if rpl and seg6 can actually hit this, but in principle I don't see why not.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: team: better TEAM_OPTION_TYPE_STRING validation syzbot reported following splat [1] Make sure user-provided data contains one nul byte. [1] BUG: KMSAN: uninit-value in string_nocheck lib/vsprintf.c:633 [inline] BUG: KMSAN: uninit-value in string+0x3ec/0x5f0 lib/vsprintf.c:714 string_nocheck lib/vsprintf.c:633 [inline] string+0x3ec/0x5f0 lib/vsprintf.c:714 vsnprintf+0xa5d/0x1960 lib/vsprintf.c:2843 __request_module+0x252/0x9f0 kernel/module/kmod.c:149 team_mode_get drivers/net/team/team_core.c:480 [inline] team_change_mode drivers/net/team/team_core.c:607 [inline] team_mode_option_set+0x437/0x970 drivers/net/team/team_core.c:1401 team_option_set drivers/net/team/team_core.c:375 [inline] team_nl_options_set_doit+0x1339/0x1f90 drivers/net/team/team_core.c:2662 genl_family_rcv_msg_doit net/netlink/genetlink.c:1115 [inline] genl_family_rcv_msg net/netlink/genetlink.c:1195 [inline] genl_rcv_msg+0x1214/0x12c0 net/netlink/genetlink.c:1210 netlink_rcv_skb+0x375/0x650 net/netlink/af_netlink.c:2543 genl_rcv+0x40/0x60 net/netlink/genetlink.c:1219 netlink_unicast_kernel net/netlink/af_netlink.c:1322 [inline] netlink_unicast+0xf52/0x1260 net/netlink/af_netlink.c:1348 netlink_sendmsg+0x10da/0x11e0 net/netlink/af_netlink.c:1892 sock_sendmsg_nosec net/socket.c:718 [inline] __sock_sendmsg+0x30f/0x380 net/socket.c:733 ____sys_sendmsg+0x877/0xb60 net/socket.c:2573 ___sys_sendmsg+0x28d/0x3c0 net/socket.c:2627 __sys_sendmsg net/socket.c:2659 [inline] __do_sys_sendmsg net/socket.c:2664 [inline] __se_sys_sendmsg net/socket.c:2662 [inline] __x64_sys_sendmsg+0x212/0x3c0 net/socket.c:2662 x64_sys_call+0x2ed6/0x3c30 arch/x86/include/generated/asm/syscalls_64.h:47 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0xcd/0x1e0 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x77/0x7f


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: ax25: Fix refcount leak caused by setting SO_BINDTODEVICE sockopt If an AX25 device is bound to a socket by setting the SO_BINDTODEVICE socket option, a refcount leak will occur in ax25_release(). Commit 9fd75b66b8f6 ("ax25: Fix refcount leaks caused by ax25_cb_del()") added decrement of device refcounts in ax25_release(). In order for that to work correctly the refcounts must already be incremented when the device is bound to the socket. An AX25 device can be bound to a socket by either calling ax25_bind() or setting SO_BINDTODEVICE socket option. In both cases the refcounts should be incremented, but in fact it is done only in ax25_bind(). This bug leads to the following issue reported by Syzkaller: ================================================================ refcount_t: decrement hit 0; leaking memory. WARNING: CPU: 1 PID: 5932 at lib/refcount.c:31 refcount_warn_saturate+0x1ed/0x210 lib/refcount.c:31 Modules linked in: CPU: 1 UID: 0 PID: 5932 Comm: syz-executor424 Not tainted 6.13.0-rc4-syzkaller-00110-g4099a71718b0 #0 Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2~bpo12+1 04/01/2014 RIP: 0010:refcount_warn_saturate+0x1ed/0x210 lib/refcount.c:31 Call Trace: <TASK> __refcount_dec include/linux/refcount.h:336 [inline] refcount_dec include/linux/refcount.h:351 [inline] ref_tracker_free+0x710/0x820 lib/ref_tracker.c:236 netdev_tracker_free include/linux/netdevice.h:4156 [inline] netdev_put include/linux/netdevice.h:4173 [inline] netdev_put include/linux/netdevice.h:4169 [inline] ax25_release+0x33f/0xa10 net/ax25/af_ax25.c:1069 __sock_release+0xb0/0x270 net/socket.c:640 sock_close+0x1c/0x30 net/socket.c:1408 ... do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0xcd/0x250 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x77/0x7f ... </TASK> ================================================================ Fix the implementation of ax25_setsockopt() by adding increment of refcounts for the new device bound, and decrement of refcounts for the old unbound device.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: ptp: Ensure info->enable callback is always set The ioctl and sysfs handlers unconditionally call the ->enable callback. Not all drivers implement that callback, leading to NULL dereferences. Example of affected drivers: ptp_s390.c, ptp_vclock.c and ptp_mock.c. Instead use a dummy callback if no better was specified by the driver.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: net: Add rx_skb of kfree_skb to raw_tp_null_args[]. Yan Zhai reported a BPF prog could trigger a null-ptr-deref [0] in trace_kfree_skb if the prog does not check if rx_sk is NULL. Commit c53795d48ee8 ("net: add rx_sk to trace_kfree_skb") added rx_sk to trace_kfree_skb, but rx_sk is optional and could be NULL. Let's add kfree_skb to raw_tp_null_args[] to let the BPF verifier validate such a prog and prevent the issue. Now we fail to load such a prog: libbpf: prog 'drop': -- BEGIN PROG LOAD LOG -- 0: R1=ctx() R10=fp0 ; int BPF_PROG(drop, struct sk_buff *skb, void *location, @ kfree_skb_sk_null.bpf.c:21 0: (79) r3 = *(u64 *)(r1 +24) func 'kfree_skb' arg3 has btf_id 5253 type STRUCT 'sock' 1: R1=ctx() R3_w=trusted_ptr_or_null_sock(id=1) ; bpf_printk("sk: %d, %d\n", sk, sk->__sk_common.skc_family); @ kfree_skb_sk_null.bpf.c:24 1: (69) r4 = *(u16 *)(r3 +16) R3 invalid mem access 'trusted_ptr_or_null_' processed 2 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 -- END PROG LOAD LOG -- Note this fix requires commit 838a10bd2ebf ("bpf: Augment raw_tp arguments with PTR_MAYBE_NULL"). [0]: BUG: kernel NULL pointer dereference, address: 0000000000000010 PF: supervisor read access in kernel mode PF: error_code(0x0000) - not-present page PGD 0 P4D 0 PREEMPT SMP RIP: 0010:bpf_prog_5e21a6db8fcff1aa_drop+0x10/0x2d Call Trace: <TASK> ? __die+0x1f/0x60 ? page_fault_oops+0x148/0x420 ? search_bpf_extables+0x5b/0x70 ? fixup_exception+0x27/0x2c0 ? exc_page_fault+0x75/0x170 ? asm_exc_page_fault+0x22/0x30 ? bpf_prog_5e21a6db8fcff1aa_drop+0x10/0x2d bpf_trace_run4+0x68/0xd0 ? unix_stream_connect+0x1f4/0x6f0 sk_skb_reason_drop+0x90/0x120 unix_stream_connect+0x1f4/0x6f0 __sys_connect+0x7f/0xb0 __x64_sys_connect+0x14/0x20 do_syscall_64+0x47/0xc30 entry_SYSCALL_64_after_hwframe+0x4b/0x53


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: bpf: avoid holding freeze_mutex during mmap operation We use map->freeze_mutex to prevent races between map_freeze() and memory mapping BPF map contents with writable permissions. The way we naively do this means we'll hold freeze_mutex for entire duration of all the mm and VMA manipulations, which is completely unnecessary. This can potentially also lead to deadlocks, as reported by syzbot in [0]. So, instead, hold freeze_mutex only during writeability checks, bump (proactively) "write active" count for the map, unlock the mutex and proceed with mmap logic. And only if something went wrong during mmap logic, then undo that "write active" counter increment. [0] https://lore.kernel.org/bpf/678dcbc9.050a0220.303755.0066.GAE@google.com/


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: sched/fair: Fix potential memory corruption in child_cfs_rq_on_list child_cfs_rq_on_list attempts to convert a 'prev' pointer to a cfs_rq. This 'prev' pointer can originate from struct rq's leaf_cfs_rq_list, making the conversion invalid and potentially leading to memory corruption. Depending on the relative positions of leaf_cfs_rq_list and the task group (tg) pointer within the struct, this can cause a memory fault or access garbage data. The issue arises in list_add_leaf_cfs_rq, where both cfs_rq->leaf_cfs_rq_list and rq->leaf_cfs_rq_list are added to the same leaf list. Also, rq->tmp_alone_branch can be set to rq->leaf_cfs_rq_list. This adds a check `if (prev == &rq->leaf_cfs_rq_list)` after the main conditional in child_cfs_rq_on_list. This ensures that the container_of operation will convert a correct cfs_rq struct. This check is sufficient because only cfs_rqs on the same CPU are added to the list, so verifying the 'prev' pointer against the current rq's list head is enough. Fixes a potential memory corruption issue that due to current struct layout might not be manifesting as a crash but could lead to unpredictable behavior when the layout changes.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: HID: intel-ish-hid: Fix use-after-free issue in hid_ishtp_cl_remove() During the `rmmod` operation for the `intel_ishtp_hid` driver, a use-after-free issue can occur in the hid_ishtp_cl_remove() function. The function hid_ishtp_cl_deinit() is called before ishtp_hid_remove(), which can lead to accessing freed memory or resources during the removal process. Call Trace: ? ishtp_cl_send+0x168/0x220 [intel_ishtp] ? hid_output_report+0xe3/0x150 [hid] hid_ishtp_set_feature+0xb5/0x120 [intel_ishtp_hid] ishtp_hid_request+0x7b/0xb0 [intel_ishtp_hid] hid_hw_request+0x1f/0x40 [hid] sensor_hub_set_feature+0x11f/0x190 [hid_sensor_hub] _hid_sensor_power_state+0x147/0x1e0 [hid_sensor_trigger] hid_sensor_runtime_resume+0x22/0x30 [hid_sensor_trigger] sensor_hub_remove+0xa8/0xe0 [hid_sensor_hub] hid_device_remove+0x49/0xb0 [hid] hid_destroy_device+0x6f/0x90 [hid] ishtp_hid_remove+0x42/0x70 [intel_ishtp_hid] hid_ishtp_cl_remove+0x6b/0xb0 [intel_ishtp_hid] ishtp_cl_device_remove+0x4a/0x60 [intel_ishtp] ... Additionally, ishtp_hid_remove() is a HID level power off, which should occur before the ISHTP level disconnect. This patch resolves the issue by reordering the calls in hid_ishtp_cl_remove(). The function ishtp_hid_remove() is now called before hid_ishtp_cl_deinit().


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: cifs: Fix integer overflow while processing closetimeo mount option User-provided mount parameter closetimeo of type u32 is intended to have an upper limit, but before it is validated, the value is converted from seconds to jiffies which can lead to an integer overflow. Found by Linux Verification Center (linuxtesting.org) with SVACE.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: cifs: Fix integer overflow while processing acdirmax mount option User-provided mount parameter acdirmax of type u32 is intended to have an upper limit, but before it is validated, the value is converted from seconds to jiffies which can lead to an integer overflow. Found by Linux Verification Center (linuxtesting.org) with SVACE.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: cifs: Fix integer overflow while processing acregmax mount option User-provided mount parameter acregmax of type u32 is intended to have an upper limit, but before it is validated, the value is converted from seconds to jiffies which can lead to an integer overflow. Found by Linux Verification Center (linuxtesting.org) with SVACE.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: atm: Fix NULL pointer dereference When MPOA_cache_impos_rcvd() receives the msg, it can trigger Null Pointer Dereference Vulnerability if both entry and holding_time are NULL. Because there is only for the situation where entry is NULL and holding_time exists, it can be passed when both entry and holding_time are NULL. If these are NULL, the entry will be passd to eg_cache_put() as parameter and it is referenced by entry->use code in it. kasan log: [ 3.316691] Oops: general protection fault, probably for non-canonical address 0xdffffc0000000006:I [ 3.317568] KASAN: null-ptr-deref in range [0x0000000000000030-0x0000000000000037] [ 3.318188] CPU: 3 UID: 0 PID: 79 Comm: ex Not tainted 6.14.0-rc2 #102 [ 3.318601] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.15.0-1 04/01/2014 [ 3.319298] RIP: 0010:eg_cache_remove_entry+0xa5/0x470 [ 3.319677] Code: c1 f7 6e fd 48 c7 c7 00 7e 38 b2 e8 95 64 54 fd 48 c7 c7 40 7e 38 b2 48 89 ee e80 [ 3.321220] RSP: 0018:ffff88800583f8a8 EFLAGS: 00010006 [ 3.321596] RAX: 0000000000000006 RBX: ffff888005989000 RCX: ffffffffaecc2d8e [ 3.322112] RDX: 0000000000000000 RSI: 0000000000000004 RDI: 0000000000000030 [ 3.322643] RBP: 0000000000000000 R08: 0000000000000000 R09: fffffbfff6558b88 [ 3.323181] R10: 0000000000000003 R11: 203a207972746e65 R12: 1ffff11000b07f15 [ 3.323707] R13: dffffc0000000000 R14: ffff888005989000 R15: ffff888005989068 [ 3.324185] FS: 000000001b6313c0(0000) GS:ffff88806d380000(0000) knlGS:0000000000000000 [ 3.325042] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 3.325545] CR2: 00000000004b4b40 CR3: 000000000248e000 CR4: 00000000000006f0 [ 3.326430] Call Trace: [ 3.326725] <TASK> [ 3.326927] ? die_addr+0x3c/0xa0 [ 3.327330] ? exc_general_protection+0x161/0x2a0 [ 3.327662] ? asm_exc_general_protection+0x26/0x30 [ 3.328214] ? vprintk_emit+0x15e/0x420 [ 3.328543] ? eg_cache_remove_entry+0xa5/0x470 [ 3.328910] ? eg_cache_remove_entry+0x9a/0x470 [ 3.329294] ? __pfx_eg_cache_remove_entry+0x10/0x10 [ 3.329664] ? console_unlock+0x107/0x1d0 [ 3.329946] ? __pfx_console_unlock+0x10/0x10 [ 3.330283] ? do_syscall_64+0xa6/0x1a0 [ 3.330584] ? entry_SYSCALL_64_after_hwframe+0x47/0x7f [ 3.331090] ? __pfx_prb_read_valid+0x10/0x10 [ 3.331395] ? down_trylock+0x52/0x80 [ 3.331703] ? vprintk_emit+0x15e/0x420 [ 3.331986] ? __pfx_vprintk_emit+0x10/0x10 [ 3.332279] ? down_trylock+0x52/0x80 [ 3.332527] ? _printk+0xbf/0x100 [ 3.332762] ? __pfx__printk+0x10/0x10 [ 3.333007] ? _raw_write_lock_irq+0x81/0xe0 [ 3.333284] ? __pfx__raw_write_lock_irq+0x10/0x10 [ 3.333614] msg_from_mpoad+0x1185/0x2750 [ 3.333893] ? __build_skb_around+0x27b/0x3a0 [ 3.334183] ? __pfx_msg_from_mpoad+0x10/0x10 [ 3.334501] ? __alloc_skb+0x1c0/0x310 [ 3.334809] ? __pfx___alloc_skb+0x10/0x10 [ 3.335283] ? _raw_spin_lock+0xe0/0xe0 [ 3.335632] ? finish_wait+0x8d/0x1e0 [ 3.335975] vcc_sendmsg+0x684/0xba0 [ 3.336250] ? __pfx_vcc_sendmsg+0x10/0x10 [ 3.336587] ? __pfx_autoremove_wake_function+0x10/0x10 [ 3.337056] ? fdget+0x176/0x3e0 [ 3.337348] __sys_sendto+0x4a2/0x510 [ 3.337663] ? __pfx___sys_sendto+0x10/0x10 [ 3.337969] ? ioctl_has_perm.constprop.0.isra.0+0x284/0x400 [ 3.338364] ? sock_ioctl+0x1bb/0x5a0 [ 3.338653] ? __rseq_handle_notify_resume+0x825/0xd20 [ 3.339017] ? __pfx_sock_ioctl+0x10/0x10 [ 3.339316] ? __pfx___rseq_handle_notify_resume+0x10/0x10 [ 3.339727] ? selinux_file_ioctl+0xa4/0x260 [ 3.340166] __x64_sys_sendto+0xe0/0x1c0 [ 3.340526] ? syscall_exit_to_user_mode+0x123/0x140 [ 3.340898] do_syscall_64+0xa6/0x1a0 [ 3.341170] entry_SYSCALL_64_after_hwframe+0x77/0x7f [ 3.341533] RIP: 0033:0x44a380 [ 3.341757] Code: 0f 1f 84 00 00 00 00 00 66 90 f3 0f 1e fa 41 89 ca 64 8b 04 25 18 00 00 00 85 c00 [ ---truncated---


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: netfilter: socket: Lookup orig tuple for IPv6 SNAT nf_sk_lookup_slow_v4 does the conntrack lookup for IPv4 packets to restore the original 5-tuple in case of SNAT, to be able to find the right socket (if any). Then socket_match() can correctly check whether the socket was transparent. However, the IPv6 counterpart (nf_sk_lookup_slow_v6) lacks this conntrack lookup, making xt_socket fail to match on the socket when the packet was SNATed. Add the same logic to nf_sk_lookup_slow_v6. IPv6 SNAT is used in Kubernetes clusters for pod-to-world packets, as pods' addresses are in the fd00::/8 ULA subnet and need to be replaced with the node's external address. Cilium leverages Envoy to enforce L7 policies, and Envoy uses transparent sockets. Cilium inserts an iptables prerouting rule that matches on `-m socket --transparent` and redirects the packets to localhost, but it fails to match SNATed IPv6 packets due to that missing conntrack lookup.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: nfsd: put dl_stid if fail to queue dl_recall Before calling nfsd4_run_cb to queue dl_recall to the callback_wq, we increment the reference count of dl_stid. We expect that after the corresponding work_struct is processed, the reference count of dl_stid will be decremented through the callback function nfsd4_cb_recall_release. However, if the call to nfsd4_run_cb fails, the incremented reference count of dl_stid will not be decremented correspondingly, leading to the following nfs4_stid leak: unreferenced object 0xffff88812067b578 (size 344): comm "nfsd", pid 2761, jiffies 4295044002 (age 5541.241s) hex dump (first 32 bytes): 01 00 00 00 6b 6b 6b 6b b8 02 c0 e2 81 88 ff ff ....kkkk........ 00 6b 6b 6b 6b 6b 6b 6b 00 00 00 00 ad 4e ad de .kkkkkkk.....N.. backtrace: kmem_cache_alloc+0x4b9/0x700 nfsd4_process_open1+0x34/0x300 nfsd4_open+0x2d1/0x9d0 nfsd4_proc_compound+0x7a2/0xe30 nfsd_dispatch+0x241/0x3e0 svc_process_common+0x5d3/0xcc0 svc_process+0x2a3/0x320 nfsd+0x180/0x2e0 kthread+0x199/0x1d0 ret_from_fork+0x30/0x50 ret_from_fork_asm+0x1b/0x30 unreferenced object 0xffff8881499f4d28 (size 368): comm "nfsd", pid 2761, jiffies 4295044005 (age 5541.239s) hex dump (first 32 bytes): 01 00 00 00 00 00 00 00 30 4d 9f 49 81 88 ff ff ........0M.I.... 30 4d 9f 49 81 88 ff ff 20 00 00 00 01 00 00 00 0M.I.... ....... backtrace: kmem_cache_alloc+0x4b9/0x700 nfs4_alloc_stid+0x29/0x210 alloc_init_deleg+0x92/0x2e0 nfs4_set_delegation+0x284/0xc00 nfs4_open_delegation+0x216/0x3f0 nfsd4_process_open2+0x2b3/0xee0 nfsd4_open+0x770/0x9d0 nfsd4_proc_compound+0x7a2/0xe30 nfsd_dispatch+0x241/0x3e0 svc_process_common+0x5d3/0xcc0 svc_process+0x2a3/0x320 nfsd+0x180/0x2e0 kthread+0x199/0x1d0 ret_from_fork+0x30/0x50 ret_from_fork_asm+0x1b/0x30 Fix it by checking the result of nfsd4_run_cb and call nfs4_put_stid if fail to queue dl_recall.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: media: streamzap: fix race between device disconnection and urb callback Syzkaller has reported a general protection fault at function ir_raw_event_store_with_filter(). This crash is caused by a NULL pointer dereference of dev->raw pointer, even though it is checked for NULL in the same function, which means there is a race condition. It occurs due to the incorrect order of actions in the streamzap_disconnect() function: rc_unregister_device() is called before usb_kill_urb(). The dev->raw pointer is freed and set to NULL in rc_unregister_device(), and only after that usb_kill_urb() waits for in-progress requests to finish. If rc_unregister_device() is called while streamzap_callback() handler is not finished, this can lead to accessing freed resources. Thus rc_unregister_device() should be called after usb_kill_urb(). Found by Linux Verification Center (linuxtesting.org) with Syzkaller.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: mm: zswap: fix crypto_free_acomp() deadlock in zswap_cpu_comp_dead() Currently, zswap_cpu_comp_dead() calls crypto_free_acomp() while holding the per-CPU acomp_ctx mutex. crypto_free_acomp() then holds scomp_lock (through crypto_exit_scomp_ops_async()). On the other hand, crypto_alloc_acomp_node() holds the scomp_lock (through crypto_scomp_init_tfm()), and then allocates memory. If the allocation results in reclaim, we may attempt to hold the per-CPU acomp_ctx mutex. The above dependencies can cause an ABBA deadlock. For example in the following scenario: (1) Task A running on CPU #1: crypto_alloc_acomp_node() Holds scomp_lock Enters reclaim Reads per_cpu_ptr(pool->acomp_ctx, 1) (2) Task A is descheduled (3) CPU #1 goes offline zswap_cpu_comp_dead(CPU #1) Holds per_cpu_ptr(pool->acomp_ctx, 1)) Calls crypto_free_acomp() Waits for scomp_lock (4) Task A running on CPU #2: Waits for per_cpu_ptr(pool->acomp_ctx, 1) // Read on CPU #1 DEADLOCK Since there is no requirement to call crypto_free_acomp() with the per-CPU acomp_ctx mutex held in zswap_cpu_comp_dead(), move it after the mutex is unlocked. Also move the acomp_request_free() and kfree() calls for consistency and to avoid any potential sublte locking dependencies in the future. With this, only setting acomp_ctx fields to NULL occurs with the mutex held. This is similar to how zswap_cpu_comp_prepare() only initializes acomp_ctx fields with the mutex held, after performing all allocations before holding the mutex. Opportunistically, move the NULL check on acomp_ctx so that it takes place before the mutex dereference.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: arm64: Don't call NULL in do_compat_alignment_fixup() do_alignment_t32_to_handler() only fixes up alignment faults for specific instructions; it returns NULL otherwise (e.g. LDREX). When that's the case, signal to the caller that it needs to proceed with the regular alignment fault handling (i.e. SIGBUS). Without this patch, the kernel panics: Unable to handle kernel NULL pointer dereference at virtual address 0000000000000000 Mem abort info: ESR = 0x0000000086000006 EC = 0x21: IABT (current EL), IL = 32 bits SET = 0, FnV = 0 EA = 0, S1PTW = 0 FSC = 0x06: level 2 translation fault user pgtable: 4k pages, 48-bit VAs, pgdp=00000800164aa000 [0000000000000000] pgd=0800081fdbd22003, p4d=0800081fdbd22003, pud=08000815d51c6003, pmd=0000000000000000 Internal error: Oops: 0000000086000006 [#1] SMP Modules linked in: cfg80211 rfkill xt_nat xt_tcpudp xt_conntrack nft_chain_nat xt_MASQUERADE nf_nat nf_conntrack_netlink nf_conntrack nf_defrag_ipv6 nf_defrag_ipv4 xfrm_user xfrm_algo xt_addrtype nft_compat br_netfilter veth nvme_fa> libcrc32c crc32c_generic raid0 multipath linear dm_mod dax raid1 md_mod xhci_pci nvme xhci_hcd nvme_core t10_pi usbcore igb crc64_rocksoft crc64 crc_t10dif crct10dif_generic crct10dif_ce crct10dif_common usb_common i2c_algo_bit i2c> CPU: 2 PID: 3932954 Comm: WPEWebProcess Not tainted 6.1.0-31-arm64 #1 Debian 6.1.128-1 Hardware name: GIGABYTE MP32-AR1-00/MP32-AR1-00, BIOS F18v (SCP: 1.08.20211002) 12/01/2021 pstate: 80400009 (Nzcv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--) pc : 0x0 lr : do_compat_alignment_fixup+0xd8/0x3dc sp : ffff80000f973dd0 x29: ffff80000f973dd0 x28: ffff081b42526180 x27: 0000000000000000 x26: 0000000000000000 x25: 0000000000000000 x24: 0000000000000000 x23: 0000000000000004 x22: 0000000000000000 x21: 0000000000000001 x20: 00000000e8551f00 x19: ffff80000f973eb0 x18: 0000000000000000 x17: 0000000000000000 x16: 0000000000000000 x15: 0000000000000000 x14: 0000000000000000 x13: 0000000000000000 x12: 0000000000000000 x11: 0000000000000000 x10: 0000000000000000 x9 : ffffaebc949bc488 x8 : 0000000000000000 x7 : 0000000000000000 x6 : 0000000000000000 x5 : 0000000000400000 x4 : 0000fffffffffffe x3 : 0000000000000000 x2 : ffff80000f973eb0 x1 : 00000000e8551f00 x0 : 0000000000000001 Call trace: 0x0 do_alignment_fault+0x40/0x50 do_mem_abort+0x4c/0xa0 el0_da+0x48/0xf0 el0t_32_sync_handler+0x110/0x140 el0t_32_sync+0x190/0x194 Code: bad PC value ---[ end trace 0000000000000000 ]---


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: acpi: nfit: fix narrowing conversion in acpi_nfit_ctl Syzkaller has reported a warning in to_nfit_bus_uuid(): "only secondary bus families can be translated". This warning is emited if the argument is equal to NVDIMM_BUS_FAMILY_NFIT == 0. Function acpi_nfit_ctl() first verifies that a user-provided value call_pkg->nd_family of type u64 is not equal to 0. Then the value is converted to int, and only after that is compared to NVDIMM_BUS_FAMILY_MAX. This can lead to passing an invalid argument to acpi_nfit_ctl(), if call_pkg->nd_family is non-zero, while the lower 32 bits are zero. Furthermore, it is best to return EINVAL immediately upon seeing the invalid user input. The WARNING is insufficient to prevent further undefined behavior based on other invalid user input. All checks of the input value should be applied to the original variable call_pkg->nd_family. [iweiny: update commit message]


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: usbnet:fix NPE during rx_complete Missing usbnet_going_away Check in Critical Path. The usb_submit_urb function lacks a usbnet_going_away validation, whereas __usbnet_queue_skb includes this check. This inconsistency creates a race condition where: A URB request may succeed, but the corresponding SKB data fails to be queued. Subsequent processes: (e.g., rx_complete → defer_bh → __skb_unlink(skb, list)) attempt to access skb->next, triggering a NULL pointer dereference (Kernel Panic).


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: netfilter: nft_tunnel: fix geneve_opt type confusion addition When handling multiple NFTA_TUNNEL_KEY_OPTS_GENEVE attributes, the parsing logic should place every geneve_opt structure one by one compactly. Hence, when deciding the next geneve_opt position, the pointer addition should be in units of char *. However, the current implementation erroneously does type conversion before the addition, which will lead to heap out-of-bounds write. [ 6.989857] ================================================================== [ 6.990293] BUG: KASAN: slab-out-of-bounds in nft_tunnel_obj_init+0x977/0xa70 [ 6.990725] Write of size 124 at addr ffff888005f18974 by task poc/178 [ 6.991162] [ 6.991259] CPU: 0 PID: 178 Comm: poc-oob-write Not tainted 6.1.132 #1 [ 6.991655] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.16.0-0-gd239552ce722-prebuilt.qemu.org 04/01/2014 [ 6.992281] Call Trace: [ 6.992423] <TASK> [ 6.992586] dump_stack_lvl+0x44/0x5c [ 6.992801] print_report+0x184/0x4be [ 6.993790] kasan_report+0xc5/0x100 [ 6.994252] kasan_check_range+0xf3/0x1a0 [ 6.994486] memcpy+0x38/0x60 [ 6.994692] nft_tunnel_obj_init+0x977/0xa70 [ 6.995677] nft_obj_init+0x10c/0x1b0 [ 6.995891] nf_tables_newobj+0x585/0x950 [ 6.996922] nfnetlink_rcv_batch+0xdf9/0x1020 [ 6.998997] nfnetlink_rcv+0x1df/0x220 [ 6.999537] netlink_unicast+0x395/0x530 [ 7.000771] netlink_sendmsg+0x3d0/0x6d0 [ 7.001462] __sock_sendmsg+0x99/0xa0 [ 7.001707] ____sys_sendmsg+0x409/0x450 [ 7.002391] ___sys_sendmsg+0xfd/0x170 [ 7.003145] __sys_sendmsg+0xea/0x170 [ 7.004359] do_syscall_64+0x5e/0x90 [ 7.005817] entry_SYSCALL_64_after_hwframe+0x6e/0xd8 [ 7.006127] RIP: 0033:0x7ec756d4e407 [ 7.006339] Code: 48 89 fa 4c 89 df e8 38 aa 00 00 8b 93 08 03 00 00 59 5e 48 83 f8 fc 74 1a 5b c3 0f 1f 84 00 00 00 00 00 48 8b 44 24 10 0f 05 <5b> c3 0f 1f 80 00 00 00 00 83 e2 39 83 faf [ 7.007364] RSP: 002b:00007ffed5d46760 EFLAGS: 00000202 ORIG_RAX: 000000000000002e [ 7.007827] RAX: ffffffffffffffda RBX: 00007ec756cc4740 RCX: 00007ec756d4e407 [ 7.008223] RDX: 0000000000000000 RSI: 00007ffed5d467f0 RDI: 0000000000000003 [ 7.008620] RBP: 00007ffed5d468a0 R08: 0000000000000000 R09: 0000000000000000 [ 7.009039] R10: 0000000000000000 R11: 0000000000000202 R12: 0000000000000000 [ 7.009429] R13: 00007ffed5d478b0 R14: 00007ec756ee5000 R15: 00005cbd4e655cb8 Fix this bug with correct pointer addition and conversion in parse and dump code.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: net: decrease cached dst counters in dst_release Upstream fix ac888d58869b ("net: do not delay dst_entries_add() in dst_release()") moved decrementing the dst count from dst_destroy to dst_release to avoid accessing already freed data in case of netns dismantle. However in case CONFIG_DST_CACHE is enabled and OvS+tunnels are used, this fix is incomplete as the same issue will be seen for cached dsts: Unable to handle kernel paging request at virtual address ffff5aabf6b5c000 Call trace: percpu_counter_add_batch+0x3c/0x160 (P) dst_release+0xec/0x108 dst_cache_destroy+0x68/0xd8 dst_destroy+0x13c/0x168 dst_destroy_rcu+0x1c/0xb0 rcu_do_batch+0x18c/0x7d0 rcu_core+0x174/0x378 rcu_core_si+0x18/0x30 Fix this by invalidating the cache, and thus decrementing cached dst counters, in dst_release too.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: udp: Fix memory accounting leak. Matt Dowling reported a weird UDP memory usage issue. Under normal operation, the UDP memory usage reported in /proc/net/sockstat remains close to zero. However, it occasionally spiked to 524,288 pages and never dropped. Moreover, the value doubled when the application was terminated. Finally, it caused intermittent packet drops. We can reproduce the issue with the script below [0]: 1. /proc/net/sockstat reports 0 pages # cat /proc/net/sockstat | grep UDP: UDP: inuse 1 mem 0 2. Run the script till the report reaches 524,288 # python3 test.py & sleep 5 # cat /proc/net/sockstat | grep UDP: UDP: inuse 3 mem 524288 <-- (INT_MAX + 1) >> PAGE_SHIFT 3. Kill the socket and confirm the number never drops # pkill python3 && sleep 5 # cat /proc/net/sockstat | grep UDP: UDP: inuse 1 mem 524288 4. (necessary since v6.0) Trigger proto_memory_pcpu_drain() # python3 test.py & sleep 1 && pkill python3 5. The number doubles # cat /proc/net/sockstat | grep UDP: UDP: inuse 1 mem 1048577 The application set INT_MAX to SO_RCVBUF, which triggered an integer overflow in udp_rmem_release(). When a socket is close()d, udp_destruct_common() purges its receive queue and sums up skb->truesize in the queue. This total is calculated and stored in a local unsigned integer variable. The total size is then passed to udp_rmem_release() to adjust memory accounting. However, because the function takes a signed integer argument, the total size can wrap around, causing an overflow. Then, the released amount is calculated as follows: 1) Add size to sk->sk_forward_alloc. 2) Round down sk->sk_forward_alloc to the nearest lower multiple of PAGE_SIZE and assign it to amount. 3) Subtract amount from sk->sk_forward_alloc. 4) Pass amount >> PAGE_SHIFT to __sk_mem_reduce_allocated(). When the issue occurred, the total in udp_destruct_common() was 2147484480 (INT_MAX + 833), which was cast to -2147482816 in udp_rmem_release(). At 1) sk->sk_forward_alloc is changed from 3264 to -2147479552, and 2) sets -2147479552 to amount. 3) reverts the wraparound, so we don't see a warning in inet_sock_destruct(). However, udp_memory_allocated ends up doubling at 4). Since commit 3cd3399dd7a8 ("net: implement per-cpu reserves for memory_allocated"), memory usage no longer doubles immediately after a socket is close()d because __sk_mem_reduce_allocated() caches the amount in udp_memory_per_cpu_fw_alloc. However, the next time a UDP socket receives a packet, the subtraction takes effect, causing UDP memory usage to double. This issue makes further memory allocation fail once the socket's sk->sk_rmem_alloc exceeds net.ipv4.udp_rmem_min, resulting in packet drops. To prevent this issue, let's use unsigned int for the calculation and call sk_forward_alloc_add() only once for the small delta. Note that first_packet_length() also potentially has the same problem. [0]: from socket import * SO_RCVBUFFORCE = 33 INT_MAX = (2 ** 31) - 1 s = socket(AF_INET, SOCK_DGRAM) s.bind(('', 0)) s.setsockopt(SOL_SOCKET, SO_RCVBUFFORCE, INT_MAX) c = socket(AF_INET, SOCK_DGRAM) c.connect(s.getsockname()) data = b'a' * 100 while True: c.send(data)


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: sctp: add mutual exclusion in proc_sctp_do_udp_port() We must serialize calls to sctp_udp_sock_stop() and sctp_udp_sock_start() or risk a crash as syzbot reported: Oops: general protection fault, probably for non-canonical address 0xdffffc000000000d: 0000 [#1] SMP KASAN PTI KASAN: null-ptr-deref in range [0x0000000000000068-0x000000000000006f] CPU: 1 UID: 0 PID: 6551 Comm: syz.1.44 Not tainted 6.14.0-syzkaller-g7f2ff7b62617 #0 PREEMPT(full) Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 02/12/2025 RIP: 0010:kernel_sock_shutdown+0x47/0x70 net/socket.c:3653 Call Trace: <TASK> udp_tunnel_sock_release+0x68/0x80 net/ipv4/udp_tunnel_core.c:181 sctp_udp_sock_stop+0x71/0x160 net/sctp/protocol.c:930 proc_sctp_do_udp_port+0x264/0x450 net/sctp/sysctl.c:553 proc_sys_call_handler+0x3d0/0x5b0 fs/proc/proc_sysctl.c:601 iter_file_splice_write+0x91c/0x1150 fs/splice.c:738 do_splice_from fs/splice.c:935 [inline] direct_splice_actor+0x18f/0x6c0 fs/splice.c:1158 splice_direct_to_actor+0x342/0xa30 fs/splice.c:1102 do_splice_direct_actor fs/splice.c:1201 [inline] do_splice_direct+0x174/0x240 fs/splice.c:1227 do_sendfile+0xafd/0xe50 fs/read_write.c:1368 __do_sys_sendfile64 fs/read_write.c:1429 [inline] __se_sys_sendfile64 fs/read_write.c:1415 [inline] __x64_sys_sendfile64+0x1d8/0x220 fs/read_write.c:1415 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline]


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: netlabel: Fix NULL pointer exception caused by CALIPSO on IPv4 sockets When calling netlbl_conn_setattr(), addr->sa_family is used to determine the function behavior. If sk is an IPv4 socket, but the connect function is called with an IPv6 address, the function calipso_sock_setattr() is triggered. Inside this function, the following code is executed: sk_fullsock(__sk) ? inet_sk(__sk)->pinet6 : NULL; Since sk is an IPv4 socket, pinet6 is NULL, leading to a null pointer dereference. This patch fixes the issue by checking if inet6_sk(sk) returns a NULL pointer before accessing pinet6.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: netfilter: nf_tables: don't unregister hook when table is dormant When nf_tables_updchain encounters an error, hook registration needs to be rolled back. This should only be done if the hook has been registered, which won't happen when the table is flagged as dormant (inactive). Just move the assignment into the registration block.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: idpf: fix adapter NULL pointer dereference on reboot With SRIOV enabled, idpf ends up calling into idpf_remove() twice. First via idpf_shutdown() and then again when idpf_remove() calls into sriov_disable(), because the VF devices use the idpf driver, hence the same remove routine. When that happens, it is possible for the adapter to be NULL from the first call to idpf_remove(), leading to a NULL pointer dereference. echo 1 > /sys/class/net/<netif>/device/sriov_numvfs reboot BUG: kernel NULL pointer dereference, address: 0000000000000020 ... RIP: 0010:idpf_remove+0x22/0x1f0 [idpf] ... ? idpf_remove+0x22/0x1f0 [idpf] ? idpf_remove+0x1e4/0x1f0 [idpf] pci_device_remove+0x3f/0xb0 device_release_driver_internal+0x19f/0x200 pci_stop_bus_device+0x6d/0x90 pci_stop_and_remove_bus_device+0x12/0x20 pci_iov_remove_virtfn+0xbe/0x120 sriov_disable+0x34/0xe0 idpf_sriov_configure+0x58/0x140 [idpf] idpf_remove+0x1b9/0x1f0 [idpf] idpf_shutdown+0x12/0x30 [idpf] pci_device_shutdown+0x35/0x60 device_shutdown+0x156/0x200 ... Replace the direct idpf_remove() call in idpf_shutdown() with idpf_vc_core_deinit() and idpf_deinit_dflt_mbx(), which perform the bulk of the cleanup, such as stopping the init task, freeing IRQs, destroying the vports and freeing the mailbox. This avoids the calls to sriov_disable() in addition to a small netdev cleanup, and destroying workqueues, which don't seem to be required on shutdown.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: fs/9p: fix NULL pointer dereference on mkdir When a 9p tree was mounted with option 'posixacl', parent directory had a default ACL set for its subdirectories, e.g.: setfacl -m default:group:simpsons:rwx parentdir then creating a subdirectory crashed 9p client, as v9fs_fid_add() call in function v9fs_vfs_mkdir_dotl() sets the passed 'fid' pointer to NULL (since dafbe689736) even though the subsequent v9fs_set_create_acl() call expects a valid non-NULL 'fid' pointer: [ 37.273191] BUG: kernel NULL pointer dereference, address: 0000000000000000 ... [ 37.322338] Call Trace: [ 37.323043] <TASK> [ 37.323621] ? __die (arch/x86/kernel/dumpstack.c:421 arch/x86/kernel/dumpstack.c:434) [ 37.324448] ? page_fault_oops (arch/x86/mm/fault.c:714) [ 37.325532] ? search_module_extables (kernel/module/main.c:3733) [ 37.326742] ? p9_client_walk (net/9p/client.c:1165) 9pnet [ 37.328006] ? search_bpf_extables (kernel/bpf/core.c:804) [ 37.329142] ? exc_page_fault (./arch/x86/include/asm/paravirt.h:686 arch/x86/mm/fault.c:1488 arch/x86/mm/fault.c:1538) [ 37.330196] ? asm_exc_page_fault (./arch/x86/include/asm/idtentry.h:574) [ 37.331330] ? p9_client_walk (net/9p/client.c:1165) 9pnet [ 37.332562] ? v9fs_fid_xattr_get (fs/9p/xattr.c:30) 9p [ 37.333824] v9fs_fid_xattr_set (fs/9p/fid.h:23 fs/9p/xattr.c:121) 9p [ 37.335077] v9fs_set_acl (fs/9p/acl.c:276) 9p [ 37.336112] v9fs_set_create_acl (fs/9p/acl.c:307) 9p [ 37.337326] v9fs_vfs_mkdir_dotl (fs/9p/vfs_inode_dotl.c:411) 9p [ 37.338590] vfs_mkdir (fs/namei.c:4313) [ 37.339535] do_mkdirat (fs/namei.c:4336) [ 37.340465] __x64_sys_mkdir (fs/namei.c:4354) [ 37.341455] do_syscall_64 (arch/x86/entry/common.c:52 arch/x86/entry/common.c:83) [ 37.342447] entry_SYSCALL_64_after_hwframe (arch/x86/entry/entry_64.S:130) Fix this by simply swapping the sequence of these two calls in v9fs_vfs_mkdir_dotl(), i.e. calling v9fs_set_create_acl() before v9fs_fid_add().


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: rtnetlink: Allocate vfinfo size for VF GUIDs when supported Commit 30aad41721e0 ("net/core: Add support for getting VF GUIDs") added support for getting VF port and node GUIDs in netlink ifinfo messages, but their size was not taken into consideration in the function that allocates the netlink message, causing the following warning when a netlink message is filled with many VF port and node GUIDs: # echo 64 > /sys/bus/pci/devices/0000\:08\:00.0/sriov_numvfs # ip link show dev ib0 RTNETLINK answers: Message too long Cannot send link get request: Message too long Kernel warning: ------------[ cut here ]------------ WARNING: CPU: 2 PID: 1930 at net/core/rtnetlink.c:4151 rtnl_getlink+0x586/0x5a0 Modules linked in: xt_conntrack xt_MASQUERADE nfnetlink xt_addrtype iptable_nat nf_nat br_netfilter overlay mlx5_ib macsec mlx5_core tls rpcrdma rdma_ucm ib_uverbs ib_iser libiscsi scsi_transport_iscsi ib_umad rdma_cm iw_cm ib_ipoib fuse ib_cm ib_core CPU: 2 UID: 0 PID: 1930 Comm: ip Not tainted 6.14.0-rc2+ #1 Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS rel-1.13.0-0-gf21b5a4aeb02-prebuilt.qemu.org 04/01/2014 RIP: 0010:rtnl_getlink+0x586/0x5a0 Code: cb 82 e8 3d af 0a 00 4d 85 ff 0f 84 08 ff ff ff 4c 89 ff 41 be ea ff ff ff e8 66 63 5b ff 49 c7 07 80 4f cb 82 e9 36 fc ff ff <0f> 0b e9 16 fe ff ff e8 de a0 56 00 66 66 2e 0f 1f 84 00 00 00 00 RSP: 0018:ffff888113557348 EFLAGS: 00010246 RAX: 00000000ffffffa6 RBX: ffff88817e87aa34 RCX: dffffc0000000000 RDX: 0000000000000003 RSI: 0000000000000000 RDI: ffff88817e87afb8 RBP: 0000000000000009 R08: ffffffff821f44aa R09: 0000000000000000 R10: ffff8881260f79a8 R11: ffff88817e87af00 R12: ffff88817e87aa00 R13: ffffffff8563d300 R14: 00000000ffffffa6 R15: 00000000ffffffff FS: 00007f63a5dbf280(0000) GS:ffff88881ee00000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00007f63a5ba4493 CR3: 00000001700fe002 CR4: 0000000000772eb0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 PKRU: 55555554 Call Trace: <TASK> ? __warn+0xa5/0x230 ? rtnl_getlink+0x586/0x5a0 ? report_bug+0x22d/0x240 ? handle_bug+0x53/0xa0 ? exc_invalid_op+0x14/0x50 ? asm_exc_invalid_op+0x16/0x20 ? skb_trim+0x6a/0x80 ? rtnl_getlink+0x586/0x5a0 ? __pfx_rtnl_getlink+0x10/0x10 ? rtnetlink_rcv_msg+0x1e5/0x860 ? __pfx___mutex_lock+0x10/0x10 ? rcu_is_watching+0x34/0x60 ? __pfx_lock_acquire+0x10/0x10 ? stack_trace_save+0x90/0xd0 ? filter_irq_stacks+0x1d/0x70 ? kasan_save_stack+0x30/0x40 ? kasan_save_stack+0x20/0x40 ? kasan_save_track+0x10/0x30 rtnetlink_rcv_msg+0x21c/0x860 ? entry_SYSCALL_64_after_hwframe+0x76/0x7e ? __pfx_rtnetlink_rcv_msg+0x10/0x10 ? arch_stack_walk+0x9e/0xf0 ? rcu_is_watching+0x34/0x60 ? lock_acquire+0xd5/0x410 ? rcu_is_watching+0x34/0x60 netlink_rcv_skb+0xe0/0x210 ? __pfx_rtnetlink_rcv_msg+0x10/0x10 ? __pfx_netlink_rcv_skb+0x10/0x10 ? rcu_is_watching+0x34/0x60 ? __pfx___netlink_lookup+0x10/0x10 ? lock_release+0x62/0x200 ? netlink_deliver_tap+0xfd/0x290 ? rcu_is_watching+0x34/0x60 ? lock_release+0x62/0x200 ? netlink_deliver_tap+0x95/0x290 netlink_unicast+0x31f/0x480 ? __pfx_netlink_unicast+0x10/0x10 ? rcu_is_watching+0x34/0x60 ? lock_acquire+0xd5/0x410 netlink_sendmsg+0x369/0x660 ? lock_release+0x62/0x200 ? __pfx_netlink_sendmsg+0x10/0x10 ? import_ubuf+0xb9/0xf0 ? __import_iovec+0x254/0x2b0 ? lock_release+0x62/0x200 ? __pfx_netlink_sendmsg+0x10/0x10 ____sys_sendmsg+0x559/0x5a0 ? __pfx_____sys_sendmsg+0x10/0x10 ? __pfx_copy_msghdr_from_user+0x10/0x10 ? rcu_is_watching+0x34/0x60 ? do_read_fault+0x213/0x4a0 ? rcu_is_watching+0x34/0x60 ___sys_sendmsg+0xe4/0x150 ? __pfx____sys_sendmsg+0x10/0x10 ? do_fault+0x2cc/0x6f0 ? handle_pte_fault+0x2e3/0x3d0 ? __pfx_handle_pte_fault+0x10/0x10 ---truncated---


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: RDMA/core: Fix use-after-free when rename device name Syzbot reported a slab-use-after-free with the following call trace: ================================================================== BUG: KASAN: slab-use-after-free in nla_put+0xd3/0x150 lib/nlattr.c:1099 Read of size 5 at addr ffff888140ea1c60 by task syz.0.988/10025 CPU: 0 UID: 0 PID: 10025 Comm: syz.0.988 Not tainted 6.14.0-rc4-syzkaller-00859-gf77f12010f67 #0 Hardware name: Google Compute Engine, BIOS Google 02/12/2025 Call Trace: <TASK> __dump_stack lib/dump_stack.c:94 [inline] dump_stack_lvl+0x241/0x360 lib/dump_stack.c:120 print_address_description mm/kasan/report.c:408 [inline] print_report+0x16e/0x5b0 mm/kasan/report.c:521 kasan_report+0x143/0x180 mm/kasan/report.c:634 kasan_check_range+0x282/0x290 mm/kasan/generic.c:189 __asan_memcpy+0x29/0x70 mm/kasan/shadow.c:105 nla_put+0xd3/0x150 lib/nlattr.c:1099 nla_put_string include/net/netlink.h:1621 [inline] fill_nldev_handle+0x16e/0x200 drivers/infiniband/core/nldev.c:265 rdma_nl_notify_event+0x561/0xef0 drivers/infiniband/core/nldev.c:2857 ib_device_notify_register+0x22/0x230 drivers/infiniband/core/device.c:1344 ib_register_device+0x1292/0x1460 drivers/infiniband/core/device.c:1460 rxe_register_device+0x233/0x350 drivers/infiniband/sw/rxe/rxe_verbs.c:1540 rxe_net_add+0x74/0xf0 drivers/infiniband/sw/rxe/rxe_net.c:550 rxe_newlink+0xde/0x1a0 drivers/infiniband/sw/rxe/rxe.c:212 nldev_newlink+0x5ea/0x680 drivers/infiniband/core/nldev.c:1795 rdma_nl_rcv_skb drivers/infiniband/core/netlink.c:239 [inline] rdma_nl_rcv+0x6dd/0x9e0 drivers/infiniband/core/netlink.c:259 netlink_unicast_kernel net/netlink/af_netlink.c:1313 [inline] netlink_unicast+0x7f6/0x990 net/netlink/af_netlink.c:1339 netlink_sendmsg+0x8de/0xcb0 net/netlink/af_netlink.c:1883 sock_sendmsg_nosec net/socket.c:709 [inline] __sock_sendmsg+0x221/0x270 net/socket.c:724 ____sys_sendmsg+0x53a/0x860 net/socket.c:2564 ___sys_sendmsg net/socket.c:2618 [inline] __sys_sendmsg+0x269/0x350 net/socket.c:2650 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0xf3/0x230 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x77/0x7f RIP: 0033:0x7f42d1b8d169 Code: ff ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 00 48 89 f8 48 ... RSP: 002b:00007f42d2960038 EFLAGS: 00000246 ORIG_RAX: 000000000000002e RAX: ffffffffffffffda RBX: 00007f42d1da6320 RCX: 00007f42d1b8d169 RDX: 0000000000000000 RSI: 00004000000002c0 RDI: 000000000000000c RBP: 00007f42d1c0e2a0 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000 R13: 0000000000000000 R14: 00007f42d1da6320 R15: 00007ffe399344a8 </TASK> Allocated by task 10025: kasan_save_stack mm/kasan/common.c:47 [inline] kasan_save_track+0x3f/0x80 mm/kasan/common.c:68 poison_kmalloc_redzone mm/kasan/common.c:377 [inline] __kasan_kmalloc+0x98/0xb0 mm/kasan/common.c:394 kasan_kmalloc include/linux/kasan.h:260 [inline] __do_kmalloc_node mm/slub.c:4294 [inline] __kmalloc_node_track_caller_noprof+0x28b/0x4c0 mm/slub.c:4313 __kmemdup_nul mm/util.c:61 [inline] kstrdup+0x42/0x100 mm/util.c:81 kobject_set_name_vargs+0x61/0x120 lib/kobject.c:274 dev_set_name+0xd5/0x120 drivers/base/core.c:3468 assign_name drivers/infiniband/core/device.c:1202 [inline] ib_register_device+0x178/0x1460 drivers/infiniband/core/device.c:1384 rxe_register_device+0x233/0x350 drivers/infiniband/sw/rxe/rxe_verbs.c:1540 rxe_net_add+0x74/0xf0 drivers/infiniband/sw/rxe/rxe_net.c:550 rxe_newlink+0xde/0x1a0 drivers/infiniband/sw/rxe/rxe.c:212 nldev_newlink+0x5ea/0x680 drivers/infiniband/core/nldev.c:1795 rdma_nl_rcv_skb drivers/infiniband/core/netlink.c:239 [inline] rdma_nl_rcv+0x6dd/0x9e0 drivers/infiniband/core/netlink.c:259 netlink_unicast_kernel net/netlink/af_netlink.c:1313 [inline] netlink_unicast+0x7f6/0x990 net/netlink/af_netlink.c:1339 netlink_sendmsg+0x8de/0xcb0 net ---truncated---


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: RDMA/mlx5: Fix mlx5_poll_one() cur_qp update flow When cur_qp isn't NULL, in order to avoid fetching the QP from the radix tree again we check if the next cqe QP is identical to the one we already have. The bug however is that we are checking if the QP is identical by checking the QP number inside the CQE against the QP number inside the mlx5_ib_qp, but that's wrong since the QP number from the CQE is from FW so it should be matched against mlx5_core_qp which is our FW QP number. Otherwise we could use the wrong QP when handling a CQE which could cause the kernel trace below. This issue is mainly noticeable over QPs 0 & 1, since for now they are the only QPs in our driver whereas the QP number inside mlx5_ib_qp doesn't match the QP number inside mlx5_core_qp. BUG: kernel NULL pointer dereference, address: 0000000000000012 #PF: supervisor read access in kernel mode #PF: error_code(0x0000) - not-present page PGD 0 P4D 0 Oops: Oops: 0000 [#1] SMP CPU: 0 UID: 0 PID: 7927 Comm: kworker/u62:1 Not tainted 6.14.0-rc3+ #189 Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS rel-1.16.3-0-ga6ed6b701f0a-prebuilt.qemu.org 04/01/2014 Workqueue: ib-comp-unb-wq ib_cq_poll_work [ib_core] RIP: 0010:mlx5_ib_poll_cq+0x4c7/0xd90 [mlx5_ib] Code: 03 00 00 8d 58 ff 21 cb 66 39 d3 74 39 48 c7 c7 3c 89 6e a0 0f b7 db e8 b7 d2 b3 e0 49 8b 86 60 03 00 00 48 c7 c7 4a 89 6e a0 <0f> b7 5c 98 02 e8 9f d2 b3 e0 41 0f b7 86 78 03 00 00 83 e8 01 21 RSP: 0018:ffff88810511bd60 EFLAGS: 00010046 RAX: 0000000000000010 RBX: 0000000000000000 RCX: 0000000000000000 RDX: 0000000000000000 RSI: ffff88885fa1b3c0 RDI: ffffffffa06e894a RBP: 00000000000000b0 R08: 0000000000000000 R09: ffff88810511bc10 R10: 0000000000000001 R11: 0000000000000001 R12: ffff88810d593000 R13: ffff88810e579108 R14: ffff888105146000 R15: 00000000000000b0 FS: 0000000000000000(0000) GS:ffff88885fa00000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 0000000000000012 CR3: 00000001077e6001 CR4: 0000000000370eb0 Call Trace: <TASK> ? __die+0x20/0x60 ? page_fault_oops+0x150/0x3e0 ? exc_page_fault+0x74/0x130 ? asm_exc_page_fault+0x22/0x30 ? mlx5_ib_poll_cq+0x4c7/0xd90 [mlx5_ib] __ib_process_cq+0x5a/0x150 [ib_core] ib_cq_poll_work+0x31/0x90 [ib_core] process_one_work+0x169/0x320 worker_thread+0x288/0x3a0 ? work_busy+0xb0/0xb0 kthread+0xd7/0x1f0 ? kthreads_online_cpu+0x130/0x130 ? kthreads_online_cpu+0x130/0x130 ret_from_fork+0x2d/0x50 ? kthreads_online_cpu+0x130/0x130 ret_from_fork_asm+0x11/0x20 </TASK>


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: RDMA/erdma: Prevent use-after-free in erdma_accept_newconn() After the erdma_cep_put(new_cep) being called, new_cep will be freed, and the following dereference will cause a UAF problem. Fix this issue.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: RDMA/mlx5: Fix page_size variable overflow Change all variables storing mlx5_umem_mkc_find_best_pgsz() result to unsigned long to support values larger than 31 and avoid overflow. For example: If we try to register 4GB of memory that is contiguous in physical memory, the driver will optimize the page_size and try to use an mkey with 4GB entity size. The 'unsigned int' page_size variable will overflow to '0' and we'll hit the WARN_ON() in alloc_cacheable_mr(). WARNING: CPU: 2 PID: 1203 at drivers/infiniband/hw/mlx5/mr.c:1124 alloc_cacheable_mr+0x22/0x580 [mlx5_ib] Modules linked in: mlx5_ib mlx5_core bonding ip6_gre ip6_tunnel tunnel6 ip_gre gre rdma_rxe rdma_ucm ib_uverbs ib_ipoib ib_umad rpcrdma ib_iser libiscsi scsi_transport_iscsi rdma_cm iw_cm ib_cm fuse ib_core [last unloaded: mlx5_core] CPU: 2 UID: 70878 PID: 1203 Comm: rdma_resource_l Tainted: G W 6.14.0-rc4-dirty #43 Tainted: [W]=WARN Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS rel-1.13.0-0-gf21b5a4aeb02-prebuilt.qemu.org 04/01/2014 RIP: 0010:alloc_cacheable_mr+0x22/0x580 [mlx5_ib] Code: 90 90 90 90 90 90 90 90 0f 1f 44 00 00 55 48 89 e5 41 57 41 56 41 55 41 54 41 52 53 48 83 ec 30 f6 46 28 04 4c 8b 77 08 75 21 <0f> 0b 49 c7 c2 ea ff ff ff 48 8d 65 d0 4c 89 d0 5b 41 5a 41 5c 41 RSP: 0018:ffffc900006ffac8 EFLAGS: 00010246 RAX: 0000000004c0d0d0 RBX: ffff888217a22000 RCX: 0000000000100001 RDX: 00007fb7ac480000 RSI: ffff8882037b1240 RDI: ffff8882046f0600 RBP: ffffc900006ffb28 R08: 0000000000000001 R09: 0000000000000000 R10: 00000000000007e0 R11: ffffea0008011d40 R12: ffff8882037b1240 R13: ffff8882046f0600 R14: ffff888217a22000 R15: ffffc900006ffe00 FS: 00007fb7ed013340(0000) GS:ffff88885fd00000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00007fb7ed1d8000 CR3: 00000001fd8f6006 CR4: 0000000000772eb0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 PKRU: 55555554 Call Trace: <TASK> ? __warn+0x81/0x130 ? alloc_cacheable_mr+0x22/0x580 [mlx5_ib] ? report_bug+0xfc/0x1e0 ? handle_bug+0x55/0x90 ? exc_invalid_op+0x17/0x70 ? asm_exc_invalid_op+0x1a/0x20 ? alloc_cacheable_mr+0x22/0x580 [mlx5_ib] create_real_mr+0x54/0x150 [mlx5_ib] ib_uverbs_reg_mr+0x17f/0x2a0 [ib_uverbs] ib_uverbs_handler_UVERBS_METHOD_INVOKE_WRITE+0xca/0x140 [ib_uverbs] ib_uverbs_run_method+0x6d0/0x780 [ib_uverbs] ? __pfx_ib_uverbs_handler_UVERBS_METHOD_INVOKE_WRITE+0x10/0x10 [ib_uverbs] ib_uverbs_cmd_verbs+0x19b/0x360 [ib_uverbs] ? walk_system_ram_range+0x79/0xd0 ? ___pte_offset_map+0x1b/0x110 ? __pte_offset_map_lock+0x80/0x100 ib_uverbs_ioctl+0xac/0x110 [ib_uverbs] __x64_sys_ioctl+0x94/0xb0 do_syscall_64+0x50/0x110 entry_SYSCALL_64_after_hwframe+0x76/0x7e RIP: 0033:0x7fb7ecf0737b Code: ff ff ff 85 c0 79 9b 49 c7 c4 ff ff ff ff 5b 5d 4c 89 e0 41 5c c3 66 0f 1f 84 00 00 00 00 00 f3 0f 1e fa b8 10 00 00 00 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 8b 0d 7d 2a 0f 00 f7 d8 64 89 01 48 RSP: 002b:00007ffdbe03ecc8 EFLAGS: 00000246 ORIG_RAX: 0000000000000010 RAX: ffffffffffffffda RBX: 00007ffdbe03edb8 RCX: 00007fb7ecf0737b RDX: 00007ffdbe03eda0 RSI: 00000000c0181b01 RDI: 0000000000000003 RBP: 00007ffdbe03ed80 R08: 00007fb7ecc84010 R09: 00007ffdbe03eed4 R10: 0000000000000009 R11: 0000000000000246 R12: 00007ffdbe03eed4 R13: 000000000000000c R14: 000000000000000c R15: 00007fb7ecc84150 </TASK>


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: drm/amd/display: avoid NPD when ASIC does not support DMUB ctx->dmub_srv will de NULL if the ASIC does not support DMUB, which is tested in dm_dmub_sw_init. However, it will be dereferenced in dmub_hw_lock_mgr_cmd if should_use_dmub_lock returns true. This has been the case since dmub support has been added for PSR1. Fix this by checking for dmub_srv in should_use_dmub_lock. [ 37.440832] BUG: kernel NULL pointer dereference, address: 0000000000000058 [ 37.447808] #PF: supervisor read access in kernel mode [ 37.452959] #PF: error_code(0x0000) - not-present page [ 37.458112] PGD 0 P4D 0 [ 37.460662] Oops: Oops: 0000 [#1] PREEMPT SMP NOPTI [ 37.465553] CPU: 2 UID: 1000 PID: 1745 Comm: DrmThread Not tainted 6.14.0-rc1-00003-gd62e938120f0 #23 99720e1cb1e0fc4773b8513150932a07de3c6e88 [ 37.478324] Hardware name: Google Morphius/Morphius, BIOS Google_Morphius.13434.858.0 10/26/2023 [ 37.487103] RIP: 0010:dmub_hw_lock_mgr_cmd+0x77/0xb0 [ 37.492074] Code: 44 24 0e 00 00 00 00 48 c7 04 24 45 00 00 0c 40 88 74 24 0d 0f b6 02 88 44 24 0c 8b 01 89 44 24 08 85 f6 75 05 c6 44 24 0e 01 <48> 8b 7f 58 48 89 e6 ba 01 00 00 00 e8 08 3c 2a 00 65 48 8b 04 5 [ 37.510822] RSP: 0018:ffff969442853300 EFLAGS: 00010202 [ 37.516052] RAX: 0000000000000000 RBX: ffff92db03000000 RCX: ffff969442853358 [ 37.523185] RDX: ffff969442853368 RSI: 0000000000000001 RDI: 0000000000000000 [ 37.530322] RBP: 0000000000000001 R08: 00000000000004a7 R09: 00000000000004a5 [ 37.537453] R10: 0000000000000476 R11: 0000000000000062 R12: ffff92db0ade8000 [ 37.544589] R13: ffff92da01180ae0 R14: ffff92da011802a8 R15: ffff92db03000000 [ 37.551725] FS: 0000784a9cdfc6c0(0000) GS:ffff92db2af00000(0000) knlGS:0000000000000000 [ 37.559814] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 37.565562] CR2: 0000000000000058 CR3: 0000000112b1c000 CR4: 00000000003506f0 [ 37.572697] Call Trace: [ 37.575152] <TASK> [ 37.577258] ? __die_body+0x66/0xb0 [ 37.580756] ? page_fault_oops+0x3e7/0x4a0 [ 37.584861] ? exc_page_fault+0x3e/0xe0 [ 37.588706] ? exc_page_fault+0x5c/0xe0 [ 37.592550] ? asm_exc_page_fault+0x22/0x30 [ 37.596742] ? dmub_hw_lock_mgr_cmd+0x77/0xb0 [ 37.601107] dcn10_cursor_lock+0x1e1/0x240 [ 37.605211] program_cursor_attributes+0x81/0x190 [ 37.609923] commit_planes_for_stream+0x998/0x1ef0 [ 37.614722] update_planes_and_stream_v2+0x41e/0x5c0 [ 37.619703] dc_update_planes_and_stream+0x78/0x140 [ 37.624588] amdgpu_dm_atomic_commit_tail+0x4362/0x49f0 [ 37.629832] ? srso_return_thunk+0x5/0x5f [ 37.633847] ? mark_held_locks+0x6d/0xd0 [ 37.637774] ? _raw_spin_unlock_irq+0x24/0x50 [ 37.642135] ? srso_return_thunk+0x5/0x5f [ 37.646148] ? lockdep_hardirqs_on+0x95/0x150 [ 37.650510] ? srso_return_thunk+0x5/0x5f [ 37.654522] ? _raw_spin_unlock_irq+0x2f/0x50 [ 37.658883] ? srso_return_thunk+0x5/0x5f [ 37.662897] ? wait_for_common+0x186/0x1c0 [ 37.666998] ? srso_return_thunk+0x5/0x5f [ 37.671009] ? drm_crtc_next_vblank_start+0xc3/0x170 [ 37.675983] commit_tail+0xf5/0x1c0 [ 37.679478] drm_atomic_helper_commit+0x2a2/0x2b0 [ 37.684186] drm_atomic_commit+0xd6/0x100 [ 37.688199] ? __cfi___drm_printfn_info+0x10/0x10 [ 37.692911] drm_atomic_helper_update_plane+0xe5/0x130 [ 37.698054] drm_mode_cursor_common+0x501/0x670 [ 37.702600] ? __cfi_drm_mode_cursor_ioctl+0x10/0x10 [ 37.707572] drm_mode_cursor_ioctl+0x48/0x70 [ 37.711851] drm_ioctl_kernel+0xf2/0x150 [ 37.715781] drm_ioctl+0x363/0x590 [ 37.719189] ? __cfi_drm_mode_cursor_ioctl+0x10/0x10 [ 37.724165] amdgpu_drm_ioctl+0x41/0x80 [ 37.728013] __se_sys_ioctl+0x7f/0xd0 [ 37.731685] do_syscall_64+0x87/0x100 [ 37.735355] ? vma_end_read+0x12/0xe0 [ 37.739024] ? srso_return_thunk+0x5/0x5f [ 37.743041] ? find_held_lock+0x47/0xf0 [ 37.746884] ? vma_end_read+0x12/0xe0 [ 37.750552] ? srso_return_thunk+0x5/0 ---truncated---


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: powerpc/perf: Fix ref-counting on the PMU 'vpa_pmu' Commit 176cda0619b6 ("powerpc/perf: Add perf interface to expose vpa counters") introduced 'vpa_pmu' to expose Book3s-HV nested APIv2 provided L1<->L2 context switch latency counters to L1 user-space via perf-events. However the newly introduced PMU named 'vpa_pmu' doesn't assign ownership of the PMU to the module 'vpa_pmu'. Consequently the module 'vpa_pmu' can be unloaded while one of the perf-events are still active, which can lead to kernel oops and panic of the form below on a Pseries-LPAR: BUG: Kernel NULL pointer dereference on read at 0x00000058 <snip> NIP [c000000000506cb8] event_sched_out+0x40/0x258 LR [c00000000050e8a4] __perf_remove_from_context+0x7c/0x2b0 Call Trace: [c00000025fc3fc30] [c00000025f8457a8] 0xc00000025f8457a8 (unreliable) [c00000025fc3fc80] [fffffffffffffee0] 0xfffffffffffffee0 [c00000025fc3fcd0] [c000000000501e70] event_function+0xa8/0x120 <snip> Kernel panic - not syncing: Aiee, killing interrupt handler! Fix this by adding the module ownership to 'vpa_pmu' so that the module 'vpa_pmu' is ref-counted and prevented from being unloaded when perf-events are initialized.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: drm/vkms: Fix use after free and double free on init error If the driver initialization fails, the vkms_exit() function might access an uninitialized or freed default_config pointer and it might double free it. Fix both possible errors by initializing default_config only when the driver initialization succeeded.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: Bluetooth: btnxpuart: Fix kernel panic during FW release This fixes a kernel panic seen during release FW in a stress test scenario where WLAN and BT FW download occurs simultaneously, and due to a HW bug, chip sends out only 1 bootloader signatures. When driver receives the bootloader signature, it enters FW download mode, but since no consequtive bootloader signatures seen, FW file is not requested. After 60 seconds, when FW download times out, release_firmware causes a kernel panic. [ 2601.949184] Unable to handle kernel paging request at virtual address 0000312e6f006573 [ 2601.992076] user pgtable: 4k pages, 48-bit VAs, pgdp=0000000111802000 [ 2601.992080] [0000312e6f006573] pgd=0000000000000000, p4d=0000000000000000 [ 2601.992087] Internal error: Oops: 0000000096000021 [#1] PREEMPT SMP [ 2601.992091] Modules linked in: algif_hash algif_skcipher af_alg btnxpuart(O) pciexxx(O) mlan(O) overlay fsl_jr_uio caam_jr caamkeyblob_desc caamhash_desc caamalg_desc crypto_engine authenc libdes crct10dif_ce polyval_ce snd_soc_fsl_easrc snd_soc_fsl_asoc_card imx8_media_dev(C) snd_soc_fsl_micfil polyval_generic snd_soc_fsl_xcvr snd_soc_fsl_sai snd_soc_imx_audmux snd_soc_fsl_asrc snd_soc_imx_card snd_soc_imx_hdmi snd_soc_fsl_aud2htx snd_soc_fsl_utils imx_pcm_dma dw_hdmi_cec flexcan can_dev [ 2602.001825] CPU: 2 PID: 20060 Comm: hciconfig Tainted: G C O 6.6.23-lts-next-06236-gb586a521770e #1 [ 2602.010182] Hardware name: NXP i.MX8MPlus EVK board (DT) [ 2602.010185] pstate: 60000005 (nZCv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--) [ 2602.010191] pc : _raw_spin_lock+0x34/0x68 [ 2602.010201] lr : free_fw_priv+0x20/0xfc [ 2602.020561] sp : ffff800089363b30 [ 2602.020563] x29: ffff800089363b30 x28: ffff0000d0eb5880 x27: 0000000000000000 [ 2602.020570] x26: 0000000000000000 x25: ffff0000d728b330 x24: 0000000000000000 [ 2602.020577] x23: ffff0000dc856f38 [ 2602.033797] x22: ffff800089363b70 x21: ffff0000dc856000 [ 2602.033802] x20: ff00312e6f006573 x19: ffff0000d0d9ea80 x18: 0000000000000000 [ 2602.033809] x17: 0000000000000000 x16: 0000000000000000 x15: 0000aaaad80dd480 [ 2602.083320] x14: 0000000000000000 x13: 00000000000001b9 x12: 0000000000000002 [ 2602.083326] x11: 0000000000000000 x10: 0000000000000a60 x9 : ffff800089363a30 [ 2602.083333] x8 : ffff0001793d75c0 x7 : ffff0000d6dbc400 x6 : 0000000000000000 [ 2602.083339] x5 : 00000000410fd030 x4 : 0000000000000000 x3 : 0000000000000001 [ 2602.083346] x2 : 0000000000000000 x1 : 0000000000000001 x0 : ff00312e6f006573 [ 2602.083354] Call trace: [ 2602.083356] _raw_spin_lock+0x34/0x68 [ 2602.083364] release_firmware+0x48/0x6c [ 2602.083370] nxp_setup+0x3c4/0x540 [btnxpuart] [ 2602.083383] hci_dev_open_sync+0xf0/0xa34 [ 2602.083391] hci_dev_open+0xd8/0x178 [ 2602.083399] hci_sock_ioctl+0x3b0/0x590 [ 2602.083405] sock_do_ioctl+0x60/0x118 [ 2602.083413] sock_ioctl+0x2f4/0x374 [ 2602.091430] __arm64_sys_ioctl+0xac/0xf0 [ 2602.091437] invoke_syscall+0x48/0x110 [ 2602.091445] el0_svc_common.constprop.0+0xc0/0xe0 [ 2602.091452] do_el0_svc+0x1c/0x28 [ 2602.091457] el0_svc+0x40/0xe4 [ 2602.091465] el0t_64_sync_handler+0x120/0x12c [ 2602.091470] el0t_64_sync+0x190/0x194


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: net: fix NULL pointer dereference in l3mdev_l3_rcv When delete l3s ipvlan: ip link del link eth0 ipvlan1 type ipvlan mode l3s This may cause a null pointer dereference: Call trace: ip_rcv_finish+0x48/0xd0 ip_rcv+0x5c/0x100 __netif_receive_skb_one_core+0x64/0xb0 __netif_receive_skb+0x20/0x80 process_backlog+0xb4/0x204 napi_poll+0xe8/0x294 net_rx_action+0xd8/0x22c __do_softirq+0x12c/0x354 This is because l3mdev_l3_rcv() visit dev->l3mdev_ops after ipvlan_l3s_unregister() assign the dev->l3mdev_ops to NULL. The process like this: (CPU1) | (CPU2) l3mdev_l3_rcv() | check dev->priv_flags: | master = skb->dev; | | | ipvlan_l3s_unregister() | set dev->priv_flags | dev->l3mdev_ops = NULL; | visit master->l3mdev_ops | To avoid this by do not set dev->l3mdev_ops when unregister l3s ipvlan.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: ibmvnic: Use kernel helpers for hex dumps Previously, when the driver was printing hex dumps, the buffer was cast to an 8 byte long and printed using string formatters. If the buffer size was not a multiple of 8 then a read buffer overflow was possible. Therefore, create a new ibmvnic function that loops over a buffer and calls hex_dump_to_buffer instead. This patch address KASAN reports like the one below: ibmvnic 30000003 env3: Login Buffer: ibmvnic 30000003 env3: 01000000af000000 <...> ibmvnic 30000003 env3: 2e6d62692e736261 ibmvnic 30000003 env3: 65050003006d6f63 ================================================================== BUG: KASAN: slab-out-of-bounds in ibmvnic_login+0xacc/0xffc [ibmvnic] Read of size 8 at addr c0000001331a9aa8 by task ip/17681 <...> Allocated by task 17681: <...> ibmvnic_login+0x2f0/0xffc [ibmvnic] ibmvnic_open+0x148/0x308 [ibmvnic] __dev_open+0x1ac/0x304 <...> The buggy address is located 168 bytes inside of allocated 175-byte region [c0000001331a9a00, c0000001331a9aaf) <...> ================================================================= ibmvnic 30000003 env3: 000000000033766e


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: net: dsa: sja1105: fix kasan out-of-bounds warning in sja1105_table_delete_entry() There are actually 2 problems: - deleting the last element doesn't require the memmove of elements [i + 1, end) over it. Actually, element i+1 is out of bounds. - The memmove itself should move size - i - 1 elements, because the last element is out of bounds. The out-of-bounds element still remains out of bounds after being accessed, so the problem is only that we touch it, not that it becomes in active use. But I suppose it can lead to issues if the out-of-bounds element is part of an unmapped page.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: bnxt_en: Mask the bd_cnt field in the TX BD properly The bd_cnt field in the TX BD specifies the total number of BDs for the TX packet. The bd_cnt field has 5 bits and the maximum number supported is 32 with the value 0. CONFIG_MAX_SKB_FRAGS can be modified and the total number of SKB fragments can approach or exceed the maximum supported by the chip. Add a macro to properly mask the bd_cnt field so that the value 32 will be properly masked and set to 0 in the bd_cnd field. Without this patch, the out-of-range bd_cnt value will corrupt the TX BD and may cause TX timeout. The next patch will check for values exceeding 32.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: ax25: Remove broken autobind Binding AX25 socket by using the autobind feature leads to memory leaks in ax25_connect() and also refcount leaks in ax25_release(). Memory leak was detected with kmemleak: ================================================================ unreferenced object 0xffff8880253cd680 (size 96): backtrace: __kmalloc_node_track_caller_noprof (./include/linux/kmemleak.h:43) kmemdup_noprof (mm/util.c:136) ax25_rt_autobind (net/ax25/ax25_route.c:428) ax25_connect (net/ax25/af_ax25.c:1282) __sys_connect_file (net/socket.c:2045) __sys_connect (net/socket.c:2064) __x64_sys_connect (net/socket.c:2067) do_syscall_64 (arch/x86/entry/common.c:52 arch/x86/entry/common.c:83) entry_SYSCALL_64_after_hwframe (arch/x86/entry/entry_64.S:130) ================================================================ When socket is bound, refcounts must be incremented the way it is done in ax25_bind() and ax25_setsockopt() (SO_BINDTODEVICE). In case of autobind, the refcounts are not incremented. This bug leads to the following issue reported by Syzkaller: ================================================================ ax25_connect(): syz-executor318 uses autobind, please contact jreuter@yaina.de ------------[ cut here ]------------ refcount_t: decrement hit 0; leaking memory. WARNING: CPU: 0 PID: 5317 at lib/refcount.c:31 refcount_warn_saturate+0xfa/0x1d0 lib/refcount.c:31 Modules linked in: CPU: 0 UID: 0 PID: 5317 Comm: syz-executor318 Not tainted 6.14.0-rc4-syzkaller-00278-gece144f151ac #0 Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2~bpo12+1 04/01/2014 RIP: 0010:refcount_warn_saturate+0xfa/0x1d0 lib/refcount.c:31 ... Call Trace: <TASK> __refcount_dec include/linux/refcount.h:336 [inline] refcount_dec include/linux/refcount.h:351 [inline] ref_tracker_free+0x6af/0x7e0 lib/ref_tracker.c:236 netdev_tracker_free include/linux/netdevice.h:4302 [inline] netdev_put include/linux/netdevice.h:4319 [inline] ax25_release+0x368/0x960 net/ax25/af_ax25.c:1080 __sock_release net/socket.c:647 [inline] sock_close+0xbc/0x240 net/socket.c:1398 __fput+0x3e9/0x9f0 fs/file_table.c:464 __do_sys_close fs/open.c:1580 [inline] __se_sys_close fs/open.c:1565 [inline] __x64_sys_close+0x7f/0x110 fs/open.c:1565 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0xf3/0x230 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x77/0x7f ... </TASK> ================================================================ Considering the issues above and the comments left in the code that say: "check if we can remove this feature. It is broken."; "autobinding in this may or may not work"; - it is better to completely remove this feature than to fix it because it is broken and leads to various kinds of memory bugs. Now calling connect() without first binding socket will result in an error (-EINVAL). Userspace software that relies on the autobind feature might get broken. However, this feature does not seem widely used with this specific driver as it was not reliable at any point of time, and it is already broken anyway. E.g. ax25-tools and ax25-apps packages for popular distributions do not use the autobind feature for AF_AX25. Found by Linux Verification Center (linuxtesting.org) with Syzkaller.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: eth: bnxt: fix out-of-range access of vnic_info array The bnxt_queue_{start | stop}() access vnic_info as much as allocated, which indicates bp->nr_vnics. So, it should not reach bp->vnic_info[bp->nr_vnics].


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: idpf: check error for register_netdev() on init Current init logic ignores the error code from register_netdev(), which will cause WARN_ON() on attempt to unregister it, if there was one, and there is no info for the user that the creation of the netdev failed. WARNING: CPU: 89 PID: 6902 at net/core/dev.c:11512 unregister_netdevice_many_notify+0x211/0x1a10 ... [ 3707.563641] unregister_netdev+0x1c/0x30 [ 3707.563656] idpf_vport_dealloc+0x5cf/0xce0 [idpf] [ 3707.563684] idpf_deinit_task+0xef/0x160 [idpf] [ 3707.563712] idpf_vc_core_deinit+0x84/0x320 [idpf] [ 3707.563739] idpf_remove+0xbf/0x780 [idpf] [ 3707.563769] pci_device_remove+0xab/0x1e0 [ 3707.563786] device_release_driver_internal+0x371/0x530 [ 3707.563803] driver_detach+0xbf/0x180 [ 3707.563816] bus_remove_driver+0x11b/0x2a0 [ 3707.563829] pci_unregister_driver+0x2a/0x250 Introduce an error check and log the vport number and error code. On removal make sure to check VPORT_REG_NETDEV flag prior to calling unregister and free on the netdev. Add local variables for idx, vport_config and netdev for readability.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: md/raid1,raid10: don't ignore IO flags If blk-wbt is enabled by default, it's found that raid write performance is quite bad because all IO are throttled by wbt of underlying disks, due to flag REQ_IDLE is ignored. And turns out this behaviour exist since blk-wbt is introduced. Other than REQ_IDLE, other flags should not be ignored as well, for example REQ_META can be set for filesystems, clearing it can cause priority reverse problems; And REQ_NOWAIT should not be cleared as well, because io will wait instead of failing directly in underlying disks. Fix those problems by keep IO flags from master bio. Fises: f51d46d0e7cb ("md: add support for REQ_NOWAIT")


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: md: fix mddev uaf while iterating all_mddevs list While iterating all_mddevs list from md_notify_reboot() and md_exit(), list_for_each_entry_safe is used, and this can race with deletint the next mddev, causing UAF: t1: spin_lock //list_for_each_entry_safe(mddev, n, ...) mddev_get(mddev1) // assume mddev2 is the next entry spin_unlock t2: //remove mddev2 ... mddev_free spin_lock list_del spin_unlock kfree(mddev2) mddev_put(mddev1) spin_lock //continue dereference mddev2->all_mddevs The old helper for_each_mddev() actually grab the reference of mddev2 while holding the lock, to prevent from being freed. This problem can be fixed the same way, however, the code will be complex. Hence switch to use list_for_each_entry, in this case mddev_put() can free the mddev1 and it's not safe as well. Refer to md_seq_show(), also factor out a helper mddev_put_locked() to fix this problem.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: wifi: ath12k: Clear affinity hint before calling ath12k_pci_free_irq() in error path If a shared IRQ is used by the driver due to platform limitation, then the IRQ affinity hint is set right after the allocation of IRQ vectors in ath12k_pci_msi_alloc(). This does no harm unless one of the functions requesting the IRQ fails and attempt to free the IRQ. This may end up with a warning from the IRQ core that is expecting the affinity hint to be cleared before freeing the IRQ: kernel/irq/manage.c: /* make sure affinity_hint is cleaned up */ if (WARN_ON_ONCE(desc->affinity_hint)) desc->affinity_hint = NULL; So to fix this issue, clear the IRQ affinity hint before calling ath12k_pci_free_irq() in the error path. The affinity will be cleared once again further down the error path due to code organization, but that does no harm.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: wifi: ath11k: Clear affinity hint before calling ath11k_pcic_free_irq() in error path If a shared IRQ is used by the driver due to platform limitation, then the IRQ affinity hint is set right after the allocation of IRQ vectors in ath11k_pci_alloc_msi(). This does no harm unless one of the functions requesting the IRQ fails and attempt to free the IRQ. This results in the below warning: WARNING: CPU: 7 PID: 349 at kernel/irq/manage.c:1929 free_irq+0x278/0x29c Call trace: free_irq+0x278/0x29c ath11k_pcic_free_irq+0x70/0x10c [ath11k] ath11k_pci_probe+0x800/0x820 [ath11k_pci] local_pci_probe+0x40/0xbc The warning is due to not clearing the affinity hint before freeing the IRQs. So to fix this issue, clear the IRQ affinity hint before calling ath11k_pcic_free_irq() in the error path. The affinity will be cleared once again further down the error path due to code organization, but that does no harm. Tested-on: QCA6390 hw2.0 PCI WLAN.HST.1.0.1-05266-QCAHSTSWPLZ_V2_TO_X86-1


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: dlm: prevent NPD when writing a positive value to event_done do_uevent returns the value written to event_done. In case it is a positive value, new_lockspace would undo all the work, and lockspace would not be set. __dlm_new_lockspace, however, would treat that positive value as a success due to commit 8511a2728ab8 ("dlm: fix use count with multiple joins"). Down the line, device_create_lockspace would pass that NULL lockspace to dlm_find_lockspace_local, leading to a NULL pointer dereference. Treating such positive values as successes prevents the problem. Given this has been broken for so long, this is unlikely to break userspace expectations.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: ALSA: timer: Don't take register_mutex with copy_from/to_user() The infamous mmap_lock taken in copy_from/to_user() can be often problematic when it's called inside another mutex, as they might lead to deadlocks. In the case of ALSA timer code, the bad pattern is with guard(mutex)(&register_mutex) that covers copy_from/to_user() -- which was mistakenly introduced at converting to guard(), and it had been carefully worked around in the past. This patch fixes those pieces simply by moving copy_from/to_user() out of the register mutex lock again.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: thermal: int340x: Add NULL check for adev Not all devices have an ACPI companion fwnode, so adev might be NULL. This is similar to the commit cd2fd6eab480 ("platform/x86: int3472: Check for adev == NULL"). Add a check for adev not being set and return -ENODEV in that case to avoid a possible NULL pointer deref in int3402_thermal_probe(). Note, under the same directory, int3400_thermal_probe() has such a check. [ rjw: Subject edit, added Fixes: ]


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: watch_queue: fix pipe accounting mismatch Currently, watch_queue_set_size() modifies the pipe buffers charged to user->pipe_bufs without updating the pipe->nr_accounted on the pipe itself, due to the if (!pipe_has_watch_queue()) test in pipe_resize_ring(). This means that when the pipe is ultimately freed, we decrement user->pipe_bufs by something other than what than we had charged to it, potentially leading to an underflow. This in turn can cause subsequent too_many_pipe_buffers_soft() tests to fail with -EPERM. To remedy this, explicitly account for the pipe usage in watch_queue_set_size() to match the number set via account_pipe_buffers() (It's unclear why watch_queue_set_size() does not update nr_accounted; it may be due to intentional overprovisioning in watch_queue_set_size()?)


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: misc: pci_endpoint_test: Avoid issue of interrupts remaining after request_irq error After devm_request_irq() fails with error in pci_endpoint_test_request_irq(), the pci_endpoint_test_free_irq_vectors() is called assuming that all IRQs have been released. However, some requested IRQs remain unreleased, so there are still /proc/irq/* entries remaining, and this results in WARN() with the following message: remove_proc_entry: removing non-empty directory 'irq/30', leaking at least 'pci-endpoint-test.0' WARNING: CPU: 0 PID: 202 at fs/proc/generic.c:719 remove_proc_entry +0x190/0x19c To solve this issue, set the number of remaining IRQs to test->num_irqs, and release IRQs in advance by calling pci_endpoint_test_release_irq(). [kwilczynski: commit log]


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: mptcp: fix NULL pointer in can_accept_new_subflow When testing valkey benchmark tool with MPTCP, the kernel panics in 'mptcp_can_accept_new_subflow' because subflow_req->msk is NULL. Call trace: mptcp_can_accept_new_subflow (./net/mptcp/subflow.c:63 (discriminator 4)) (P) subflow_syn_recv_sock (./net/mptcp/subflow.c:854) tcp_check_req (./net/ipv4/tcp_minisocks.c:863) tcp_v4_rcv (./net/ipv4/tcp_ipv4.c:2268) ip_protocol_deliver_rcu (./net/ipv4/ip_input.c:207) ip_local_deliver_finish (./net/ipv4/ip_input.c:234) ip_local_deliver (./net/ipv4/ip_input.c:254) ip_rcv_finish (./net/ipv4/ip_input.c:449) ... According to the debug log, the same req received two SYN-ACK in a very short time, very likely because the client retransmits the syn ack due to multiple reasons. Even if the packets are transmitted with a relevant time interval, they can be processed by the server on different CPUs concurrently). The 'subflow_req->msk' ownership is transferred to the subflow the first, and there will be a risk of a null pointer dereference here. This patch fixes this issue by moving the 'subflow_req->msk' under the `own_req == true` conditional. Note that the !msk check in subflow_hmac_valid() can be dropped, because the same check already exists under the own_req mpj branch where the code has been moved to.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: ext4: fix off-by-one error in do_split Syzkaller detected a use-after-free issue in ext4_insert_dentry that was caused by out-of-bounds access due to incorrect splitting in do_split. BUG: KASAN: use-after-free in ext4_insert_dentry+0x36a/0x6d0 fs/ext4/namei.c:2109 Write of size 251 at addr ffff888074572f14 by task syz-executor335/5847 CPU: 0 UID: 0 PID: 5847 Comm: syz-executor335 Not tainted 6.12.0-rc6-syzkaller-00318-ga9cda7c0ffed #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 10/30/2024 Call Trace: <TASK> __dump_stack lib/dump_stack.c:94 [inline] dump_stack_lvl+0x241/0x360 lib/dump_stack.c:120 print_address_description mm/kasan/report.c:377 [inline] print_report+0x169/0x550 mm/kasan/report.c:488 kasan_report+0x143/0x180 mm/kasan/report.c:601 kasan_check_range+0x282/0x290 mm/kasan/generic.c:189 __asan_memcpy+0x40/0x70 mm/kasan/shadow.c:106 ext4_insert_dentry+0x36a/0x6d0 fs/ext4/namei.c:2109 add_dirent_to_buf+0x3d9/0x750 fs/ext4/namei.c:2154 make_indexed_dir+0xf98/0x1600 fs/ext4/namei.c:2351 ext4_add_entry+0x222a/0x25d0 fs/ext4/namei.c:2455 ext4_add_nondir+0x8d/0x290 fs/ext4/namei.c:2796 ext4_symlink+0x920/0xb50 fs/ext4/namei.c:3431 vfs_symlink+0x137/0x2e0 fs/namei.c:4615 do_symlinkat+0x222/0x3a0 fs/namei.c:4641 __do_sys_symlink fs/namei.c:4662 [inline] __se_sys_symlink fs/namei.c:4660 [inline] __x64_sys_symlink+0x7a/0x90 fs/namei.c:4660 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0xf3/0x230 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x77/0x7f </TASK> The following loop is located right above 'if' statement. for (i = count-1; i >= 0; i--) { /* is more than half of this entry in 2nd half of the block? */ if (size + map[i].size/2 > blocksize/2) break; size += map[i].size; move++; } 'i' in this case could go down to -1, in which case sum of active entries wouldn't exceed half the block size, but previous behaviour would also do split in half if sum would exceed at the very last block, which in case of having too many long name files in a single block could lead to out-of-bounds access and following use-after-free. Found by Linux Verification Center (linuxtesting.org) with Syzkaller.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: io_uring/net: fix io_req_post_cqe abuse by send bundle [ 114.987980][ T5313] WARNING: CPU: 6 PID: 5313 at io_uring/io_uring.c:872 io_req_post_cqe+0x12e/0x4f0 [ 114.991597][ T5313] RIP: 0010:io_req_post_cqe+0x12e/0x4f0 [ 115.001880][ T5313] Call Trace: [ 115.002222][ T5313] <TASK> [ 115.007813][ T5313] io_send+0x4fe/0x10f0 [ 115.009317][ T5313] io_issue_sqe+0x1a6/0x1740 [ 115.012094][ T5313] io_wq_submit_work+0x38b/0xed0 [ 115.013223][ T5313] io_worker_handle_work+0x62a/0x1600 [ 115.013876][ T5313] io_wq_worker+0x34f/0xdf0 As the comment states, io_req_post_cqe() should only be used by multishot requests, i.e. REQ_F_APOLL_MULTISHOT, which bundled sends are not. Add a flag signifying whether a request wants to post multiple CQEs. Eventually REQ_F_APOLL_MULTISHOT should imply the new flag, but that's left out for simplicity.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: media: mediatek: vcodec: Fix a resource leak related to the scp device in FW initialization On Mediatek devices with a system companion processor (SCP) the mtk_scp structure has to be removed explicitly to avoid a resource leak. Free the structure in case the allocation of the firmware structure fails during the firmware initialization.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: perf: Fix hang while freeing sigtrap event Perf can hang while freeing a sigtrap event if a related deferred signal hadn't managed to be sent before the file got closed: perf_event_overflow() task_work_add(perf_pending_task) fput() task_work_add(____fput()) task_work_run() ____fput() perf_release() perf_event_release_kernel() _free_event() perf_pending_task_sync() task_work_cancel() -> FAILED rcuwait_wait_event() Once task_work_run() is running, the list of pending callbacks is removed from the task_struct and from this point on task_work_cancel() can't remove any pending and not yet started work items, hence the task_work_cancel() failure and the hang on rcuwait_wait_event(). Task work could be changed to remove one work at a time, so a work running on the current task can always cancel a pending one, however the wait / wake design is still subject to inverted dependencies when remote targets are involved, as pictured by Oleg: T1 T2 fd = perf_event_open(pid => T2->pid); fd = perf_event_open(pid => T1->pid); close(fd) close(fd) <IRQ> <IRQ> perf_event_overflow() perf_event_overflow() task_work_add(perf_pending_task) task_work_add(perf_pending_task) </IRQ> </IRQ> fput() fput() task_work_add(____fput()) task_work_add(____fput()) task_work_run() task_work_run() ____fput() ____fput() perf_release() perf_release() perf_event_release_kernel() perf_event_release_kernel() _free_event() _free_event() perf_pending_task_sync() perf_pending_task_sync() rcuwait_wait_event() rcuwait_wait_event() Therefore the only option left is to acquire the event reference count upon queueing the perf task work and release it from the task work, just like it was done before 3a5465418f5f ("perf: Fix event leak upon exec and file release") but without the leaks it fixed. Some adjustments are necessary to make it work: * A child event might dereference its parent upon freeing. Care must be taken to release the parent last. * Some places assuming the event doesn't have any reference held and therefore can be freed right away must instead put the reference and let the reference counting to its job.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: iommu/mediatek: Fix NULL pointer deference in mtk_iommu_device_group Currently, mtk_iommu calls during probe iommu_device_register before the hw_list from driver data is initialized. Since iommu probing issue fix, it leads to NULL pointer dereference in mtk_iommu_device_group when hw_list is accessed with list_first_entry (not null safe). So, change the call order to ensure iommu_device_register is called after the driver data are initialized.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: net: ppp: Add bound checking for skb data on ppp_sync_txmung Ensure we have enough data in linear buffer from skb before accessing initial bytes. This prevents potential out-of-bounds accesses when processing short packets. When ppp_sync_txmung receives an incoming package with an empty payload: (remote) gef➤ p *(struct pppoe_hdr *) (skb->head + skb->network_header) $18 = { type = 0x1, ver = 0x1, code = 0x0, sid = 0x2, length = 0x0, tag = 0xffff8880371cdb96 } from the skb struct (trimmed) tail = 0x16, end = 0x140, head = 0xffff88803346f400 "4", data = 0xffff88803346f416 ":\377", truesize = 0x380, len = 0x0, data_len = 0x0, mac_len = 0xe, hdr_len = 0x0, it is not safe to access data[2]. [pabeni@redhat.com: fixed subj typo]


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: smb: client: fix UAF in decryption with multichannel After commit f7025d861694 ("smb: client: allocate crypto only for primary server") and commit b0abcd65ec54 ("smb: client: fix UAF in async decryption"), the channels started reusing AEAD TFM from primary channel to perform synchronous decryption, but that can't done as there could be multiple cifsd threads (one per channel) simultaneously accessing it to perform decryption. This fixes the following KASAN splat when running fstest generic/249 with 'vers=3.1.1,multichannel,max_channels=4,seal' against Windows Server 2022: BUG: KASAN: slab-use-after-free in gf128mul_4k_lle+0xba/0x110 Read of size 8 at addr ffff8881046c18a0 by task cifsd/986 CPU: 3 UID: 0 PID: 986 Comm: cifsd Not tainted 6.15.0-rc1 #1 PREEMPT(voluntary) Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-3.fc41 04/01/2014 Call Trace: <TASK> dump_stack_lvl+0x5d/0x80 print_report+0x156/0x528 ? gf128mul_4k_lle+0xba/0x110 ? __virt_addr_valid+0x145/0x300 ? __phys_addr+0x46/0x90 ? gf128mul_4k_lle+0xba/0x110 kasan_report+0xdf/0x1a0 ? gf128mul_4k_lle+0xba/0x110 gf128mul_4k_lle+0xba/0x110 ghash_update+0x189/0x210 shash_ahash_update+0x295/0x370 ? __pfx_shash_ahash_update+0x10/0x10 ? __pfx_shash_ahash_update+0x10/0x10 ? __pfx_extract_iter_to_sg+0x10/0x10 ? ___kmalloc_large_node+0x10e/0x180 ? __asan_memset+0x23/0x50 crypto_ahash_update+0x3c/0xc0 gcm_hash_assoc_remain_continue+0x93/0xc0 crypt_message+0xe09/0xec0 [cifs] ? __pfx_crypt_message+0x10/0x10 [cifs] ? _raw_spin_unlock+0x23/0x40 ? __pfx_cifs_readv_from_socket+0x10/0x10 [cifs] decrypt_raw_data+0x229/0x380 [cifs] ? __pfx_decrypt_raw_data+0x10/0x10 [cifs] ? __pfx_cifs_read_iter_from_socket+0x10/0x10 [cifs] smb3_receive_transform+0x837/0xc80 [cifs] ? __pfx_smb3_receive_transform+0x10/0x10 [cifs] ? __pfx___might_resched+0x10/0x10 ? __pfx_smb3_is_transform_hdr+0x10/0x10 [cifs] cifs_demultiplex_thread+0x692/0x1570 [cifs] ? __pfx_cifs_demultiplex_thread+0x10/0x10 [cifs] ? rcu_is_watching+0x20/0x50 ? rcu_lockdep_current_cpu_online+0x62/0xb0 ? find_held_lock+0x32/0x90 ? kvm_sched_clock_read+0x11/0x20 ? local_clock_noinstr+0xd/0xd0 ? trace_irq_enable.constprop.0+0xa8/0xe0 ? __pfx_cifs_demultiplex_thread+0x10/0x10 [cifs] kthread+0x1fe/0x380 ? kthread+0x10f/0x380 ? __pfx_kthread+0x10/0x10 ? local_clock_noinstr+0xd/0xd0 ? ret_from_fork+0x1b/0x60 ? local_clock+0x15/0x30 ? lock_release+0x29b/0x390 ? rcu_is_watching+0x20/0x50 ? __pfx_kthread+0x10/0x10 ret_from_fork+0x31/0x60 ? __pfx_kthread+0x10/0x10 ret_from_fork_asm+0x1a/0x30 </TASK>


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: net: libwx: handle page_pool_dev_alloc_pages error page_pool_dev_alloc_pages could return NULL. There was a WARN_ON(!page) but it would still proceed to use the NULL pointer and then crash. This is similar to commit 001ba0902046 ("net: fec: handle page_pool_dev_alloc_pages error"). This is found by our static analysis tool KNighter.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: virtiofs: add filesystem context source name check In certain scenarios, for example, during fuzz testing, the source name may be NULL, which could lead to a kernel panic. Therefore, an extra check for the source name should be added.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: isofs: Prevent the use of too small fid syzbot reported a slab-out-of-bounds Read in isofs_fh_to_parent. [1] The handle_bytes value passed in by the reproducing program is equal to 12. In handle_to_path(), only 12 bytes of memory are allocated for the structure file_handle->f_handle member, which causes an out-of-bounds access when accessing the member parent_block of the structure isofs_fid in isofs, because accessing parent_block requires at least 16 bytes of f_handle. Here, fh_len is used to indirectly confirm that the value of handle_bytes is greater than 3 before accessing parent_block. [1] BUG: KASAN: slab-out-of-bounds in isofs_fh_to_parent+0x1b8/0x210 fs/isofs/export.c:183 Read of size 4 at addr ffff0000cc030d94 by task syz-executor215/6466 CPU: 1 UID: 0 PID: 6466 Comm: syz-executor215 Not tainted 6.14.0-rc7-syzkaller-ga2392f333575 #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 02/12/2025 Call trace: show_stack+0x2c/0x3c arch/arm64/kernel/stacktrace.c:466 (C) __dump_stack lib/dump_stack.c:94 [inline] dump_stack_lvl+0xe4/0x150 lib/dump_stack.c:120 print_address_description mm/kasan/report.c:408 [inline] print_report+0x198/0x550 mm/kasan/report.c:521 kasan_report+0xd8/0x138 mm/kasan/report.c:634 __asan_report_load4_noabort+0x20/0x2c mm/kasan/report_generic.c:380 isofs_fh_to_parent+0x1b8/0x210 fs/isofs/export.c:183 exportfs_decode_fh_raw+0x2dc/0x608 fs/exportfs/expfs.c:523 do_handle_to_path+0xa0/0x198 fs/fhandle.c:257 handle_to_path fs/fhandle.c:385 [inline] do_handle_open+0x8cc/0xb8c fs/fhandle.c:403 __do_sys_open_by_handle_at fs/fhandle.c:443 [inline] __se_sys_open_by_handle_at fs/fhandle.c:434 [inline] __arm64_sys_open_by_handle_at+0x80/0x94 fs/fhandle.c:434 __invoke_syscall arch/arm64/kernel/syscall.c:35 [inline] invoke_syscall+0x98/0x2b8 arch/arm64/kernel/syscall.c:49 el0_svc_common+0x130/0x23c arch/arm64/kernel/syscall.c:132 do_el0_svc+0x48/0x58 arch/arm64/kernel/syscall.c:151 el0_svc+0x54/0x168 arch/arm64/kernel/entry-common.c:744 el0t_64_sync_handler+0x84/0x108 arch/arm64/kernel/entry-common.c:762 el0t_64_sync+0x198/0x19c arch/arm64/kernel/entry.S:600 Allocated by task 6466: kasan_save_stack mm/kasan/common.c:47 [inline] kasan_save_track+0x40/0x78 mm/kasan/common.c:68 kasan_save_alloc_info+0x40/0x50 mm/kasan/generic.c:562 poison_kmalloc_redzone mm/kasan/common.c:377 [inline] __kasan_kmalloc+0xac/0xc4 mm/kasan/common.c:394 kasan_kmalloc include/linux/kasan.h:260 [inline] __do_kmalloc_node mm/slub.c:4294 [inline] __kmalloc_noprof+0x32c/0x54c mm/slub.c:4306 kmalloc_noprof include/linux/slab.h:905 [inline] handle_to_path fs/fhandle.c:357 [inline] do_handle_open+0x5a4/0xb8c fs/fhandle.c:403 __do_sys_open_by_handle_at fs/fhandle.c:443 [inline] __se_sys_open_by_handle_at fs/fhandle.c:434 [inline] __arm64_sys_open_by_handle_at+0x80/0x94 fs/fhandle.c:434 __invoke_syscall arch/arm64/kernel/syscall.c:35 [inline] invoke_syscall+0x98/0x2b8 arch/arm64/kernel/syscall.c:49 el0_svc_common+0x130/0x23c arch/arm64/kernel/syscall.c:132 do_el0_svc+0x48/0x58 arch/arm64/kernel/syscall.c:151 el0_svc+0x54/0x168 arch/arm64/kernel/entry-common.c:744 el0t_64_sync_handler+0x84/0x108 arch/arm64/kernel/entry-common.c:762 el0t_64_sync+0x198/0x19c arch/arm64/kernel/entry.S:600


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: net: dsa: mv88e6xxx: avoid unregistering devlink regions which were never registered Russell King reports that a system with mv88e6xxx dereferences a NULL pointer when unbinding this driver: https://lore.kernel.org/netdev/Z_lRkMlTJ1KQ0kVX@shell.armlinux.org.uk/ The crash seems to be in devlink_region_destroy(), which is not NULL tolerant but is given a NULL devlink global region pointer. At least on some chips, some devlink regions are conditionally registered since the blamed commit, see mv88e6xxx_setup_devlink_regions_global(): if (cond && !cond(chip)) continue; These are MV88E6XXX_REGION_STU and MV88E6XXX_REGION_PVT. If the chip does not have an STU or PVT, it should crash like this. To fix the issue, avoid unregistering those regions which are NULL, i.e. were skipped at mv88e6xxx_setup_devlink_regions_global() time.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: net: openvswitch: fix nested key length validation in the set() action It's not safe to access nla_len(ovs_key) if the data is smaller than the netlink header. Check that the attribute is OK first.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: net: mctp: Set SOCK_RCU_FREE Bind lookup runs under RCU, so ensure that a socket doesn't go away in the middle of a lookup.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: net_sched: hfsc: Fix a UAF vulnerability in class handling This patch fixes a Use-After-Free vulnerability in the HFSC qdisc class handling. The issue occurs due to a time-of-check/time-of-use condition in hfsc_change_class() when working with certain child qdiscs like netem or codel. The vulnerability works as follows: 1. hfsc_change_class() checks if a class has packets (q.qlen != 0) 2. It then calls qdisc_peek_len(), which for certain qdiscs (e.g., codel, netem) might drop packets and empty the queue 3. The code continues assuming the queue is still non-empty, adding the class to vttree 4. This breaks HFSC scheduler assumptions that only non-empty classes are in vttree 5. Later, when the class is destroyed, this can lead to a Use-After-Free The fix adds a second queue length check after qdisc_peek_len() to verify the queue wasn't emptied.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: codel: remove sch->q.qlen check before qdisc_tree_reduce_backlog() After making all ->qlen_notify() callbacks idempotent, now it is safe to remove the check of qlen!=0 from both fq_codel_dequeue() and codel_qdisc_dequeue().


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: vmxnet3: Fix malformed packet sizing in vmxnet3_process_xdp vmxnet3 driver's XDP handling is buggy for packet sizes using ring0 (that is, packet sizes between 128 - 3k bytes). We noticed MTU-related connectivity issues with Cilium's service load- balancing in case of vmxnet3 as NIC underneath. A simple curl to a HTTP backend service where the XDP LB was doing IPIP encap led to overly large packet sizes but only for *some* of the packets (e.g. HTTP GET request) while others (e.g. the prior TCP 3WHS) looked completely fine on the wire. In fact, the pcap recording on the backend node actually revealed that the node with the XDP LB was leaking uninitialized kernel data onto the wire for the affected packets, for example, while the packets should have been 152 bytes their actual size was 1482 bytes, so the remainder after 152 bytes was padded with whatever other data was in that page at the time (e.g. we saw user/payload data from prior processed packets). We only noticed this through an MTU issue, e.g. when the XDP LB node and the backend node both had the same MTU (e.g. 1500) then the curl request got dropped on the backend node's NIC given the packet was too large even though the IPIP-encapped packet normally would never even come close to the MTU limit. Lowering the MTU on the XDP LB (e.g. 1480) allowed to let the curl request succeed (which also indicates that the kernel ignored the padding, and thus the issue wasn't very user-visible). Commit e127ce7699c1 ("vmxnet3: Fix missing reserved tailroom") was too eager to also switch xdp_prepare_buff() from rcd->len to rbi->len. It really needs to stick to rcd->len which is the actual packet length from the descriptor. The latter we also feed into vmxnet3_process_xdp_small(), by the way, and it indicates the correct length needed to initialize the xdp->{data,data_end} parts. For e127ce7699c1 ("vmxnet3: Fix missing reserved tailroom") the relevant part was adapting xdp_init_buff() to address the warning given the xdp_data_hard_end() depends on xdp->frame_sz. With that fixed, traffic on the wire looks good again.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: udmabuf: fix a buf size overflow issue during udmabuf creation by casting size_limit_mb to u64 when calculate pglimit.


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

Ссылки

Описание

** REJECT ** This CVE ID has been rejected or withdrawn by its CVE Numbering Authority.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: usb: typec: class: Fix NULL pointer access Concurrent calls to typec_partner_unlink_device can lead to a NULL pointer dereference. This patch adds a mutex to protect USB device pointers and prevent this issue. The same mutex protects both the device pointers and the partner device registration.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: xen-netfront: handle NULL returned by xdp_convert_buff_to_frame() The function xdp_convert_buff_to_frame() may return NULL if it fails to correctly convert the XDP buffer into an XDP frame due to memory constraints, internal errors, or invalid data. Failing to check for NULL may lead to a NULL pointer dereference if the result is used later in processing, potentially causing crashes, data corruption, or undefined behavior. On XDP redirect failure, the associated page must be released explicitly if it was previously retained via get_page(). Failing to do so may result in a memory leak, as the pages reference count is not decremented.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: net_sched: hfsc: Fix a potential UAF in hfsc_dequeue() too Similarly to the previous patch, we need to safe guard hfsc_dequeue() too. But for this one, we don't have a reliable reproducer.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: tipc: fix NULL pointer dereference in tipc_mon_reinit_self() syzbot reported: tipc: Node number set to 1055423674 Oops: general protection fault, probably for non-canonical address 0xdffffc0000000000: 0000 [#1] SMP KASAN NOPTI KASAN: null-ptr-deref in range [0x0000000000000000-0x0000000000000007] CPU: 3 UID: 0 PID: 6017 Comm: kworker/3:5 Not tainted 6.15.0-rc1-syzkaller-00246-g900241a5cc15 #0 PREEMPT(full) Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2~bpo12+1 04/01/2014 Workqueue: events tipc_net_finalize_work RIP: 0010:tipc_mon_reinit_self+0x11c/0x210 net/tipc/monitor.c:719 ... RSP: 0018:ffffc9000356fb68 EFLAGS: 00010246 RAX: 0000000000000000 RBX: 0000000000000000 RCX: 000000003ee87cba RDX: 0000000000000000 RSI: ffffffff8dbc56a7 RDI: ffff88804c2cc010 RBP: dffffc0000000000 R08: 0000000000000001 R09: 0000000000000000 R10: 0000000000000001 R11: 0000000000000000 R12: 0000000000000007 R13: fffffbfff2111097 R14: ffff88804ead8000 R15: ffff88804ead9010 FS: 0000000000000000(0000) GS:ffff888097ab9000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00000000f720eb00 CR3: 000000000e182000 CR4: 0000000000352ef0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 Call Trace: <TASK> tipc_net_finalize+0x10b/0x180 net/tipc/net.c:140 process_one_work+0x9cc/0x1b70 kernel/workqueue.c:3238 process_scheduled_works kernel/workqueue.c:3319 [inline] worker_thread+0x6c8/0xf10 kernel/workqueue.c:3400 kthread+0x3c2/0x780 kernel/kthread.c:464 ret_from_fork+0x45/0x80 arch/x86/kernel/process.c:153 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:245 </TASK> ... RIP: 0010:tipc_mon_reinit_self+0x11c/0x210 net/tipc/monitor.c:719 ... RSP: 0018:ffffc9000356fb68 EFLAGS: 00010246 RAX: 0000000000000000 RBX: 0000000000000000 RCX: 000000003ee87cba RDX: 0000000000000000 RSI: ffffffff8dbc56a7 RDI: ffff88804c2cc010 RBP: dffffc0000000000 R08: 0000000000000001 R09: 0000000000000000 R10: 0000000000000001 R11: 0000000000000000 R12: 0000000000000007 R13: fffffbfff2111097 R14: ffff88804ead8000 R15: ffff88804ead9010 FS: 0000000000000000(0000) GS:ffff888097ab9000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00000000f720eb00 CR3: 000000000e182000 CR4: 0000000000352ef0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 There is a racing condition between workqueue created when enabling bearer and another thread created when disabling bearer right after that as follow: enabling_bearer | disabling_bearer --------------- | ---------------- tipc_disc_timeout() | { | bearer_disable() ... | { schedule_work(&tn->work); | tipc_mon_delete() ... | { } | ... | write_lock_bh(&mon->lock); | mon->self = NULL; | write_unlock_bh(&mon->lock); | ... | } tipc_net_finalize_work() | } { | ... | tipc_net_finalize() | { | ... | tipc_mon_reinit_self() | { | ... | write_lock_bh(&mon->lock); | mon->self->addr = tipc_own_addr(net); | write_unlock_bh(&mon->lock); | ... ---truncated---


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: cpufreq: scpi: Fix null-ptr-deref in scpi_cpufreq_get_rate() cpufreq_cpu_get_raw() can return NULL when the target CPU is not present in the policy->cpus mask. scpi_cpufreq_get_rate() does not check for this case, which results in a NULL pointer dereference.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: cpufreq: scmi: Fix null-ptr-deref in scmi_cpufreq_get_rate() cpufreq_cpu_get_raw() can return NULL when the target CPU is not present in the policy->cpus mask. scmi_cpufreq_get_rate() does not check for this case, which results in a NULL pointer dereference. Add NULL check after cpufreq_cpu_get_raw() to prevent this issue.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: cpufreq: apple-soc: Fix null-ptr-deref in apple_soc_cpufreq_get_rate() cpufreq_cpu_get_raw() can return NULL when the target CPU is not present in the policy->cpus mask. apple_soc_cpufreq_get_rate() does not check for this case, which results in a NULL pointer dereference.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: net/niu: Niu requires MSIX ENTRY_DATA fields touch before entry reads Fix niu_try_msix() to not cause a fatal trap on sparc systems. Set PCI_DEV_FLAGS_MSIX_TOUCH_ENTRY_DATA_FIRST on the struct pci_dev to work around a bug in the hardware or firmware. For each vector entry in the msix table, niu chips will cause a fatal trap if any registers in that entry are read before that entries' ENTRY_DATA register is written to. Testing indicates writes to other registers are not sufficient to prevent the fatal trap, however the value does not appear to matter. This only needs to happen once after power up, so simply rebooting into a kernel lacking this fix will NOT cause the trap. NON-RESUMABLE ERROR: Reporting on cpu 64 NON-RESUMABLE ERROR: TPC [0x00000000005f6900] <msix_prepare_msi_desc+0x90/0xa0> NON-RESUMABLE ERROR: RAW [4010000000000016:00000e37f93e32ff:0000000202000080:ffffffffffffffff NON-RESUMABLE ERROR: 0000000800000000:0000000000000000:0000000000000000:0000000000000000] NON-RESUMABLE ERROR: handle [0x4010000000000016] stick [0x00000e37f93e32ff] NON-RESUMABLE ERROR: type [precise nonresumable] NON-RESUMABLE ERROR: attrs [0x02000080] < ASI sp-faulted priv > NON-RESUMABLE ERROR: raddr [0xffffffffffffffff] NON-RESUMABLE ERROR: insn effective address [0x000000c50020000c] NON-RESUMABLE ERROR: size [0x8] NON-RESUMABLE ERROR: asi [0x00] CPU: 64 UID: 0 PID: 745 Comm: kworker/64:1 Not tainted 6.11.5 #63 Workqueue: events work_for_cpu_fn TSTATE: 0000000011001602 TPC: 00000000005f6900 TNPC: 00000000005f6904 Y: 00000000 Not tainted TPC: <msix_prepare_msi_desc+0x90/0xa0> g0: 00000000000002e9 g1: 000000000000000c g2: 000000c50020000c g3: 0000000000000100 g4: ffff8000470307c0 g5: ffff800fec5be000 g6: ffff800047a08000 g7: 0000000000000000 o0: ffff800014feb000 o1: ffff800047a0b620 o2: 0000000000000011 o3: ffff800047a0b620 o4: 0000000000000080 o5: 0000000000000011 sp: ffff800047a0ad51 ret_pc: 00000000005f7128 RPC: <__pci_enable_msix_range+0x3cc/0x460> l0: 000000000000000d l1: 000000000000c01f l2: ffff800014feb0a8 l3: 0000000000000020 l4: 000000000000c000 l5: 0000000000000001 l6: 0000000020000000 l7: ffff800047a0b734 i0: ffff800014feb000 i1: ffff800047a0b730 i2: 0000000000000001 i3: 000000000000000d i4: 0000000000000000 i5: 0000000000000000 i6: ffff800047a0ae81 i7: 00000000101888b0 I7: <niu_try_msix.constprop.0+0xc0/0x130 [niu]> Call Trace: [<00000000101888b0>] niu_try_msix.constprop.0+0xc0/0x130 [niu] [<000000001018f840>] niu_get_invariants+0x183c/0x207c [niu] [<00000000101902fc>] niu_pci_init_one+0x27c/0x2fc [niu] [<00000000005ef3e4>] local_pci_probe+0x28/0x74 [<0000000000469240>] work_for_cpu_fn+0x8/0x1c [<000000000046b008>] process_scheduled_works+0x144/0x210 [<000000000046b518>] worker_thread+0x13c/0x1c0 [<00000000004710e0>] kthread+0xb8/0xc8 [<00000000004060c8>] ret_from_fork+0x1c/0x2c [<0000000000000000>] 0x0 Kernel panic - not syncing: Non-resumable error.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: spi: fsl-qspi: use devm function instead of driver remove Driver use devm APIs to manage clk/irq/resources and register the spi controller, but the legacy remove function will be called first during device detach and trigger kernel panic. Drop the remove function and use devm_add_action_or_reset() for driver cleanup to ensure the release sequence. Trigger kernel panic on i.MX8MQ by echo 30bb0000.spi >/sys/bus/platform/drivers/fsl-quadspi/unbind


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: drm/amd/display: prevent hang on link training fail [Why] When link training fails, the phy clock will be disabled. However, in enable_streams, it is assumed that link training succeeded and the mux selects the phy clock, causing a hang when a register write is made. [How] When enable_stream is hit, check if link training failed. If it did, fall back to the ref clock to avoid a hang and keep the system in a recoverable state.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: 9p/net: fix improper handling of bogus negative read/write replies In p9_client_write() and p9_client_read_once(), if the server incorrectly replies with success but a negative write/read count then we would consider written (negative) <= rsize (positive) because both variables were signed. Make variables unsigned to avoid this problem. The reproducer linked below now fails with the following error instead of a null pointer deref: 9pnet: bogus RWRITE count (4294967295 > 3)


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: pds_core: make wait_context part of q_info Make the wait_context a full part of the q_info struct rather than a stack variable that goes away after pdsc_adminq_post() is done so that the context is still available after the wait loop has given up. There was a case where a slow development firmware caused the adminq request to time out, but then later the FW finally finished the request and sent the interrupt. The handler tried to complete_all() the completion context that had been created on the stack in pdsc_adminq_post() but no longer existed. This caused bad pointer usage, kernel crashes, and much wailing and gnashing of teeth.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: pds_core: handle unsupported PDS_CORE_CMD_FW_CONTROL result If the FW doesn't support the PDS_CORE_CMD_FW_CONTROL command the driver might at the least print garbage and at the worst crash when the user runs the "devlink dev info" devlink command. This happens because the stack variable fw_list is not 0 initialized which results in fw_list.num_fw_slots being a garbage value from the stack. Then the driver tries to access fw_list.fw_names[i] with i >= ARRAY_SIZE and runs off the end of the array. Fix this by initializing the fw_list and by not failing completely if the devcmd fails because other useful information is printed via devlink dev info even if the devcmd fails.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: xenbus: Use kref to track req lifetime Marek reported seeing a NULL pointer fault in the xenbus_thread callstack: BUG: kernel NULL pointer dereference, address: 0000000000000000 RIP: e030:__wake_up_common+0x4c/0x180 Call Trace: <TASK> __wake_up_common_lock+0x82/0xd0 process_msg+0x18e/0x2f0 xenbus_thread+0x165/0x1c0 process_msg+0x18e is req->cb(req). req->cb is set to xs_wake_up(), a thin wrapper around wake_up(), or xenbus_dev_queue_reply(). It seems like it was xs_wake_up() in this case. It seems like req may have woken up the xs_wait_for_reply(), which kfree()ed the req. When xenbus_thread resumes, it faults on the zero-ed data. Linux Device Drivers 2nd edition states: "Normally, a wake_up call can cause an immediate reschedule to happen, meaning that other processes might run before wake_up returns." ... which would match the behaviour observed. Change to keeping two krefs on each request. One for the caller, and one for xenbus_thread. Each will kref_put() when finished, and the last will free it. This use of kref matches the description in Documentation/core-api/kref.rst


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: KVM: SVM: Forcibly leave SMM mode on SHUTDOWN interception Previously, commit ed129ec9057f ("KVM: x86: forcibly leave nested mode on vCPU reset") addressed an issue where a triple fault occurring in nested mode could lead to use-after-free scenarios. However, the commit did not handle the analogous situation for System Management Mode (SMM). This omission results in triggering a WARN when KVM forces a vCPU INIT after SHUTDOWN interception while the vCPU is in SMM. This situation was reprodused using Syzkaller by: 1) Creating a KVM VM and vCPU 2) Sending a KVM_SMI ioctl to explicitly enter SMM 3) Executing invalid instructions causing consecutive exceptions and eventually a triple fault The issue manifests as follows: WARNING: CPU: 0 PID: 25506 at arch/x86/kvm/x86.c:12112 kvm_vcpu_reset+0x1d2/0x1530 arch/x86/kvm/x86.c:12112 Modules linked in: CPU: 0 PID: 25506 Comm: syz-executor.0 Not tainted 6.1.130-syzkaller-00157-g164fe5dde9b6 #0 Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.12.0-1 04/01/2014 RIP: 0010:kvm_vcpu_reset+0x1d2/0x1530 arch/x86/kvm/x86.c:12112 Call Trace: <TASK> shutdown_interception+0x66/0xb0 arch/x86/kvm/svm/svm.c:2136 svm_invoke_exit_handler+0x110/0x530 arch/x86/kvm/svm/svm.c:3395 svm_handle_exit+0x424/0x920 arch/x86/kvm/svm/svm.c:3457 vcpu_enter_guest arch/x86/kvm/x86.c:10959 [inline] vcpu_run+0x2c43/0x5a90 arch/x86/kvm/x86.c:11062 kvm_arch_vcpu_ioctl_run+0x50f/0x1cf0 arch/x86/kvm/x86.c:11283 kvm_vcpu_ioctl+0x570/0xf00 arch/x86/kvm/../../../virt/kvm/kvm_main.c:4122 vfs_ioctl fs/ioctl.c:51 [inline] __do_sys_ioctl fs/ioctl.c:870 [inline] __se_sys_ioctl fs/ioctl.c:856 [inline] __x64_sys_ioctl+0x19a/0x210 fs/ioctl.c:856 do_syscall_x64 arch/x86/entry/common.c:51 [inline] do_syscall_64+0x35/0x80 arch/x86/entry/common.c:81 entry_SYSCALL_64_after_hwframe+0x6e/0xd8 Architecturally, INIT is blocked when the CPU is in SMM, hence KVM's WARN() in kvm_vcpu_reset() to guard against KVM bugs, e.g. to detect improper emulation of INIT. SHUTDOWN on SVM is a weird edge case where KVM needs to do _something_ sane with the VMCB, since it's technically undefined, and INIT is the least awful choice given KVM's ABI. So, double down on stuffing INIT on SHUTDOWN, and force the vCPU out of SMM to avoid any weirdness (and the WARN). Found by Linux Verification Center (linuxtesting.org) with Syzkaller. [sean: massage changelog, make it clear this isn't architectural behavior]


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: mm/huge_memory: fix dereferencing invalid pmd migration entry When migrating a THP, concurrent access to the PMD migration entry during a deferred split scan can lead to an invalid address access, as illustrated below. To prevent this invalid access, it is necessary to check the PMD migration entry and return early. In this context, there is no need to use pmd_to_swp_entry and pfn_swap_entry_to_page to verify the equality of the target folio. Since the PMD migration entry is locked, it cannot be served as the target. Mailing list discussion and explanation from Hugh Dickins: "An anon_vma lookup points to a location which may contain the folio of interest, but might instead contain another folio: and weeding out those other folios is precisely what the "folio != pmd_folio((*pmd)" check (and the "risk of replacing the wrong folio" comment a few lines above it) is for." BUG: unable to handle page fault for address: ffffea60001db008 CPU: 0 UID: 0 PID: 2199114 Comm: tee Not tainted 6.14.0+ #4 NONE Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2 04/01/2014 RIP: 0010:split_huge_pmd_locked+0x3b5/0x2b60 Call Trace: <TASK> try_to_migrate_one+0x28c/0x3730 rmap_walk_anon+0x4f6/0x770 unmap_folio+0x196/0x1f0 split_huge_page_to_list_to_order+0x9f6/0x1560 deferred_split_scan+0xac5/0x12a0 shrinker_debugfs_scan_write+0x376/0x470 full_proxy_write+0x15c/0x220 vfs_write+0x2fc/0xcb0 ksys_write+0x146/0x250 do_syscall_64+0x6a/0x120 entry_SYSCALL_64_after_hwframe+0x76/0x7e The bug is found by syzkaller on an internal kernel, then confirmed on upstream.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: memblock: Accept allocated memory before use in memblock_double_array() When increasing the array size in memblock_double_array() and the slab is not yet available, a call to memblock_find_in_range() is used to reserve/allocate memory. However, the range returned may not have been accepted, which can result in a crash when booting an SNP guest: RIP: 0010:memcpy_orig+0x68/0x130 Code: ... RSP: 0000:ffffffff9cc03ce8 EFLAGS: 00010006 RAX: ff11001ff83e5000 RBX: 0000000000000000 RCX: fffffffffffff000 RDX: 0000000000000bc0 RSI: ffffffff9dba8860 RDI: ff11001ff83e5c00 RBP: 0000000000002000 R08: 0000000000000000 R09: 0000000000002000 R10: 000000207fffe000 R11: 0000040000000000 R12: ffffffff9d06ef78 R13: ff11001ff83e5000 R14: ffffffff9dba7c60 R15: 0000000000000c00 memblock_double_array+0xff/0x310 memblock_add_range+0x1fb/0x2f0 memblock_reserve+0x4f/0xa0 memblock_alloc_range_nid+0xac/0x130 memblock_alloc_internal+0x53/0xc0 memblock_alloc_try_nid+0x3d/0xa0 swiotlb_init_remap+0x149/0x2f0 mem_init+0xb/0xb0 mm_core_init+0x8f/0x350 start_kernel+0x17e/0x5d0 x86_64_start_reservations+0x14/0x30 x86_64_start_kernel+0x92/0xa0 secondary_startup_64_no_verify+0x194/0x19b Mitigate this by calling accept_memory() on the memory range returned before the slab is available. Prior to v6.12, the accept_memory() interface used a 'start' and 'end' parameter instead of 'start' and 'size', therefore the accept_memory() call must be adjusted to specify 'start + size' for 'end' when applying to kernels prior to v6.12.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: s390/pci: Fix missing check for zpci_create_device() error return The zpci_create_device() function returns an error pointer that needs to be checked before dereferencing it as a struct zpci_dev pointer. Add the missing check in __clp_add() where it was missed when adding the scan_list in the fixed commit. Simply not adding the device to the scan list results in the previous behavior.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: remoteproc: core: Clear table_sz when rproc_shutdown There is case as below could trigger kernel dump: Use U-Boot to start remote processor(rproc) with resource table published to a fixed address by rproc. After Kernel boots up, stop the rproc, load a new firmware which doesn't have resource table ,and start rproc. When starting rproc with a firmware not have resource table, `memcpy(loaded_table, rproc->cached_table, rproc->table_sz)` will trigger dump, because rproc->cache_table is set to NULL during the last stop operation, but rproc->table_sz is still valid. This issue is found on i.MX8MP and i.MX9. Dump as below: Unable to handle kernel NULL pointer dereference at virtual address 0000000000000000 Mem abort info: ESR = 0x0000000096000004 EC = 0x25: DABT (current EL), IL = 32 bits SET = 0, FnV = 0 EA = 0, S1PTW = 0 FSC = 0x04: level 0 translation fault Data abort info: ISV = 0, ISS = 0x00000004, ISS2 = 0x00000000 CM = 0, WnR = 0, TnD = 0, TagAccess = 0 GCS = 0, Overlay = 0, DirtyBit = 0, Xs = 0 user pgtable: 4k pages, 48-bit VAs, pgdp=000000010af63000 [0000000000000000] pgd=0000000000000000, p4d=0000000000000000 Internal error: Oops: 0000000096000004 [#1] PREEMPT SMP Modules linked in: CPU: 2 UID: 0 PID: 1060 Comm: sh Not tainted 6.14.0-rc7-next-20250317-dirty #38 Hardware name: NXP i.MX8MPlus EVK board (DT) pstate: a0000005 (NzCv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--) pc : __pi_memcpy_generic+0x110/0x22c lr : rproc_start+0x88/0x1e0 Call trace: __pi_memcpy_generic+0x110/0x22c (P) rproc_boot+0x198/0x57c state_store+0x40/0x104 dev_attr_store+0x18/0x2c sysfs_kf_write+0x7c/0x94 kernfs_fop_write_iter+0x120/0x1cc vfs_write+0x240/0x378 ksys_write+0x70/0x108 __arm64_sys_write+0x1c/0x28 invoke_syscall+0x48/0x10c el0_svc_common.constprop.0+0xc0/0xe0 do_el0_svc+0x1c/0x28 el0_svc+0x30/0xcc el0t_64_sync_handler+0x10c/0x138 el0t_64_sync+0x198/0x19c Clear rproc->table_sz to address the issue.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: net_sched: skbprio: Remove overly strict queue assertions In the current implementation, skbprio enqueue/dequeue contains an assertion that fails under certain conditions when SKBPRIO is used as a child qdisc under TBF with specific parameters. The failure occurs because TBF sometimes peeks at packets in the child qdisc without actually dequeuing them when tokens are unavailable. This peek operation creates a discrepancy between the parent and child qdisc queue length counters. When TBF later receives a high-priority packet, SKBPRIO's queue length may show a different value than what's reflected in its internal priority queue tracking, triggering the assertion. The fix removes this overly strict assertions in SKBPRIO, they are not necessary at all.


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

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: md/raid10: wait barrier before returning discard request with REQ_NOWAIT raid10_handle_discard should wait barrier before returning a discard bio which has REQ_NOWAIT. And there is no need to print warning calltrace if a discard bio has REQ_NOWAIT flag. Quality engineer usually checks dmesg and reports error if dmesg has warning/error calltrace.


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

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