CVE-2024-57941: netfs: Fix the (non-)cancellation of copy when cache is temporarily disabled
In the Linux kernel, the following vulnerability has been resolved:
netfs: Fix the (non-)cancellation of copy when cache is temporarily disabled
When the caching for a cookie is temporarily disabled (e.g. due to a DIO write on that file), future copying to the cache for that file is disabled until all fds open on that file are closed. However, if netfslib is using the deprecated PGprivate2 method (such as is currently used by ceph), and decides it wants to copy to the cache, netfsadvancewrite() will just bail at the first check seeing that the cache stream is unavailable, and indicate that it dealt with all the content.
This means that we have no subrequests to provide notifications to drive the state machine or even to pin the request and the request just gets discarded, leaving the folios with PGprivate2 set.
Fix this by jumping directly to cancel the request if the cache is not available. That way, we don't remove mark3 from the folioqueue list and netfspgpriv2cancel() will clean up the folios.
This was found by running the generic/013 xfstest against ceph with an active cache and the "-o fsc" option passed to ceph. That would usually hang
Affected Software
Event History
Frequently Asked Questions
What is the severity of CVE-2024-57941?
CVE-2024-57941 is categorized as a low-severity vulnerability in the Linux kernel.
How do I fix CVE-2024-57941?
To mitigate CVE-2024-57941, update your Linux kernel to the latest stable version where this vulnerability has been resolved.
What impact does CVE-2024-57941 have on system performance?
CVE-2024-57941 primarily affects the caching mechanism for files, potentially leading to performance degradation during file operations.
Which versions of the Linux kernel are affected by CVE-2024-57941?
CVE-2024-57941 impacts specific versions of the Linux kernel that utilize the netfs caching mechanism.
Is CVE-2024-57941 exploitable remotely?
CVE-2024-57941 is not known to be exploitable remotely, as it relates to internal caching processes.