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

exploitDog

suse-cvrf логотип

SUSE-SU-2024:2493-1

Опубликовано: 16 июл. 2024
Источник: suse-cvrf

Описание

Security update for the Linux Kernel

The SUSE Linux Enterprise 12 SP5 RT kernel was updated to receive various security bugfixes.

The following security bugs were fixed:

  • CVE-2021-47145: btrfs: do not BUG_ON in link_to_fixup_dir (bsc#1222005).
  • CVE-2021-47201: iavf: free q_vectors before queues in iavf_disable_vf (bsc#1222792).
  • CVE-2021-47275: bcache: avoid oversized read request in cache missing code path (bsc#1224965).
  • CVE-2021-47438: net/mlx5e: nullify cq->dbg pointer in mlx5_debug_cq_remove() (bsc#1225229)
  • CVE-2021-47498: dm rq: do not queue request to blk-mq during DM suspend (bsc#1225357).
  • CVE-2021-47520: can: pch_can: pch_can_rx_normal: fix use after free (bsc#1225431).
  • CVE-2021-47547: net: tulip: de4x5: fix the problem that the array 'lp->phy' may be out of bound (bsc#1225505).
  • CVE-2023-4244: Fixed a use-after-free in the nf_tables component, which could be exploited to achieve local privilege escalation (bsc#1215420).
  • CVE-2023-52507: Fixed possible shift-out-of-bounds in nfc/nci (bsc#1220833).
  • CVE-2023-52683: ACPI: LPIT: Avoid u32 multiplication overflow (bsc#1224627).
  • CVE-2023-52693: ACPI: video: check for error while searching for backlight device parent (bsc#1224686).
  • CVE-2023-52753: drm/amd/display: Avoid NULL dereference of timing generator (bsc#1225478).
  • CVE-2023-52817: drm/amdgpu: Fix a null pointer access when the smc_rreg pointer is NULL (bsc#1225569).
  • CVE-2023-52818: drm/amd: Fix UBSAN array-index-out-of-bounds for SMU7 (bsc#1225530).
  • CVE-2023-52819: drm/amd: Fix UBSAN array-index-out-of-bounds for Polaris and Tonga (bsc#1225532).
  • CVE-2024-26635: llc: Drop support for ETH_P_TR_802_2 (bsc#1221656).
  • CVE-2024-26636: llc: make llc_ui_sendmsg() more robust against bonding changes (bsc#1221659).
  • CVE-2024-26880: dm: call the resume method on internal suspend (bsc#1223188).
  • CVE-2024-35805: dm snapshot: fix lockup in dm_exception_table_exit (bsc#1224743).
  • CVE-2024-35819: soc: fsl: qbman: Use raw spinlock for cgr_lock (bsc#1224683).
  • CVE-2024-35828: wifi: libertas: fix some memleaks in lbs_allocate_cmd_buffer() (bsc#1224622).
  • CVE-2024-35947: dyndbg: fix old BUG_ON in >control parser (bsc#1224647).
  • CVE-2024-36014: drm/arm/malidp: fix a possible null pointer dereference (bsc#1225593).
  • CVE-2024-36941: wifi: nl80211: do not free NULL coalescing rule (bsc#1225835).
  • CVE-2024-38598: md: fix resync softlockup when bitmap size is less than array size (bsc#1226757).
  • CVE-2024-38619: usb-storage: alauda: Check whether the media is initialized (bsc#1226861).
  • CVE-2024-39301: net/9p: fix uninit-value in p9_client_rpc() (bsc#1226994).
  • CVE-2024-39475: fbdev: savage: Handle err return when savagefb_check_var failed (bsc#1227435)

The following non-security bugs were fixed:

  • PM: hibernate: x86: Use crc32 instead of md5 for hibernation e820 integrity check (git-fixes).
  • SUNRPC: Fix gss_free_in_token_pages() (git-fixes).
  • SUNRPC: Fix loop termination condition in gss_free_in_token_pages() (git-fixes).
  • drm/amdgpu/debugfs: fix error code when smc register accessors are NULL (git-fixes).
  • kgdb: Add kgdb_has_hit_break function (git-fixes).
  • kgdb: Move the extern declaration kgdb_has_hit_break() to generic kgdb.h (git-fixes).
  • net: hsr: fix placement of logical operator in a multi-line statement (bsc#1223021).
  • nfs: Handle error of rpc_proc_register() in nfs_net_init() (git-fixes).
  • powerpc/rtas: Prevent Spectre v1 gadget construction in sys_rtas() (bsc#1227487).
  • sched/deadline: Fix BUG_ON condition for deboosted tasks (bsc#1227407).
  • sunrpc: fix NFSACL RPC retry on soft mount (git-fixes).
  • x86/apic: Fix kernel panic when booting with intremap=off and x2apic_phys (git-fixes).
  • x86/boot/e820: Fix typo in e820.c comment (git-fixes).
  • x86/cpu: Fix AMD erratum #1485 on Zen4-based CPUs (git-fixes).
  • x86/fpu: Return proper error codes from user access functions (git-fixes).
  • x86/ioremap: Fix page aligned size calculation in __ioremap_caller() (git-fixes).
  • x86/kprobes: Fix kprobes instruction boudary check with CONFIG_RETHUNK (git-fixes).
  • x86/kprobes: Fix optprobe optimization check with CONFIG_RETHUNK (git-fixes).
  • x86/msr: Fix wr/rdmsr_safe_regs_on_cpu() prototypes (git-fixes).
  • x86/numa: Use cpumask_available instead of hardcoded NULL check (git-fixes).
  • x86: __memcpy_flushcache: fix wrong alignment if size > 2^32 (git-fixes).

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

SUSE Linux Enterprise Real Time 12 SP5
cluster-md-kmp-rt-4.12.14-10.194.1
dlm-kmp-rt-4.12.14-10.194.1
gfs2-kmp-rt-4.12.14-10.194.1
kernel-devel-rt-4.12.14-10.194.1
kernel-rt-4.12.14-10.194.1
kernel-rt-base-4.12.14-10.194.1
kernel-rt-devel-4.12.14-10.194.1
kernel-rt_debug-4.12.14-10.194.1
kernel-rt_debug-devel-4.12.14-10.194.1
kernel-source-rt-4.12.14-10.194.1
kernel-syms-rt-4.12.14-10.194.1
ocfs2-kmp-rt-4.12.14-10.194.1

Описание

In the Linux kernel, the following vulnerability has been resolved: btrfs: do not BUG_ON in link_to_fixup_dir While doing error injection testing I got the following panic kernel BUG at fs/btrfs/tree-log.c:1862! invalid opcode: 0000 [#1] SMP NOPTI CPU: 1 PID: 7836 Comm: mount Not tainted 5.13.0-rc1+ #305 Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.13.0-2.fc32 04/01/2014 RIP: 0010:link_to_fixup_dir+0xd5/0xe0 RSP: 0018:ffffb5800180fa30 EFLAGS: 00010216 RAX: fffffffffffffffb RBX: 00000000fffffffb RCX: ffff8f595287faf0 RDX: ffffb5800180fa37 RSI: ffff8f5954978800 RDI: 0000000000000000 RBP: ffff8f5953af9450 R08: 0000000000000019 R09: 0000000000000001 R10: 000151f408682970 R11: 0000000120021001 R12: ffff8f5954978800 R13: ffff8f595287faf0 R14: ffff8f5953c77dd0 R15: 0000000000000065 FS: 00007fc5284c8c40(0000) GS:ffff8f59bbd00000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00007fc5287f47c0 CR3: 000000011275e002 CR4: 0000000000370ee0 Call Trace: replay_one_buffer+0x409/0x470 ? btree_read_extent_buffer_pages+0xd0/0x110 walk_up_log_tree+0x157/0x1e0 walk_log_tree+0xa6/0x1d0 btrfs_recover_log_trees+0x1da/0x360 ? replay_one_extent+0x7b0/0x7b0 open_ctree+0x1486/0x1720 btrfs_mount_root.cold+0x12/0xea ? __kmalloc_track_caller+0x12f/0x240 legacy_get_tree+0x24/0x40 vfs_get_tree+0x22/0xb0 vfs_kern_mount.part.0+0x71/0xb0 btrfs_mount+0x10d/0x380 ? vfs_parse_fs_string+0x4d/0x90 legacy_get_tree+0x24/0x40 vfs_get_tree+0x22/0xb0 path_mount+0x433/0xa10 __x64_sys_mount+0xe3/0x120 do_syscall_64+0x3d/0x80 entry_SYSCALL_64_after_hwframe+0x44/0xae We can get -EIO or any number of legitimate errors from btrfs_search_slot(), panicing here is not the appropriate response. The error path for this code handles errors properly, simply return the error.


Затронутые продукты
SUSE Linux Enterprise Real Time 12 SP5:cluster-md-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:dlm-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:gfs2-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:kernel-devel-rt-4.12.14-10.194.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: iavf: free q_vectors before queues in iavf_disable_vf iavf_free_queues() clears adapter->num_active_queues, which iavf_free_q_vectors() relies on, so swap the order of these two function calls in iavf_disable_vf(). This resolves a panic encountered when the interface is disabled and then later brought up again after PF communication is restored.


Затронутые продукты
SUSE Linux Enterprise Real Time 12 SP5:cluster-md-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:dlm-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:gfs2-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:kernel-devel-rt-4.12.14-10.194.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: bcache: avoid oversized read request in cache missing code path In the cache missing code path of cached device, if a proper location from the internal B+ tree is matched for a cache miss range, function cached_dev_cache_miss() will be called in cache_lookup_fn() in the following code block, [code block 1] 526 unsigned int sectors = KEY_INODE(k) == s->iop.inode 527 ? min_t(uint64_t, INT_MAX, 528 KEY_START(k) - bio->bi_iter.bi_sector) 529 : INT_MAX; 530 int ret = s->d->cache_miss(b, s, bio, sectors); Here s->d->cache_miss() is the call backfunction pointer initialized as cached_dev_cache_miss(), the last parameter 'sectors' is an important hint to calculate the size of read request to backing device of the missing cache data. Current calculation in above code block may generate oversized value of 'sectors', which consequently may trigger 2 different potential kernel panics by BUG() or BUG_ON() as listed below, 1) BUG_ON() inside bch_btree_insert_key(), [code block 2] 886 BUG_ON(b->ops->is_extents && !KEY_SIZE(k)); 2) BUG() inside biovec_slab(), [code block 3] 51 default: 52 BUG(); 53 return NULL; All the above panics are original from cached_dev_cache_miss() by the oversized parameter 'sectors'. Inside cached_dev_cache_miss(), parameter 'sectors' is used to calculate the size of data read from backing device for the cache missing. This size is stored in s->insert_bio_sectors by the following lines of code, [code block 4] 909 s->insert_bio_sectors = min(sectors, bio_sectors(bio) + reada); Then the actual key inserting to the internal B+ tree is generated and stored in s->iop.replace_key by the following lines of code, [code block 5] 911 s->iop.replace_key = KEY(s->iop.inode, 912 bio->bi_iter.bi_sector + s->insert_bio_sectors, 913 s->insert_bio_sectors); The oversized parameter 'sectors' may trigger panic 1) by BUG_ON() from the above code block. And the bio sending to backing device for the missing data is allocated with hint from s->insert_bio_sectors by the following lines of code, [code block 6] 926 cache_bio = bio_alloc_bioset(GFP_NOWAIT, 927 DIV_ROUND_UP(s->insert_bio_sectors, PAGE_SECTORS), 928 &dc->disk.bio_split); The oversized parameter 'sectors' may trigger panic 2) by BUG() from the agove code block. Now let me explain how the panics happen with the oversized 'sectors'. In code block 5, replace_key is generated by macro KEY(). From the definition of macro KEY(), [code block 7] 71 #define KEY(inode, offset, size) \ 72 ((struct bkey) { \ 73 .high = (1ULL << 63) | ((__u64) (size) << 20) | (inode), \ 74 .low = (offset) \ 75 }) Here 'size' is 16bits width embedded in 64bits member 'high' of struct bkey. But in code block 1, if "KEY_START(k) - bio->bi_iter.bi_sector" is very probably to be larger than (1<<16) - 1, which makes the bkey size calculation in code block 5 is overflowed. In one bug report the value of parameter 'sectors' is 131072 (= 1 << 17), the overflowed 'sectors' results the overflowed s->insert_bio_sectors in code block 4, then makes size field of s->iop.replace_key to be 0 in code block 5. Then the 0- sized s->iop.replace_key is inserted into the internal B+ tree as cache missing check key (a special key to detect and avoid a racing between normal write request and cache missing read request) as, [code block 8] 915 ret = bch_btree_insert_check_key(b, &s->op, &s->iop.replace_key); Then the 0-sized s->iop.replace_key as 3rd parameter triggers the bkey size check BUG_ON() in code block 2, and causes the kernel panic 1). Another ke ---truncated---


Затронутые продукты
SUSE Linux Enterprise Real Time 12 SP5:cluster-md-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:dlm-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:gfs2-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:kernel-devel-rt-4.12.14-10.194.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: net/mlx5e: Fix memory leak in mlx5_core_destroy_cq() error path Prior to this patch in case mlx5_core_destroy_cq() failed it returns without completing all destroy operations and that leads to memory leak. Instead, complete the destroy flow before return error. Also move mlx5_debug_cq_remove() to the beginning of mlx5_core_destroy_cq() to be symmetrical with mlx5_core_create_cq(). kmemleak complains on: unreferenced object 0xc000000038625100 (size 64): comm "ethtool", pid 28301, jiffies 4298062946 (age 785.380s) hex dump (first 32 bytes): 60 01 48 94 00 00 00 c0 b8 05 34 c3 00 00 00 c0 `.H.......4..... 02 00 00 00 00 00 00 00 00 db 7d c1 00 00 00 c0 ..........}..... backtrace: [<000000009e8643cb>] add_res_tree+0xd0/0x270 [mlx5_core] [<00000000e7cb8e6c>] mlx5_debug_cq_add+0x5c/0xc0 [mlx5_core] [<000000002a12918f>] mlx5_core_create_cq+0x1d0/0x2d0 [mlx5_core] [<00000000cef0a696>] mlx5e_create_cq+0x210/0x3f0 [mlx5_core] [<000000009c642c26>] mlx5e_open_cq+0xb4/0x130 [mlx5_core] [<0000000058dfa578>] mlx5e_ptp_open+0x7f4/0xe10 [mlx5_core] [<0000000081839561>] mlx5e_open_channels+0x9cc/0x13e0 [mlx5_core] [<0000000009cf05d4>] mlx5e_switch_priv_channels+0xa4/0x230 [mlx5_core] [<0000000042bbedd8>] mlx5e_safe_switch_params+0x14c/0x300 [mlx5_core] [<0000000004bc9db8>] set_pflag_tx_port_ts+0x9c/0x160 [mlx5_core] [<00000000a0553443>] mlx5e_set_priv_flags+0xd0/0x1b0 [mlx5_core] [<00000000a8f3d84b>] ethnl_set_privflags+0x234/0x2d0 [<00000000fd27f27c>] genl_family_rcv_msg_doit+0x108/0x1d0 [<00000000f495e2bb>] genl_family_rcv_msg+0xe4/0x1f0 [<00000000646c5c2c>] genl_rcv_msg+0x78/0x120 [<00000000d53e384e>] netlink_rcv_skb+0x74/0x1a0


Затронутые продукты
SUSE Linux Enterprise Real Time 12 SP5:cluster-md-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:dlm-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:gfs2-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:kernel-devel-rt-4.12.14-10.194.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: dm rq: don't queue request to blk-mq during DM suspend DM uses blk-mq's quiesce/unquiesce to stop/start device mapper queue. But blk-mq's unquiesce may come from outside events, such as elevator switch, updating nr_requests or others, and request may come during suspend, so simply ask for blk-mq to requeue it. Fixes one kernel panic issue when running updating nr_requests and dm-mpath suspend/resume stress test.


Затронутые продукты
SUSE Linux Enterprise Real Time 12 SP5:cluster-md-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:dlm-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:gfs2-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:kernel-devel-rt-4.12.14-10.194.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: can: pch_can: pch_can_rx_normal: fix use after free After calling netif_receive_skb(skb), dereferencing skb is unsafe. Especially, the can_frame cf which aliases skb memory is dereferenced just after the call netif_receive_skb(skb). Reordering the lines solves the issue.


Затронутые продукты
SUSE Linux Enterprise Real Time 12 SP5:cluster-md-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:dlm-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:gfs2-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:kernel-devel-rt-4.12.14-10.194.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: net: tulip: de4x5: fix the problem that the array 'lp->phy[8]' may be out of bound In line 5001, if all id in the array 'lp->phy[8]' is not 0, when the 'for' end, the 'k' is 8. At this time, the array 'lp->phy[8]' may be out of bound.


Затронутые продукты
SUSE Linux Enterprise Real Time 12 SP5:cluster-md-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:dlm-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:gfs2-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:kernel-devel-rt-4.12.14-10.194.1

Ссылки

Описание

A use-after-free vulnerability in the Linux kernel's netfilter: nf_tables component can be exploited to achieve local privilege escalation. Due to a race condition between nf_tables netlink control plane transaction and nft_set element garbage collection, it is possible to underflow the reference counter causing a use-after-free vulnerability. We recommend upgrading past commit 3e91b0ebd994635df2346353322ac51ce84ce6d8.


Затронутые продукты
SUSE Linux Enterprise Real Time 12 SP5:cluster-md-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:dlm-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:gfs2-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:kernel-devel-rt-4.12.14-10.194.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: nfc: nci: assert requested protocol is valid The protocol is used in a bit mask to determine if the protocol is supported. Assert the provided protocol is less than the maximum defined so it doesn't potentially perform a shift-out-of-bounds and provide a clearer error for undefined protocols vs unsupported ones.


Затронутые продукты
SUSE Linux Enterprise Real Time 12 SP5:cluster-md-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:dlm-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:gfs2-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:kernel-devel-rt-4.12.14-10.194.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: ACPI: LPIT: Avoid u32 multiplication overflow In lpit_update_residency() there is a possibility of overflow in multiplication, if tsc_khz is large enough (> UINT_MAX/1000). Change multiplication to mul_u32_u32(). Found by Linux Verification Center (linuxtesting.org) with SVACE.


Затронутые продукты
SUSE Linux Enterprise Real Time 12 SP5:cluster-md-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:dlm-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:gfs2-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:kernel-devel-rt-4.12.14-10.194.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: ACPI: video: check for error while searching for backlight device parent If acpi_get_parent() called in acpi_video_dev_register_backlight() fails, for example, because acpi_ut_acquire_mutex() fails inside acpi_get_parent), this can lead to incorrect (uninitialized) acpi_parent handle being passed to acpi_get_pci_dev() for detecting the parent pci device. Check acpi_get_parent() result and set parent device only in case of success. Found by Linux Verification Center (linuxtesting.org) with SVACE.


Затронутые продукты
SUSE Linux Enterprise Real Time 12 SP5:cluster-md-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:dlm-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:gfs2-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:kernel-devel-rt-4.12.14-10.194.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: drm/amd/display: Avoid NULL dereference of timing generator [Why & How] Check whether assigned timing generator is NULL or not before accessing its funcs to prevent NULL dereference.


Затронутые продукты
SUSE Linux Enterprise Real Time 12 SP5:cluster-md-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:dlm-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:gfs2-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:kernel-devel-rt-4.12.14-10.194.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: drm/amdgpu: Fix a null pointer access when the smc_rreg pointer is NULL In certain types of chips, such as VEGA20, reading the amdgpu_regs_smc file could result in an abnormal null pointer access when the smc_rreg pointer is NULL. Below are the steps to reproduce this issue and the corresponding exception log: 1. Navigate to the directory: /sys/kernel/debug/dri/0 2. Execute command: cat amdgpu_regs_smc 3. Exception Log:: [4005007.702554] BUG: kernel NULL pointer dereference, address: 0000000000000000 [4005007.702562] #PF: supervisor instruction fetch in kernel mode [4005007.702567] #PF: error_code(0x0010) - not-present page [4005007.702570] PGD 0 P4D 0 [4005007.702576] Oops: 0010 [#1] SMP NOPTI [4005007.702581] CPU: 4 PID: 62563 Comm: cat Tainted: G OE 5.15.0-43-generic #46-Ubunt u [4005007.702590] RIP: 0010:0x0 [4005007.702598] Code: Unable to access opcode bytes at RIP 0xffffffffffffffd6. [4005007.702600] RSP: 0018:ffffa82b46d27da0 EFLAGS: 00010206 [4005007.702605] RAX: 0000000000000000 RBX: 0000000000000000 RCX: ffffa82b46d27e68 [4005007.702609] RDX: 0000000000000001 RSI: 0000000000000000 RDI: ffff9940656e0000 [4005007.702612] RBP: ffffa82b46d27dd8 R08: 0000000000000000 R09: ffff994060c07980 [4005007.702615] R10: 0000000000020000 R11: 0000000000000000 R12: 00007f5e06753000 [4005007.702618] R13: ffff9940656e0000 R14: ffffa82b46d27e68 R15: 00007f5e06753000 [4005007.702622] FS: 00007f5e0755b740(0000) GS:ffff99479d300000(0000) knlGS:0000000000000000 [4005007.702626] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [4005007.702629] CR2: ffffffffffffffd6 CR3: 00000003253fc000 CR4: 00000000003506e0 [4005007.702633] Call Trace: [4005007.702636] <TASK> [4005007.702640] amdgpu_debugfs_regs_smc_read+0xb0/0x120 [amdgpu] [4005007.703002] full_proxy_read+0x5c/0x80 [4005007.703011] vfs_read+0x9f/0x1a0 [4005007.703019] ksys_read+0x67/0xe0 [4005007.703023] __x64_sys_read+0x19/0x20 [4005007.703028] do_syscall_64+0x5c/0xc0 [4005007.703034] ? do_user_addr_fault+0x1e3/0x670 [4005007.703040] ? exit_to_user_mode_prepare+0x37/0xb0 [4005007.703047] ? irqentry_exit_to_user_mode+0x9/0x20 [4005007.703052] ? irqentry_exit+0x19/0x30 [4005007.703057] ? exc_page_fault+0x89/0x160 [4005007.703062] ? asm_exc_page_fault+0x8/0x30 [4005007.703068] entry_SYSCALL_64_after_hwframe+0x44/0xae [4005007.703075] RIP: 0033:0x7f5e07672992 [4005007.703079] Code: c0 e9 b2 fe ff ff 50 48 8d 3d fa b2 0c 00 e8 c5 1d 02 00 0f 1f 44 00 00 f3 0f 1e fa 64 8b 04 25 18 00 00 00 85 c0 75 10 0f 05 <48> 3d 00 f0 ff ff 77 56 c3 0f 1f 44 00 00 48 83 e c 28 48 89 54 24 [4005007.703083] RSP: 002b:00007ffe03097898 EFLAGS: 00000246 ORIG_RAX: 0000000000000000 [4005007.703088] RAX: ffffffffffffffda RBX: 0000000000020000 RCX: 00007f5e07672992 [4005007.703091] RDX: 0000000000020000 RSI: 00007f5e06753000 RDI: 0000000000000003 [4005007.703094] RBP: 00007f5e06753000 R08: 00007f5e06752010 R09: 00007f5e06752010 [4005007.703096] R10: 0000000000000022 R11: 0000000000000246 R12: 0000000000022000 [4005007.703099] R13: 0000000000000003 R14: 0000000000020000 R15: 0000000000020000 [4005007.703105] </TASK> [4005007.703107] Modules linked in: nf_tables libcrc32c nfnetlink algif_hash af_alg binfmt_misc nls_ iso8859_1 ipmi_ssif ast intel_rapl_msr intel_rapl_common drm_vram_helper drm_ttm_helper amd64_edac t tm edac_mce_amd kvm_amd ccp mac_hid k10temp kvm acpi_ipmi ipmi_si rapl sch_fq_codel ipmi_devintf ipm i_msghandler msr parport_pc ppdev lp parport mtd pstore_blk efi_pstore ramoops pstore_zone reed_solo mon ip_tables x_tables autofs4 ib_uverbs ib_core amdgpu(OE) amddrm_ttm_helper(OE) amdttm(OE) iommu_v 2 amd_sched(OE) amdkcl(OE) drm_kms_helper syscopyarea sysfillrect sysimgblt fb_sys_fops cec rc_core drm igb ahci xhci_pci libahci i2c_piix4 i2c_algo_bit xhci_pci_renesas dca [4005007.703184] CR2: 0000000000000000 [4005007.703188] ---[ en ---truncated---


Затронутые продукты
SUSE Linux Enterprise Real Time 12 SP5:cluster-md-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:dlm-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:gfs2-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:kernel-devel-rt-4.12.14-10.194.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: drm/amd: Fix UBSAN array-index-out-of-bounds for SMU7 For pptable structs that use flexible array sizes, use flexible arrays.


Затронутые продукты
SUSE Linux Enterprise Real Time 12 SP5:cluster-md-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:dlm-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:gfs2-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:kernel-devel-rt-4.12.14-10.194.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: drm/amd: Fix UBSAN array-index-out-of-bounds for Polaris and Tonga For pptable structs that use flexible array sizes, use flexible arrays.


Затронутые продукты
SUSE Linux Enterprise Real Time 12 SP5:cluster-md-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:dlm-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:gfs2-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:kernel-devel-rt-4.12.14-10.194.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: llc: Drop support for ETH_P_TR_802_2. syzbot reported an uninit-value bug below. [0] llc supports ETH_P_802_2 (0x0004) and used to support ETH_P_TR_802_2 (0x0011), and syzbot abused the latter to trigger the bug. write$tun(r0, &(0x7f0000000040)={@val={0x0, 0x11}, @val, @mpls={[], @llc={@snap={0xaa, 0x1, ')', "90e5dd"}}}}, 0x16) llc_conn_handler() initialises local variables {saddr,daddr}.mac based on skb in llc_pdu_decode_sa()/llc_pdu_decode_da() and passes them to __llc_lookup(). However, the initialisation is done only when skb->protocol is htons(ETH_P_802_2), otherwise, __llc_lookup_established() and __llc_lookup_listener() will read garbage. The missing initialisation existed prior to commit 211ed865108e ("net: delete all instances of special processing for token ring"). It removed the part to kick out the token ring stuff but forgot to close the door allowing ETH_P_TR_802_2 packets to sneak into llc_rcv(). Let's remove llc_tr_packet_type and complete the deprecation. [0]: BUG: KMSAN: uninit-value in __llc_lookup_established+0xe9d/0xf90 __llc_lookup_established+0xe9d/0xf90 __llc_lookup net/llc/llc_conn.c:611 [inline] llc_conn_handler+0x4bd/0x1360 net/llc/llc_conn.c:791 llc_rcv+0xfbb/0x14a0 net/llc/llc_input.c:206 __netif_receive_skb_one_core net/core/dev.c:5527 [inline] __netif_receive_skb+0x1a6/0x5a0 net/core/dev.c:5641 netif_receive_skb_internal net/core/dev.c:5727 [inline] netif_receive_skb+0x58/0x660 net/core/dev.c:5786 tun_rx_batched+0x3ee/0x980 drivers/net/tun.c:1555 tun_get_user+0x53af/0x66d0 drivers/net/tun.c:2002 tun_chr_write_iter+0x3af/0x5d0 drivers/net/tun.c:2048 call_write_iter include/linux/fs.h:2020 [inline] new_sync_write fs/read_write.c:491 [inline] vfs_write+0x8ef/0x1490 fs/read_write.c:584 ksys_write+0x20f/0x4c0 fs/read_write.c:637 __do_sys_write fs/read_write.c:649 [inline] __se_sys_write fs/read_write.c:646 [inline] __x64_sys_write+0x93/0xd0 fs/read_write.c:646 do_syscall_x64 arch/x86/entry/common.c:51 [inline] do_syscall_64+0x44/0x110 arch/x86/entry/common.c:82 entry_SYSCALL_64_after_hwframe+0x63/0x6b Local variable daddr created at: llc_conn_handler+0x53/0x1360 net/llc/llc_conn.c:783 llc_rcv+0xfbb/0x14a0 net/llc/llc_input.c:206 CPU: 1 PID: 5004 Comm: syz-executor994 Not tainted 6.6.0-syzkaller-14500-g1c41041124bd #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 10/09/2023


Затронутые продукты
SUSE Linux Enterprise Real Time 12 SP5:cluster-md-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:dlm-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:gfs2-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:kernel-devel-rt-4.12.14-10.194.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: llc: make llc_ui_sendmsg() more robust against bonding changes syzbot was able to trick llc_ui_sendmsg(), allocating an skb with no headroom, but subsequently trying to push 14 bytes of Ethernet header [1] Like some others, llc_ui_sendmsg() releases the socket lock before calling sock_alloc_send_skb(). Then it acquires it again, but does not redo all the sanity checks that were performed. This fix: - Uses LL_RESERVED_SPACE() to reserve space. - Check all conditions again after socket lock is held again. - Do not account Ethernet header for mtu limitation. [1] skbuff: skb_under_panic: text:ffff800088baa334 len:1514 put:14 head:ffff0000c9c37000 data:ffff0000c9c36ff2 tail:0x5dc end:0x6c0 dev:bond0 kernel BUG at net/core/skbuff.c:193 ! Internal error: Oops - BUG: 00000000f2000800 [#1] PREEMPT SMP Modules linked in: CPU: 0 PID: 6875 Comm: syz-executor.0 Not tainted 6.7.0-rc8-syzkaller-00101-g0802e17d9aca-dirty #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 11/17/2023 pstate: 60400005 (nZCv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--) pc : skb_panic net/core/skbuff.c:189 [inline] pc : skb_under_panic+0x13c/0x140 net/core/skbuff.c:203 lr : skb_panic net/core/skbuff.c:189 [inline] lr : skb_under_panic+0x13c/0x140 net/core/skbuff.c:203 sp : ffff800096f97000 x29: ffff800096f97010 x28: ffff80008cc8d668 x27: dfff800000000000 x26: ffff0000cb970c90 x25: 00000000000005dc x24: ffff0000c9c36ff2 x23: ffff0000c9c37000 x22: 00000000000005ea x21: 00000000000006c0 x20: 000000000000000e x19: ffff800088baa334 x18: 1fffe000368261ce x17: ffff80008e4ed000 x16: ffff80008a8310f8 x15: 0000000000000001 x14: 1ffff00012df2d58 x13: 0000000000000000 x12: 0000000000000000 x11: 0000000000000001 x10: 0000000000ff0100 x9 : e28a51f1087e8400 x8 : e28a51f1087e8400 x7 : ffff80008028f8d0 x6 : 0000000000000000 x5 : 0000000000000001 x4 : 0000000000000001 x3 : ffff800082b78714 x2 : 0000000000000001 x1 : 0000000100000000 x0 : 0000000000000089 Call trace: skb_panic net/core/skbuff.c:189 [inline] skb_under_panic+0x13c/0x140 net/core/skbuff.c:203 skb_push+0xf0/0x108 net/core/skbuff.c:2451 eth_header+0x44/0x1f8 net/ethernet/eth.c:83 dev_hard_header include/linux/netdevice.h:3188 [inline] llc_mac_hdr_init+0x110/0x17c net/llc/llc_output.c:33 llc_sap_action_send_xid_c+0x170/0x344 net/llc/llc_s_ac.c:85 llc_exec_sap_trans_actions net/llc/llc_sap.c:153 [inline] llc_sap_next_state net/llc/llc_sap.c:182 [inline] llc_sap_state_process+0x1ec/0x774 net/llc/llc_sap.c:209 llc_build_and_send_xid_pkt+0x12c/0x1c0 net/llc/llc_sap.c:270 llc_ui_sendmsg+0x7bc/0xb1c net/llc/af_llc.c:997 sock_sendmsg_nosec net/socket.c:730 [inline] __sock_sendmsg net/socket.c:745 [inline] sock_sendmsg+0x194/0x274 net/socket.c:767 splice_to_socket+0x7cc/0xd58 fs/splice.c:881 do_splice_from fs/splice.c:933 [inline] direct_splice_actor+0xe4/0x1c0 fs/splice.c:1142 splice_direct_to_actor+0x2a0/0x7e4 fs/splice.c:1088 do_splice_direct+0x20c/0x348 fs/splice.c:1194 do_sendfile+0x4bc/0xc70 fs/read_write.c:1254 __do_sys_sendfile64 fs/read_write.c:1322 [inline] __se_sys_sendfile64 fs/read_write.c:1308 [inline] __arm64_sys_sendfile64+0x160/0x3b4 fs/read_write.c:1308 __invoke_syscall arch/arm64/kernel/syscall.c:37 [inline] invoke_syscall+0x98/0x2b8 arch/arm64/kernel/syscall.c:51 el0_svc_common+0x130/0x23c arch/arm64/kernel/syscall.c:136 do_el0_svc+0x48/0x58 arch/arm64/kernel/syscall.c:155 el0_svc+0x54/0x158 arch/arm64/kernel/entry-common.c:678 el0t_64_sync_handler+0x84/0xfc arch/arm64/kernel/entry-common.c:696 el0t_64_sync+0x190/0x194 arch/arm64/kernel/entry.S:595 Code: aa1803e6 aa1903e7 a90023f5 94792f6a (d4210000)


Затронутые продукты
SUSE Linux Enterprise Real Time 12 SP5:cluster-md-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:dlm-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:gfs2-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:kernel-devel-rt-4.12.14-10.194.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: dm: call the resume method on internal suspend There is this reported crash when experimenting with the lvm2 testsuite. The list corruption is caused by the fact that the postsuspend and resume methods were not paired correctly; there were two consecutive calls to the origin_postsuspend function. The second call attempts to remove the "hash_list" entry from a list, while it was already removed by the first call. Fix __dm_internal_resume so that it calls the preresume and resume methods of the table's targets. If a preresume method of some target fails, we are in a tricky situation. We can't return an error because dm_internal_resume isn't supposed to return errors. We can't return success, because then the "resume" and "postsuspend" methods would not be paired correctly. So, we set the DMF_SUSPENDED flag and we fake normal suspend - it may confuse userspace tools, but it won't cause a kernel crash. ------------[ cut here ]------------ kernel BUG at lib/list_debug.c:56! invalid opcode: 0000 [#1] PREEMPT SMP CPU: 1 PID: 8343 Comm: dmsetup Not tainted 6.8.0-rc6 #4 Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.14.0-2 04/01/2014 RIP: 0010:__list_del_entry_valid_or_report+0x77/0xc0 <snip> RSP: 0018:ffff8881b831bcc0 EFLAGS: 00010282 RAX: 000000000000004e RBX: ffff888143b6eb80 RCX: 0000000000000000 RDX: 0000000000000001 RSI: ffffffff819053d0 RDI: 00000000ffffffff RBP: ffff8881b83a3400 R08: 00000000fffeffff R09: 0000000000000058 R10: 0000000000000000 R11: ffffffff81a24080 R12: 0000000000000001 R13: ffff88814538e000 R14: ffff888143bc6dc0 R15: ffffffffa02e4bb0 FS: 00000000f7c0f780(0000) GS:ffff8893f0a40000(0000) knlGS:0000000000000000 CS: 0010 DS: 002b ES: 002b CR0: 0000000080050033 CR2: 0000000057fb5000 CR3: 0000000143474000 CR4: 00000000000006b0 Call Trace: <TASK> ? die+0x2d/0x80 ? do_trap+0xeb/0xf0 ? __list_del_entry_valid_or_report+0x77/0xc0 ? do_error_trap+0x60/0x80 ? __list_del_entry_valid_or_report+0x77/0xc0 ? exc_invalid_op+0x49/0x60 ? __list_del_entry_valid_or_report+0x77/0xc0 ? asm_exc_invalid_op+0x16/0x20 ? table_deps+0x1b0/0x1b0 [dm_mod] ? __list_del_entry_valid_or_report+0x77/0xc0 origin_postsuspend+0x1a/0x50 [dm_snapshot] dm_table_postsuspend_targets+0x34/0x50 [dm_mod] dm_suspend+0xd8/0xf0 [dm_mod] dev_suspend+0x1f2/0x2f0 [dm_mod] ? table_deps+0x1b0/0x1b0 [dm_mod] ctl_ioctl+0x300/0x5f0 [dm_mod] dm_compat_ctl_ioctl+0x7/0x10 [dm_mod] __x64_compat_sys_ioctl+0x104/0x170 do_syscall_64+0x184/0x1b0 entry_SYSCALL_64_after_hwframe+0x46/0x4e RIP: 0033:0xf7e6aead <snip> ---[ end trace 0000000000000000 ]---


Затронутые продукты
SUSE Linux Enterprise Real Time 12 SP5:cluster-md-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:dlm-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:gfs2-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:kernel-devel-rt-4.12.14-10.194.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: dm snapshot: fix lockup in dm_exception_table_exit There was reported lockup when we exit a snapshot with many exceptions. Fix this by adding "cond_resched" to the loop that frees the exceptions.


Затронутые продукты
SUSE Linux Enterprise Real Time 12 SP5:cluster-md-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:dlm-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:gfs2-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:kernel-devel-rt-4.12.14-10.194.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: soc: fsl: qbman: Use raw spinlock for cgr_lock smp_call_function always runs its callback in hard IRQ context, even on PREEMPT_RT, where spinlocks can sleep. So we need to use a raw spinlock for cgr_lock to ensure we aren't waiting on a sleeping task. Although this bug has existed for a while, it was not apparent until commit ef2a8d5478b9 ("net: dpaa: Adjust queue depth on rate change") which invokes smp_call_function_single via qman_update_cgr_safe every time a link goes up or down.


Затронутые продукты
SUSE Linux Enterprise Real Time 12 SP5:cluster-md-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:dlm-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:gfs2-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:kernel-devel-rt-4.12.14-10.194.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: wifi: libertas: fix some memleaks in lbs_allocate_cmd_buffer() In the for statement of lbs_allocate_cmd_buffer(), if the allocation of cmdarray[i].cmdbuf fails, both cmdarray and cmdarray[i].cmdbuf needs to be freed. Otherwise, there will be memleaks in lbs_allocate_cmd_buffer().


Затронутые продукты
SUSE Linux Enterprise Real Time 12 SP5:cluster-md-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:dlm-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:gfs2-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:kernel-devel-rt-4.12.14-10.194.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: dyndbg: fix old BUG_ON in >control parser Fix a BUG_ON from 2009. Even if it looks "unreachable" (I didn't really look), lets make sure by removing it, doing pr_err and return -EINVAL instead.


Затронутые продукты
SUSE Linux Enterprise Real Time 12 SP5:cluster-md-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:dlm-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:gfs2-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:kernel-devel-rt-4.12.14-10.194.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: drm/arm/malidp: fix a possible null pointer dereference In malidp_mw_connector_reset, new memory is allocated with kzalloc, but no check is performed. In order to prevent null pointer dereferencing, ensure that mw_state is checked before calling __drm_atomic_helper_connector_reset.


Затронутые продукты
SUSE Linux Enterprise Real Time 12 SP5:cluster-md-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:dlm-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:gfs2-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:kernel-devel-rt-4.12.14-10.194.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: wifi: nl80211: don't free NULL coalescing rule If the parsing fails, we can dereference a NULL pointer here.


Затронутые продукты
SUSE Linux Enterprise Real Time 12 SP5:cluster-md-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:dlm-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:gfs2-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:kernel-devel-rt-4.12.14-10.194.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: md: fix resync softlockup when bitmap size is less than array size Is is reported that for dm-raid10, lvextend + lvchange --syncaction will trigger following softlockup: kernel:watchdog: BUG: soft lockup - CPU#3 stuck for 26s! [mdX_resync:6976] CPU: 7 PID: 3588 Comm: mdX_resync Kdump: loaded Not tainted 6.9.0-rc4-next-20240419 #1 RIP: 0010:_raw_spin_unlock_irq+0x13/0x30 Call Trace: <TASK> md_bitmap_start_sync+0x6b/0xf0 raid10_sync_request+0x25c/0x1b40 [raid10] md_do_sync+0x64b/0x1020 md_thread+0xa7/0x170 kthread+0xcf/0x100 ret_from_fork+0x30/0x50 ret_from_fork_asm+0x1a/0x30 And the detailed process is as follows: md_do_sync j = mddev->resync_min while (j < max_sectors) sectors = raid10_sync_request(mddev, j, &skipped) if (!md_bitmap_start_sync(..., &sync_blocks)) // md_bitmap_start_sync set sync_blocks to 0 return sync_blocks + sectors_skippe; // sectors = 0; j += sectors; // j never change Root cause is that commit 301867b1c168 ("md/raid10: check slab-out-of-bounds in md_bitmap_get_counter") return early from md_bitmap_get_counter(), without setting returned blocks. Fix this problem by always set returned blocks from md_bitmap_get_counter"(), as it used to be. Noted that this patch just fix the softlockup problem in kernel, the case that bitmap size doesn't match array size still need to be fixed.


Затронутые продукты
SUSE Linux Enterprise Real Time 12 SP5:cluster-md-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:dlm-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:gfs2-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:kernel-devel-rt-4.12.14-10.194.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: usb-storage: alauda: Check whether the media is initialized The member "uzonesize" of struct alauda_info will remain 0 if alauda_init_media() fails, potentially causing divide errors in alauda_read_data() and alauda_write_lba(). - Add a member "media_initialized" to struct alauda_info. - Change a condition in alauda_check_media() to ensure the first initialization. - Add an error check for the return value of alauda_init_media().


Затронутые продукты
SUSE Linux Enterprise Real Time 12 SP5:cluster-md-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:dlm-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:gfs2-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:kernel-devel-rt-4.12.14-10.194.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: net/9p: fix uninit-value in p9_client_rpc() Syzbot with the help of KMSAN reported the following error: BUG: KMSAN: uninit-value in trace_9p_client_res include/trace/events/9p.h:146 [inline] BUG: KMSAN: uninit-value in p9_client_rpc+0x1314/0x1340 net/9p/client.c:754 trace_9p_client_res include/trace/events/9p.h:146 [inline] p9_client_rpc+0x1314/0x1340 net/9p/client.c:754 p9_client_create+0x1551/0x1ff0 net/9p/client.c:1031 v9fs_session_init+0x1b9/0x28e0 fs/9p/v9fs.c:410 v9fs_mount+0xe2/0x12b0 fs/9p/vfs_super.c:122 legacy_get_tree+0x114/0x290 fs/fs_context.c:662 vfs_get_tree+0xa7/0x570 fs/super.c:1797 do_new_mount+0x71f/0x15e0 fs/namespace.c:3352 path_mount+0x742/0x1f20 fs/namespace.c:3679 do_mount fs/namespace.c:3692 [inline] __do_sys_mount fs/namespace.c:3898 [inline] __se_sys_mount+0x725/0x810 fs/namespace.c:3875 __x64_sys_mount+0xe4/0x150 fs/namespace.c:3875 do_syscall_64+0xd5/0x1f0 entry_SYSCALL_64_after_hwframe+0x6d/0x75 Uninit was created at: __alloc_pages+0x9d6/0xe70 mm/page_alloc.c:4598 __alloc_pages_node include/linux/gfp.h:238 [inline] alloc_pages_node include/linux/gfp.h:261 [inline] alloc_slab_page mm/slub.c:2175 [inline] allocate_slab mm/slub.c:2338 [inline] new_slab+0x2de/0x1400 mm/slub.c:2391 ___slab_alloc+0x1184/0x33d0 mm/slub.c:3525 __slab_alloc mm/slub.c:3610 [inline] __slab_alloc_node mm/slub.c:3663 [inline] slab_alloc_node mm/slub.c:3835 [inline] kmem_cache_alloc+0x6d3/0xbe0 mm/slub.c:3852 p9_tag_alloc net/9p/client.c:278 [inline] p9_client_prepare_req+0x20a/0x1770 net/9p/client.c:641 p9_client_rpc+0x27e/0x1340 net/9p/client.c:688 p9_client_create+0x1551/0x1ff0 net/9p/client.c:1031 v9fs_session_init+0x1b9/0x28e0 fs/9p/v9fs.c:410 v9fs_mount+0xe2/0x12b0 fs/9p/vfs_super.c:122 legacy_get_tree+0x114/0x290 fs/fs_context.c:662 vfs_get_tree+0xa7/0x570 fs/super.c:1797 do_new_mount+0x71f/0x15e0 fs/namespace.c:3352 path_mount+0x742/0x1f20 fs/namespace.c:3679 do_mount fs/namespace.c:3692 [inline] __do_sys_mount fs/namespace.c:3898 [inline] __se_sys_mount+0x725/0x810 fs/namespace.c:3875 __x64_sys_mount+0xe4/0x150 fs/namespace.c:3875 do_syscall_64+0xd5/0x1f0 entry_SYSCALL_64_after_hwframe+0x6d/0x75 If p9_check_errors() fails early in p9_client_rpc(), req->rc.tag will not be properly initialized. However, trace_9p_client_res() ends up trying to print it out anyway before p9_client_rpc() finishes. Fix this issue by assigning default values to p9_fcall fields such as 'tag' and (just in case KMSAN unearths something new) 'id' during the tag allocation stage.


Затронутые продукты
SUSE Linux Enterprise Real Time 12 SP5:cluster-md-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:dlm-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:gfs2-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:kernel-devel-rt-4.12.14-10.194.1

Ссылки

Описание

In the Linux kernel, the following vulnerability has been resolved: fbdev: savage: Handle err return when savagefb_check_var failed The commit 04e5eac8f3ab("fbdev: savage: Error out if pixclock equals zero") checks the value of pixclock to avoid divide-by-zero error. However the function savagefb_probe doesn't handle the error return of savagefb_check_var. When pixclock is 0, it will cause divide-by-zero error.


Затронутые продукты
SUSE Linux Enterprise Real Time 12 SP5:cluster-md-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:dlm-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:gfs2-kmp-rt-4.12.14-10.194.1
SUSE Linux Enterprise Real Time 12 SP5:kernel-devel-rt-4.12.14-10.194.1

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