{"id":"DEBIAN-CVE-2024-42110","details":"In the Linux kernel, the following vulnerability has been resolved:  net: ntb_netdev: Move ntb_netdev_rx_handler() to call netif_rx() from __netif_rx()  The following is emitted when using idxd (DSA) dmanegine as the data mover for ntb_transport that ntb_netdev uses.  [74412.546922] BUG: using smp_processor_id() in preemptible [00000000] code: irq/52-idxd-por/14526 [74412.556784] caller is netif_rx_internal+0x42/0x130 [74412.562282] CPU: 6 PID: 14526 Comm: irq/52-idxd-por Not tainted 6.9.5 #5 [74412.569870] Hardware name: Intel Corporation ArcherCity/ArcherCity, BIOS EGSDCRB1.E9I.1752.P05.2402080856 02/08/2024 [74412.581699] Call Trace: [74412.584514]  \u003cTASK\u003e [74412.586933]  dump_stack_lvl+0x55/0x70 [74412.591129]  check_preemption_disabled+0xc8/0xf0 [74412.596374]  netif_rx_internal+0x42/0x130 [74412.600957]  __netif_rx+0x20/0xd0 [74412.604743]  ntb_netdev_rx_handler+0x66/0x150 [ntb_netdev] [74412.610985]  ntb_complete_rxc+0xed/0x140 [ntb_transport] [74412.617010]  ntb_rx_copy_callback+0x53/0x80 [ntb_transport] [74412.623332]  idxd_dma_complete_txd+0xe3/0x160 [idxd] [74412.628963]  idxd_wq_thread+0x1a6/0x2b0 [idxd] [74412.634046]  irq_thread_fn+0x21/0x60 [74412.638134]  ? irq_thread+0xa8/0x290 [74412.642218]  irq_thread+0x1a0/0x290 [74412.646212]  ? __pfx_irq_thread_fn+0x10/0x10 [74412.651071]  ? __pfx_irq_thread_dtor+0x10/0x10 [74412.656117]  ? __pfx_irq_thread+0x10/0x10 [74412.660686]  kthread+0x100/0x130 [74412.664384]  ? __pfx_kthread+0x10/0x10 [74412.668639]  ret_from_fork+0x31/0x50 [74412.672716]  ? __pfx_kthread+0x10/0x10 [74412.676978]  ret_from_fork_asm+0x1a/0x30 [74412.681457]  \u003c/TASK\u003e  The cause is due to the idxd driver interrupt completion handler uses threaded interrupt and the threaded handler is not hard or soft interrupt context. However __netif_rx() can only be called from interrupt context. Change the call to netif_rx() in order to allow completion via normal context for dmaengine drivers that utilize threaded irq handling.  While the following commit changed from netif_rx() to __netif_rx(), baebdf48c360 (\"net: dev: Makes sure netif_rx() can be invoked in any context.\"), the change should've been a noop instead. However, the code precedes this fix should've been using netif_rx_ni() or netif_rx_any_context().","modified":"2026-09-15T09:03:09.942367895Z","published":"2024-07-30T08:15:03.487Z","upstream":["CVE-2024-42110"],"references":[{"type":"ADVISORY","url":"https://security-tracker.debian.org/tracker/CVE-2024-42110"}],"affected":[{"package":{"name":"linux","ecosystem":"Debian:12","purl":"pkg:deb/debian/linux?arch=source&distro=bookworm"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"6.1.98-1"}]}],"versions":["6.1.27-1","6.1.37-1","6.1.38-1","6.1.38-2","6.1.38-2~bpo11+1","6.1.38-3","6.1.38-4","6.1.38-4~bpo11+1","6.1.52-1","6.1.55-1","6.1.55-1~bpo11+1","6.1.64-1","6.1.66-1","6.1.67-1","6.1.69-1","6.1.69-1~bpo11+1","6.1.76-1","6.1.76-1~bpo11+1","6.1.82-1","6.1.85-1","6.1.90-1","6.1.90-1~bpo11+1","6.1.94-1","6.1.94-1~bpo11+1"],"ecosystem_specific":{"urgency":"not yet assigned"},"database_specific":{"source":"https://storage.googleapis.com/osv-test-debian-osv/debian-cve-osv/DEBIAN-CVE-2024-42110.json"}},{"package":{"name":"linux","ecosystem":"Debian:13","purl":"pkg:deb/debian/linux?arch=source&distro=trixie"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"6.9.9-1"}]}],"ecosystem_specific":{"urgency":"not yet assigned"},"database_specific":{"source":"https://storage.googleapis.com/osv-test-debian-osv/debian-cve-osv/DEBIAN-CVE-2024-42110.json"}},{"package":{"name":"linux","ecosystem":"Debian:14","purl":"pkg:deb/debian/linux?arch=source&distro=forky"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"6.9.9-1"}]}],"ecosystem_specific":{"urgency":"not yet assigned"},"database_specific":{"source":"https://storage.googleapis.com/osv-test-debian-osv/debian-cve-osv/DEBIAN-CVE-2024-42110.json"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H"}]}