[<prev] [next>] [day] [month] [year] [list]
Message-ID: <2025022616-CVE-2022-49625-2fa2@gregkh>
Date: Wed, 26 Feb 2025 03:23:08 +0100
From: Greg Kroah-Hartman <gregkh@...uxfoundation.org>
To: linux-cve-announce@...r.kernel.org
Cc: Greg Kroah-Hartman <gregkh@...uxfoundation.org>
Subject: CVE-2022-49625: sfc: fix kernel panic when creating VF
Description
===========
In the Linux kernel, the following vulnerability has been resolved:
sfc: fix kernel panic when creating VF
When creating VFs a kernel panic can happen when calling to
efx_ef10_try_update_nic_stats_vf.
When releasing a DMA coherent buffer, sometimes, I don't know in what
specific circumstances, it has to unmap memory with vunmap. It is
disallowed to do that in IRQ context or with BH disabled. Otherwise, we
hit this line in vunmap, causing the crash:
BUG_ON(in_interrupt());
This patch reenables BH to release the buffer.
Log messages when the bug is hit:
kernel BUG at mm/vmalloc.c:2727!
invalid opcode: 0000 [#1] PREEMPT SMP NOPTI
CPU: 6 PID: 1462 Comm: NetworkManager Kdump: loaded Tainted: G I --------- --- 5.14.0-119.el9.x86_64 #1
Hardware name: Dell Inc. PowerEdge R740/06WXJT, BIOS 2.8.2 08/27/2020
RIP: 0010:vunmap+0x2e/0x30
...skip...
Call Trace:
__iommu_dma_free+0x96/0x100
efx_nic_free_buffer+0x2b/0x40 [sfc]
efx_ef10_try_update_nic_stats_vf+0x14a/0x1c0 [sfc]
efx_ef10_update_stats_vf+0x18/0x40 [sfc]
efx_start_all+0x15e/0x1d0 [sfc]
efx_net_open+0x5a/0xe0 [sfc]
__dev_open+0xe7/0x1a0
__dev_change_flags+0x1d7/0x240
dev_change_flags+0x21/0x60
...skip...
The Linux kernel CVE team has assigned CVE-2022-49625 to this issue.
Affected and fixed versions
===========================
Issue introduced in 4.2 with commit d778819609a27efd5358da8151a0ad3507243e19 and fixed in 4.9.324 with commit d9840212a9c00507347c703f4fdeda16400407e0
Issue introduced in 4.2 with commit d778819609a27efd5358da8151a0ad3507243e19 and fixed in 4.14.289 with commit b9072305270579a9d6afc9b926166231e5b1a7c8
Issue introduced in 4.2 with commit d778819609a27efd5358da8151a0ad3507243e19 and fixed in 4.19.253 with commit 82bcb730f856086f033e6c04082eb4503d4c2fa4
Issue introduced in 4.2 with commit d778819609a27efd5358da8151a0ad3507243e19 and fixed in 5.4.207 with commit da346adcf5573fd8663cabfdfe8371009629a906
Issue introduced in 4.2 with commit d778819609a27efd5358da8151a0ad3507243e19 and fixed in 5.10.132 with commit b82e4ad58a7fb72456503958a93060f87896e629
Issue introduced in 4.2 with commit d778819609a27efd5358da8151a0ad3507243e19 and fixed in 5.15.56 with commit 68e5f32f0de9594629ff9e599294d9801c6187de
Issue introduced in 4.2 with commit d778819609a27efd5358da8151a0ad3507243e19 and fixed in 5.18.13 with commit 16662524ec5da801fb78a1afcaf6e782f1cf103a
Issue introduced in 4.2 with commit d778819609a27efd5358da8151a0ad3507243e19 and fixed in 5.19 with commit ada74c5539eba06cf8b47d068f92e0b3963a9a6e
Please see https://www.kernel.org for a full list of currently supported
kernel versions by the kernel community.
Unaffected versions might change over time as fixes are backported to
older supported kernel versions. The official CVE entry at
https://cve.org/CVERecord/?id=CVE-2022-49625
will be updated if fixes are backported, please check that for the most
up to date information about this issue.
Affected files
==============
The file(s) affected by this issue are:
drivers/net/ethernet/sfc/ef10.c
Mitigation
==========
The Linux kernel CVE team recommends that you update to the latest
stable kernel version for this, and many other bugfixes. Individual
changes are never tested alone, but rather are part of a larger kernel
release. Cherry-picking individual commits is not recommended or
supported by the Linux kernel community at all. If however, updating to
the latest release is impossible, the individual changes to resolve this
issue can be found at these commits:
https://git.kernel.org/stable/c/d9840212a9c00507347c703f4fdeda16400407e0
https://git.kernel.org/stable/c/b9072305270579a9d6afc9b926166231e5b1a7c8
https://git.kernel.org/stable/c/82bcb730f856086f033e6c04082eb4503d4c2fa4
https://git.kernel.org/stable/c/da346adcf5573fd8663cabfdfe8371009629a906
https://git.kernel.org/stable/c/b82e4ad58a7fb72456503958a93060f87896e629
https://git.kernel.org/stable/c/68e5f32f0de9594629ff9e599294d9801c6187de
https://git.kernel.org/stable/c/16662524ec5da801fb78a1afcaf6e782f1cf103a
https://git.kernel.org/stable/c/ada74c5539eba06cf8b47d068f92e0b3963a9a6e
Powered by blists - more mailing lists