ocfs2: fix missing metadata reservation for large xattrs (Linux Linux)

CVE-2026-80809
Non disponible

En bref

Source
NVD
EPSS
EPSS 0.19 % · centile 9 ()
État
PUBLISHED
Publiée
Mise à jour
Attribuée par
Linux
Statut NVD
Received

Description

In the Linux kernel, the following vulnerability has been resolved: ocfs2: fix missing metadata reservation for large xattrs [BUG] lsetxattr() panics the kernel when setting a large xattr value on a fragmented filesystem where the file already has an external xattr block. [CAUSE] ocfs2_calc_xattr_set_need() never reserves metadata blocks for a new xattr value's extent tree when the file already has an external xattr block. The not_found path leaves meta_add at zero, so meta_ac is NULL when ocfs2_xattr_extend_allocation() runs. A new value root has room for a single extent record. On a fragmented filesystem, the allocator cannot satisfy the xattr value in one contiguous run, so each non-contiguous run requires its own extent record. When the value root's extent list is full and meta_ac is NULL, ocfs2_add_clusters_in_btree() returns RESTART_META, and ocfs2_xattr_extend_allocation() hits BUG_ON(why == RESTART_META). [FIX] The case where no xattr block exists yet already calls ocfs2_extend_meta_needed(&def_xv.xv.xr_list) to reserve value tree metadata. Add the same reservation to the case where an xattr block already exists, making the two cases consistent. Replace the BUG_ON with a -ENOSPC return so that if RESTART_META is returned despite the reservation, the error propagates to userspace instead of panicking the kernel.

Références

Références européennes

Avis du CERT-FR

Produits affectés

ProduitVersions
Linux · Linuxaffected a78f9f4668949a6588b8872f162e86685c63d023 < 743ac908282ac97ef6e73ac3a92df2cc8ecb7479 ; affected a78f9f4668949a6588b8872f162e86685c63d023 < 04ba24bce61c917b5b3009f0db470cbb72e26a0d ; affected a78f9f4668949a6588b8872f162e86685c63d023 < b4663405ae29d36011cd712d243456f3f9ab700d ; affected a78f9f4668949a6588b8872f162e86685c63d023 < 6a009f1e61b11d9e23d3c5aa1dacfb010945da45 ; affected a78f9f4668949a6588b8872f162e86685c63d023 < b9eb5c9fdd81d82976d4d5be2b2458eb7d7e46ec ; affected a78f9f4668949a6588b8872f162e86685c63d023 < 6176313622e34fa3e2b66b9d0682d1e1c6b365c5
Linux · Linuxaffected 2.6.35 ; unaffected 0 < 2.6.35 ; unaffected 5.10.267 ≤ 5.10.* ; unaffected 5.15.218 ≤ 5.15.* ; unaffected 6.1.185 ≤ 6.1.* ; unaffected 6.6.154 ≤ 6.6.*

Sources

SourceLicence
CVE List (CVEProject cvelistV5)CVE Program Terms of Use
EPSS (FIRST.org)FIRST — attribution requested
ENISA EUVDENISA — reproduction authorised, source acknowledged
CERT-FR (ANSSI)Licence Ouverte / Etalab 2.0
NVD (NIST) via fkie-cad/nvd-json-data-feedsPublic domain — this product uses data from the NVD API but is not endorsed or certified by the NVD