• CVE-2024-36925

发布时间: 2024年7月4日

修改时间: 2024年7月4日

概要

In the Linux kernel, the following vulnerability has been resolved:swiotlb: initialise restricted pool list_head when SWIOTLB_DYNAMIC=yUsing restricted DMA pools (CONFIG_DMA_RESTRICTED_POOL=y) in conjunctionwith dynamic SWIOTLB (CONFIG_SWIOTLB_DYNAMIC=y) leads to the followingcrash when initialising the restricted pools at boot-time: | Unable to handle kernel NULL pointer dereference at virtual address 0000000000000008 | Internal error: Oops: 0000000096000005 [#1] PREEMPT SMP | pc : rmem_swiotlb_device_init+0xfc/0x1ec | lr : rmem_swiotlb_device_init+0xf0/0x1ec | Call trace: | rmem_swiotlb_device_init+0xfc/0x1ec | of_reserved_mem_device_init_by_idx+0x18c/0x238 | of_dma_configure_id+0x31c/0x33c | platform_dma_configure+0x34/0x80faddr2line reveals that the crash is in the list validation code: include/linux/list.h:83 include/linux/rculist.h:79 include/linux/rculist.h:106 kernel/dma/swiotlb.c:306 kernel/dma/swiotlb.c:1695because add_mem_pool() is trying to list_add_rcu() to a NULL mem->pools .Fix the crash by initialising the mem->pools list_head inrmem_swiotlb_device_init() before calling add_mem_pool().

CVSS v3 指标

NVD openEuler
CVSS评分 5.5 5.5
Attack Vector Local Local
Attack Complexity Low Low
Privileges Required Low Low
User Interaction None None
Scope Unchanged Unchanged
Confidentiality None None
Integrity None None
Availability High High

安全公告

公告名 概要 发布时间
KylinSec-SA-2024-3014 In the Linux kernel, the following vulnerability has been resolved:swiotlb: initialise restricted pool list_head when SWIOTLB_DYNAMIC=yUsing restricted DMA pools (CONFIG_DMA_RESTRICTED_POOL=y) in conjunctionwith dynamic SWIOTLB (CONFIG_SWIOTLB_DYNAMIC=y) leads to the followingcrash when initialising the restricted pools at boot-time: | Unable to handle kernel NULL pointer dereference at virtual address 0000000000000008 | Internal error: Oops: 0000000096000005 [#1] PREEMPT SMP | pc : rmem_swiotlb_device_init+0xfc/0x1ec | lr : rmem_swiotlb_device_init+0xf0/0x1ec | Call trace: | rmem_swiotlb_device_init+0xfc/0x1ec | of_reserved_mem_device_init_by_idx+0x18c/0x238 | of_dma_configure_id+0x31c/0x33c | platform_dma_configure+0x34/0x80faddr2line reveals that the crash is in the list validation code: include/linux/list.h:83 include/linux/rculist.h:79 include/linux/rculist.h:106 kernel/dma/swiotlb.c:306 kernel/dma/swiotlb.c:1695because add_mem_pool() is trying to list_add_rcu() to a NULL mem->pools .Fix the crash by initialising the mem->pools list_head inrmem_swiotlb_device_init() before calling add_mem_pool(). 2024年7月4日

影响产品

产品 状态
KY3.4-5 kernel Unaffected
KY3.5.2 kernel Unaffected
KY3.5.3 kernel Unaffected
V6 kernel Unaffected