Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1000 CNY

100.0%

CVE-2024-56677— powerpc/fadump: Move fadump_cma_init to setup_arch() after initmem_init()

EPSS 0.00% · P0
Get alerts for future matching vulnerabilitiesLog in to subscribe

I. Basic Information for CVE-2024-56677

Vulnerability Information

Have questions about the vulnerability? See if Shenlong's analysis helps!
View Shenlong Deep Dive ↗

Although we use advanced large model technology, its output may still contain inaccurate or outdated information.Shenlong tries to ensure data accuracy, but please verify and judge based on the actual situation.

Vulnerability Title
powerpc/fadump: Move fadump_cma_init to setup_arch() after initmem_init()
Source: NVD (National Vulnerability Database)
Vulnerability Description
In the Linux kernel, the following vulnerability has been resolved: powerpc/fadump: Move fadump_cma_init to setup_arch() after initmem_init() During early init CMA_MIN_ALIGNMENT_BYTES can be PAGE_SIZE, since pageblock_order is still zero and it gets initialized later during initmem_init() e.g. setup_arch() -> initmem_init() -> sparse_init() -> set_pageblock_order() One such use case where this causes issue is - early_setup() -> early_init_devtree() -> fadump_reserve_mem() -> fadump_cma_init() This causes CMA memory alignment check to be bypassed in cma_init_reserved_mem(). Then later cma_activate_area() can hit a VM_BUG_ON_PAGE(pfn & ((1 << order) - 1)) if the reserved memory area was not pageblock_order aligned. Fix it by moving the fadump_cma_init() after initmem_init(), where other such cma reservations also gets called. <stack trace> ============== page: refcount:0 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x10010 flags: 0x13ffff800000000(node=1|zone=0|lastcpupid=0x7ffff) CMA raw: 013ffff800000000 5deadbeef0000100 5deadbeef0000122 0000000000000000 raw: 0000000000000000 0000000000000000 00000000ffffffff 0000000000000000 page dumped because: VM_BUG_ON_PAGE(pfn & ((1 << order) - 1)) ------------[ cut here ]------------ kernel BUG at mm/page_alloc.c:778! Call Trace: __free_one_page+0x57c/0x7b0 (unreliable) free_pcppages_bulk+0x1a8/0x2c8 free_unref_page_commit+0x3d4/0x4e4 free_unref_page+0x458/0x6d0 init_cma_reserved_pageblock+0x114/0x198 cma_init_reserved_areas+0x270/0x3e0 do_one_initcall+0x80/0x2f8 kernel_init_freeable+0x33c/0x530 kernel_init+0x34/0x26c ret_from_kernel_user_thread+0x14/0x1c
Source: NVD (National Vulnerability Database)
CVSS Information
N/A
Source: NVD (National Vulnerability Database)
Vulnerability Type
N/A
Source: NVD (National Vulnerability Database)
Vulnerability Title
Linux kernel 安全漏洞
Source: CNNVD (China National Vulnerability Database)
Vulnerability Description
Linux kernel是美国Linux基金会的开源操作系统Linux所使用的内核。 Linux kernel存在安全漏洞,该漏洞源于powerpc/fadump模块中fadmump_cma_init位置不当导致的CMA内存对齐问题。
Source: CNNVD (China National Vulnerability Database)
CVSS Information
N/A
Source: CNNVD (China National Vulnerability Database)
Vulnerability Type
N/A
Source: CNNVD (China National Vulnerability Database)

Affected Products

VendorProductAffected VersionsCPESubscribe
LinuxLinux 11ac3e87ce09c27f4587a8c4fe0829d814021a82 ~ aabef6301dcf410dfd2b8759cd413b2a003c7e3f -
LinuxLinux 5.19 -

II. Public POCs for CVE-2024-56677

#POC DescriptionSource LinkShenlong Link
AI-Generated POCPremium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2024-56677

登录查看更多情报信息。

Same Patch Batch · Linux · 2024-12-28 · 32 CVEs total

CVE-2024-56692f2fs: fix to do sanity check on node blkaddr in truncate_node()
CVE-2024-56708EDAC/igen6: Avoid segmentation fault on module unload
CVE-2024-56707octeontx2-pf: handle otx2_mbox_get_rsp errors in otx2_dmac_flt.c
CVE-2024-56705media: atomisp: Add check for rgby_data memory allocation failure
CVE-2024-56706s390/cpum_sf: Fix and protect memory allocation of SDBs with mutex
CVE-2024-567049p/xen: fix release of IRQ
CVE-2024-56703ipv6: Fix soft lockups in fib6_select_path under high next hop churn
CVE-2024-56701powerpc/pseries: Fix dtl_access_lock to be a rw_semaphore
CVE-2024-56702bpf: Mark raw_tp arguments with PTR_MAYBE_NULL
CVE-2024-56700media: wl128x: Fix atomicity violation in fmc_send_cmd()
CVE-2024-56699s390/pci: Fix potential double remove of hotplug slot
CVE-2024-56698usb: dwc3: gadget: Fix looping of queued SG entries
CVE-2024-56697drm/amdgpu: Fix the memory allocation issue in amdgpu_discovery_get_nps_info()
CVE-2024-56696ALSA: core: Fix possible NULL dereference caused by kunit_kzalloc()
CVE-2024-56694bpf: fix recursive lock when verdict program return SK_PASS
CVE-2024-56695drm/amdkfd: Use dynamic allocation for CU occupancy array in 'kfd_get_cu_occupancy()'
CVE-2024-56676thermal: testing: Initialize some variables annoteded with _free()
CVE-2024-56693brd: defer automatic disk creation until module initialization succeeds
CVE-2024-56691mfd: intel_soc_pmic_bxtwc: Use IRQ domain for USB Type-C device
CVE-2024-56689PCI: endpoint: epf-mhi: Avoid NULL dereference if DT lacks 'mmio'

Showing top 20 of 32 CVEs. View all on vendor page &rarr; →

IV. Related Vulnerabilities

V. Comments for CVE-2024-56677

No comments yet


Leave a comment