Description (CNA)
In the Linux kernel, the following vulnerability has been resolved: erofs: fix metabuf leak in inode xattr initialization commit bb88e8da0025 ("erofs: use meta buffers for xattr operations") converted xattr operations to use on-stack erofs_buf instances. erofs_init_inode_xattrs() uses such a metabuf while reading the inline xattr header and shared xattr id array. Some error paths after erofs_read_metabuf() leave through out_unlock without dropping the metabuf, so the folio reference can leak. Consolidate the cleanup at out_unlock. erofs_put_metabuf() is a no-op if no folio has been acquired, and this keeps all paths after taking EROFS_I_BL_XATTR_BIT covered by a single cleanup site.
Affected (CNA)
| Vendor / product | Versions |
|---|---|
| Linux / Linux | affected bb88e8da00253bea0e7f0f4cdfd7910572d7799f before 3812cfe6cb0a5988df4fedcdaf9aab677b9cca61; affected bb88e8da00253bea0e7f0f4cdfd7910572d7799f before e4a552e0b6413c1af2e140b5bc14bb849b411b57; affected bb88e8da00253bea0e7f0f4cdfd7910572d7799f before fcb23bb31508b62e8a1b32adf6217820e90e29b0; affected bb88e8da00253bea0e7f0f4cdfd7910572d7799f before 492c73b21fefa36f3869cb2b188ffb7fe37b3a9b; affected bb88e8da00253bea0e7f0f4cdfd7910572d7799f before 79b09c54c6563df9846ca3094bcfd72082c3e1d7 |
| Linux / Linux | affected 5.17; unaffected 0 before 5.17; unaffected 6.6.160 through 6.6.*; unaffected 6.12.114 through 6.12.*; unaffected 6.18.57 through 6.18.*; unaffected 7.0.11 through 7.0.*; unaffected 7.1 through * |
CWE
No CWE identifiers supplied.
References
- https://git.kernel.org/stable/c/3812cfe6cb0a5988df4fedcdaf9aab677b9cca61
- https://git.kernel.org/stable/c/e4a552e0b6413c1af2e140b5bc14bb849b411b57
- https://git.kernel.org/stable/c/fcb23bb31508b62e8a1b32adf6217820e90e29b0
- https://git.kernel.org/stable/c/492c73b21fefa36f3869cb2b188ffb7fe37b3a9b
- https://git.kernel.org/stable/c/79b09c54c6563df9846ca3094bcfd72082c3e1d7