{"id":"CVE-2022-49912","state":"PUBLISHED","title":"btrfs: fix ulist leaks in error paths of qgroup self tests","description":"In the Linux kernel, the following vulnerability has been resolved:\n\nbtrfs: fix ulist leaks in error paths of qgroup self tests\n\nIn the test_no_shared_qgroup() and test_multiple_refs() qgroup self tests,\nif we fail to add the tree ref, remove the extent item or remove the\nextent ref, we are returning from the test function without freeing the\n\"old_roots\" ulist that was allocated by the previous calls to\nbtrfs_find_all_roots(). Fix that by calling ulist_free() before returning.","publishedAt":"2025-05-01T14:10:54.231Z","updatedAt":"2026-05-11T19:09:06.973Z","severity":null,"assigner":"Linux","products":["Linux Linux"],"affected":[{"vendor":"Linux","product":"Linux","defaultStatus":"unaffected","versions":[{"version":"442244c9633292a147ab2b29e7007a7c8a3909b2","status":"affected","lessThan":"d81370396025cf63a7a1b5f8bb25a3479203b2ca","versionType":"git"},{"version":"442244c9633292a147ab2b29e7007a7c8a3909b2","status":"affected","lessThan":"3f58283d83a588ff5da62fc150de19e798ed2ec2","versionType":"git"},{"version":"442244c9633292a147ab2b29e7007a7c8a3909b2","status":"affected","lessThan":"203204798831c35d855ecc6417d98267d2d2184b","versionType":"git"},{"version":"442244c9633292a147ab2b29e7007a7c8a3909b2","status":"affected","lessThan":"5d1a47ebf84540e40b5b43fc21aef0d6c0f627d9","versionType":"git"},{"version":"442244c9633292a147ab2b29e7007a7c8a3909b2","status":"affected","lessThan":"0a0dead4ad1a2e2a9bdf133ef45111d7c8daef84","versionType":"git"},{"version":"442244c9633292a147ab2b29e7007a7c8a3909b2","status":"affected","lessThan":"f46ea5fa3320dca4fe0c0926b49a5f14cb85de62","versionType":"git"},{"version":"442244c9633292a147ab2b29e7007a7c8a3909b2","status":"affected","lessThan":"da7003434bcab0ae9aba3f2c003e734cae093326","versionType":"git"},{"version":"442244c9633292a147ab2b29e7007a7c8a3909b2","status":"affected","lessThan":"d37de92b38932d40e4a251e876cc388f9aee5f42","versionType":"git"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["fs/btrfs/tests/qgroup-tests.c"]},{"vendor":"Linux","product":"Linux","defaultStatus":"affected","versions":[{"version":"4.2","status":"affected"},{"version":"0","status":"unaffected","lessThan":"4.2","versionType":"semver"},{"version":"4.9.333","status":"unaffected","lessThanOrEqual":"4.9.*","versionType":"semver"},{"version":"4.14.299","status":"unaffected","lessThanOrEqual":"4.14.*","versionType":"semver"},{"version":"4.19.265","status":"unaffected","lessThanOrEqual":"4.19.*","versionType":"semver"},{"version":"5.4.224","status":"unaffected","lessThanOrEqual":"5.4.*","versionType":"semver"},{"version":"5.10.154","status":"unaffected","lessThanOrEqual":"5.10.*","versionType":"semver"},{"version":"5.15.78","status":"unaffected","lessThanOrEqual":"5.15.*","versionType":"semver"},{"version":"6.0.8","status":"unaffected","lessThanOrEqual":"6.0.*","versionType":"semver"},{"version":"6.1","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["fs/btrfs/tests/qgroup-tests.c"]}],"references":["https://git.kernel.org/stable/c/d81370396025cf63a7a1b5f8bb25a3479203b2ca","https://git.kernel.org/stable/c/3f58283d83a588ff5da62fc150de19e798ed2ec2","https://git.kernel.org/stable/c/203204798831c35d855ecc6417d98267d2d2184b","https://git.kernel.org/stable/c/5d1a47ebf84540e40b5b43fc21aef0d6c0f627d9","https://git.kernel.org/stable/c/0a0dead4ad1a2e2a9bdf133ef45111d7c8daef84","https://git.kernel.org/stable/c/f46ea5fa3320dca4fe0c0926b49a5f14cb85de62","https://git.kernel.org/stable/c/da7003434bcab0ae9aba3f2c003e734cae093326","https://git.kernel.org/stable/c/d37de92b38932d40e4a251e876cc388f9aee5f42"],"weaknesses":[],"ingestedAt":"2026-10-29T20:05:26.763Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2022/49xxx/CVE-2022-49912.json","commit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2022-49912","state":"PUBLISHED","datePublished":"2025-05-01T14:10:54.231Z","dateUpdated":"2026-05-11T19:09:06.973Z","assignerShortName":"Linux","assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateReserved":"2025-05-01T14:05:17.250Z"},"containers":{"cna":{"title":"btrfs: fix ulist leaks in error paths of qgroup self tests","descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nbtrfs: fix ulist leaks in error paths of qgroup self tests\n\nIn the test_no_shared_qgroup() and test_multiple_refs() qgroup self tests,\nif we fail to add the tree ref, remove the extent item or remove the\nextent ref, we are returning from the test function without freeing the\n\"old_roots\" ulist that was allocated by the previous calls to\nbtrfs_find_all_roots(). Fix that by calling ulist_free() before returning."}],"affected":[{"vendor":"Linux","product":"Linux","defaultStatus":"unaffected","versions":[{"version":"442244c9633292a147ab2b29e7007a7c8a3909b2","status":"affected","lessThan":"d81370396025cf63a7a1b5f8bb25a3479203b2ca","versionType":"git"},{"version":"442244c9633292a147ab2b29e7007a7c8a3909b2","status":"affected","lessThan":"3f58283d83a588ff5da62fc150de19e798ed2ec2","versionType":"git"},{"version":"442244c9633292a147ab2b29e7007a7c8a3909b2","status":"affected","lessThan":"203204798831c35d855ecc6417d98267d2d2184b","versionType":"git"},{"version":"442244c9633292a147ab2b29e7007a7c8a3909b2","status":"affected","lessThan":"5d1a47ebf84540e40b5b43fc21aef0d6c0f627d9","versionType":"git"},{"version":"442244c9633292a147ab2b29e7007a7c8a3909b2","status":"affected","lessThan":"0a0dead4ad1a2e2a9bdf133ef45111d7c8daef84","versionType":"git"},{"version":"442244c9633292a147ab2b29e7007a7c8a3909b2","status":"affected","lessThan":"f46ea5fa3320dca4fe0c0926b49a5f14cb85de62","versionType":"git"},{"version":"442244c9633292a147ab2b29e7007a7c8a3909b2","status":"affected","lessThan":"da7003434bcab0ae9aba3f2c003e734cae093326","versionType":"git"},{"version":"442244c9633292a147ab2b29e7007a7c8a3909b2","status":"affected","lessThan":"d37de92b38932d40e4a251e876cc388f9aee5f42","versionType":"git"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["fs/btrfs/tests/qgroup-tests.c"]},{"vendor":"Linux","product":"Linux","defaultStatus":"affected","versions":[{"version":"4.2","status":"affected"},{"version":"0","status":"unaffected","lessThan":"4.2","versionType":"semver"},{"version":"4.9.333","status":"unaffected","lessThanOrEqual":"4.9.*","versionType":"semver"},{"version":"4.14.299","status":"unaffected","lessThanOrEqual":"4.14.*","versionType":"semver"},{"version":"4.19.265","status":"unaffected","lessThanOrEqual":"4.19.*","versionType":"semver"},{"version":"5.4.224","status":"unaffected","lessThanOrEqual":"5.4.*","versionType":"semver"},{"version":"5.10.154","status":"unaffected","lessThanOrEqual":"5.10.*","versionType":"semver"},{"version":"5.15.78","status":"unaffected","lessThanOrEqual":"5.15.*","versionType":"semver"},{"version":"6.0.8","status":"unaffected","lessThanOrEqual":"6.0.*","versionType":"semver"},{"version":"6.1","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["fs/btrfs/tests/qgroup-tests.c"]}],"references":[{"url":"https://git.kernel.org/stable/c/d81370396025cf63a7a1b5f8bb25a3479203b2ca"},{"url":"https://git.kernel.org/stable/c/3f58283d83a588ff5da62fc150de19e798ed2ec2"},{"url":"https://git.kernel.org/stable/c/203204798831c35d855ecc6417d98267d2d2184b"},{"url":"https://git.kernel.org/stable/c/5d1a47ebf84540e40b5b43fc21aef0d6c0f627d9"},{"url":"https://git.kernel.org/stable/c/0a0dead4ad1a2e2a9bdf133ef45111d7c8daef84"},{"url":"https://git.kernel.org/stable/c/f46ea5fa3320dca4fe0c0926b49a5f14cb85de62"},{"url":"https://git.kernel.org/stable/c/da7003434bcab0ae9aba3f2c003e734cae093326"},{"url":"https://git.kernel.org/stable/c/d37de92b38932d40e4a251e876cc388f9aee5f42"}],"providerMetadata":{"shortName":"Linux","orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateUpdated":"2026-05-11T19:09:06.973Z"},"cpeApplicability":[{"nodes":[{"operator":"OR","negate":false,"cpeMatch":[{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.2","versionEndExcluding":"4.9.333"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.2","versionEndExcluding":"4.14.299"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.2","versionEndExcluding":"4.19.265"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.2","versionEndExcluding":"5.4.224"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.2","versionEndExcluding":"5.10.154"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.2","versionEndExcluding":"5.15.78"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.2","versionEndExcluding":"6.0.8"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.2","versionEndExcluding":"6.1"}]}]}],"x_generator":{"engine":"bippy-1.2.0"}}}}}