CVE-2023-53183
Gravedad:
Pendiente de análisis
Tipo:
No Disponible / Otro tipo
Fecha de publicación:
15/09/2025
Última modificación:
15/09/2025
Descripción
*** Pendiente de traducción *** In the Linux kernel, the following vulnerability has been resolved:<br />
<br />
btrfs: exit gracefully if reloc roots don&#39;t match<br />
<br />
[BUG]<br />
Syzbot reported a crash that an ASSERT() got triggered inside<br />
prepare_to_merge().<br />
<br />
[CAUSE]<br />
The root cause of the triggered ASSERT() is we can have a race between<br />
quota tree creation and relocation.<br />
<br />
This leads us to create a duplicated quota tree in the<br />
btrfs_read_fs_root() path, and since it&#39;s treated as fs tree, it would<br />
have ROOT_SHAREABLE flag, causing us to create a reloc tree for it.<br />
<br />
The bug itself is fixed by a dedicated patch for it, but this already<br />
taught us the ASSERT() is not something straightforward for<br />
developers.<br />
<br />
[ENHANCEMENT]<br />
Instead of using an ASSERT(), let&#39;s handle it gracefully and output<br />
extra info about the mismatch reloc roots to help debug.<br />
<br />
Also with the above ASSERT() removed, we can trigger ASSERT(0)s inside<br />
merge_reloc_roots() later.<br />
Also replace those ASSERT(0)s with WARN_ON()s.