Bug 2348260 (CVE-2022-49220) - CVE-2022-49220 kernel: dax: make sure inodes are flushed before destroy cache
Summary: CVE-2022-49220 kernel: dax: make sure inodes are flushed before destroy cache
Keywords:
Status: NEW
Alias: CVE-2022-49220
Product: Security Response
Classification: Other
Component: vulnerability
Version: unspecified
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Product Security DevOps Team
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2025-02-26 03:23 UTC by OSIDB Bzimport
Modified: 2025-02-26 17:25 UTC (History)
4 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed:
Embargoed:


Attachments (Terms of Use)

Description OSIDB Bzimport 2025-02-26 03:23:12 UTC
In the Linux kernel, the following vulnerability has been resolved:

dax: make sure inodes are flushed before destroy cache

A bug can be triggered by following command

$ modprobe nd_pmem && modprobe -r nd_pmem

[   10.060014] BUG dax_cache (Not tainted): Objects remaining in dax_cache on __kmem_cache_shutdown()
[   10.060938] Slab 0x0000000085b729ac objects=9 used=1 fp=0x000000004f5ae469 flags=0x200000000010200(slab|head|node)
[   10.062433] Call Trace:
[   10.062673]  dump_stack_lvl+0x34/0x44
[   10.062865]  slab_err+0x90/0xd0
[   10.063619]  __kmem_cache_shutdown+0x13b/0x2f0
[   10.063848]  kmem_cache_destroy+0x4a/0x110
[   10.064058]  __x64_sys_delete_module+0x265/0x300

This is caused by dax_fs_exit() not flushing inodes before destroy cache.
To fix this issue, call rcu_barrier() before destroy cache.

Comment 1 Avinash Hanwate 2025-02-26 13:11:26 UTC
Upstream advisory:
https://lore.kernel.org/linux-cve-announce/2025022621-CVE-2022-49220-7247@gregkh/T

Comment 4 Avinash Hanwate 2025-02-26 17:24:43 UTC
Upstream advisory:
https://lore.kernel.org/linux-cve-announce/2025022621-CVE-2022-49220-7247@gregkh/T


Note You need to log in before you can comment on or make changes to this bug.