CVE-2024-43835

In the Linux kernel, the following vulnerability has been resolved: virtio_net: Fix napi_skb_cache_put warning After the commit bdacf3e34945 ("net: Use nested-BH locking for napi_alloc_cache.") was merged, the following warning began to appear: WARNING: CPU: 5 PID: 1 at net/core/skbuff.c:1451 napi_skb_cache_put+0x82/0x4b0 __warn+0x12f/0x340 napi_skb_cache_put+0x82/0x4b0 napi_skb_cache_put+0x82/0x4b0 report_bug+0x165/0x370 handle_bug+0x3d/0x80 exc_invalid_op+0x1a/0x50 asm_exc_invalid_op+0x1a/0x20 __free_old_xmit+0x1c8/0x510 napi_skb_cache_put+0x82/0x4b0 __free_old_xmit+0x1c8/0x510 __free_old_xmit+0x1c8/0x510 __pfx___free_old_xmit+0x10/0x10 The issue arises because virtio is assuming it's running in NAPI context even when it's not, such as in the netpoll case. To resolve this, modify virtnet_poll_tx() to only set NAPI when budget is available. Same for virtnet_poll_cleantx(), which always assumed that it was in a NAPI context.
Configurations

Configuration 1 (hide)

cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*

History

30 Oct 2024, 21:45

Type Values Removed Values Added
CWE NVD-CWE-noinfo
References () https://git.kernel.org/stable/c/19ac6f29bf64304ef04630c8ab56ecd2059d7aa1 - () https://git.kernel.org/stable/c/19ac6f29bf64304ef04630c8ab56ecd2059d7aa1 - Patch
References () https://git.kernel.org/stable/c/468a729b78895893d0e580ceea49bed8ada2a2bd - () https://git.kernel.org/stable/c/468a729b78895893d0e580ceea49bed8ada2a2bd - Patch
References () https://git.kernel.org/stable/c/6b5325f2457521bbece29499970c0117a648c620 - () https://git.kernel.org/stable/c/6b5325f2457521bbece29499970c0117a648c620 - Patch
References () https://git.kernel.org/stable/c/842a97b5e44f0c8a9fc356fe976e0e13ddcf7783 - () https://git.kernel.org/stable/c/842a97b5e44f0c8a9fc356fe976e0e13ddcf7783 - Patch
References () https://git.kernel.org/stable/c/cc7340f18e45886121c131227985d64ef666012f - () https://git.kernel.org/stable/c/cc7340f18e45886121c131227985d64ef666012f - Patch
References () https://git.kernel.org/stable/c/d3af435e8ace119e58d8e21d3d2d6a4e7c4a4baa - () https://git.kernel.org/stable/c/d3af435e8ace119e58d8e21d3d2d6a4e7c4a4baa - Patch
References () https://git.kernel.org/stable/c/f5e9a22d19bb98a7e86034db85eb295e94187caa - () https://git.kernel.org/stable/c/f5e9a22d19bb98a7e86034db85eb295e94187caa - Patch
References () https://git.kernel.org/stable/c/f8321fa75102246d7415a6af441872f6637c93ab - () https://git.kernel.org/stable/c/f8321fa75102246d7415a6af441872f6637c93ab - Patch
CVSS v2 : unknown
v3 : unknown
v2 : unknown
v3 : 5.5
CPE cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
First Time Linux
Linux linux Kernel

12 Sep 2024, 12:15

Type Values Removed Values Added
References
  • () https://git.kernel.org/stable/c/19ac6f29bf64304ef04630c8ab56ecd2059d7aa1 -
  • () https://git.kernel.org/stable/c/842a97b5e44f0c8a9fc356fe976e0e13ddcf7783 -
  • () https://git.kernel.org/stable/c/cc7340f18e45886121c131227985d64ef666012f -
  • () https://git.kernel.org/stable/c/d3af435e8ace119e58d8e21d3d2d6a4e7c4a4baa -

08 Sep 2024, 08:15

Type Values Removed Values Added
References
  • () https://git.kernel.org/stable/c/6b5325f2457521bbece29499970c0117a648c620 -
  • () https://git.kernel.org/stable/c/f5e9a22d19bb98a7e86034db85eb295e94187caa -

19 Aug 2024, 12:59

Type Values Removed Values Added
Summary
  • (es) En el kernel de Linux, se resolvió la siguiente vulnerabilidad: virtio_net: corrige la advertencia de napi_skb_cache_put Después de que se fusionó el commit bdacf3e34945 ("net: Use bloqueo de BH anidado para napi_alloc_cache."), comenzó a aparecer la siguiente advertencia: ADVERTENCIA: CPU: 5 PID: 1 en net/core/skbuff.c:1451 napi_skb_cache_put+0x82/0x4b0 __warn+0x12f/0x340 napi_skb_cache_put+0x82/0x4b0 napi_skb_cache_put+0x82/0x4b0 report_bug+0x165/0x370 x80 exc_invalid_op+0x1a/0x50 asm_exc_invalid_op+ 0x1a/0x20 __free_old_xmit+0x1c8/0x510 napi_skb_cache_put+0x82/0x4b0 __free_old_xmit+0x1c8/0x510 __free_old_xmit+0x1c8/0x510 __pfx___free_old_xmit+0x10/0x10 El problema surge porque virtio asumiendo que se está ejecutando en el contexto NAPI incluso cuando no lo es, como en netpoll caso. Para resolver esto, modifique virtnet_poll_tx() para configurar NAPI solo cuando haya presupuesto disponible. Lo mismo ocurre con virtnet_poll_cleantx(), que siempre asumió que estaba en un contexto NAPI.

17 Aug 2024, 10:15

Type Values Removed Values Added
New CVE

Information

Published : 2024-08-17 10:15

Updated : 2024-10-30 21:45


NVD link : CVE-2024-43835

Mitre link : CVE-2024-43835

CVE.ORG link : CVE-2024-43835


JSON object : View

Products Affected

linux

  • linux_kernel