Description (CNA)
In the Linux kernel, the following vulnerability has been resolved: afs: Remove setting of AS_RELEASE_ALWAYS for symlinks and mountpoints Regular AFS files correctly use afs_file_aops which have release_folio set as netfs_release_folio, so AS_RELEASE_ALWAYS is valid for them when fscache is enabled (set via afs_vnode_set_cache()). Symlinks and mountpoints in AFS use afs_dir_aops, which does not provide a release_folio callback. However, afs_apply_status() unconditionally calls mapping_set_release_always() for these. In such case when memory management code attempts to release folios, filemap_release_folio() checks folio_needs_release() which returns true due to AS_RELEASE_ALWAYS being set. Since there is no release_folio callback, it falls through to try_to_free_buffers(), which at present expects buffer_heads to be not null. For symlinks and mountpoints without buffer_heads, this causes pointer dereference. [dh: Added more bits that were missed]
Affected (CNA)
| Vendor / product | Versions |
|---|---|
| Linux / Linux | affected eae9e78951bb02a7b94a9adef6e981413d13c564 before 9d6b0f6d437e2f8350e08678e5e1d20c11c364f3; affected eae9e78951bb02a7b94a9adef6e981413d13c564 before 81e985b4c3a6cbcc443fcdcd3ebda7fcc845d459 |
| Linux / Linux | affected 6.14; unaffected 0 before 6.14; unaffected 7.1.5 through 7.1.*; unaffected 7.2 through * |
CWE
No CWE identifiers supplied.