---
id: CVE-2026-98245
title: |-
  In the Linux kernel, the following vulnerability has been resolved:

  btrfs: take commit root semaphore when iterating in mark_block_group_to_copy()

  mark_block_group_to_copy() iterates over the commit root with
  skip_locking=true
summary: |-
  In the Linux kernel, the following vulnerability has been resolved:

  btrfs: take commit root semaphore when iterating in mark_block_group_to_copy()

  mark_block_group_to_copy() iterates over the commit root with
  skip_locking=true. A concu…
severity: none
vendor: Linux
product: Linux
affected:
  - >-
    Linux >= 78ce9fc269af6e69c1399ab910ba6bc81c934f67 <
    8e2007b263ea250251ec3021a0a197da990ee1a8
  - >-
    Linux >= 78ce9fc269af6e69c1399ab910ba6bc81c934f67 <
    709f6a5e986535005110c6c69b322f63631cb200
  - >-
    Linux >= 78ce9fc269af6e69c1399ab910ba6bc81c934f67 <
    c32490c6d3f3a9f2d177d57c7eb8bbc347561d08
  - >-
    Linux >= 78ce9fc269af6e69c1399ab910ba6bc81c934f67 <
    0594e3423f4ba3137c734371169491f9a98e9af4
  - Linux 5.12
published: '2026-10-06'
updated: '2026-10-06'
sourceUpdated: '2026-10-06T09:18:12.643'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-98245'
references:
  - url: 'https://git.kernel.org/stable/c/0594e3423f4ba3137c734371169491f9a98e9af4'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/709f6a5e986535005110c6c69b322f63631cb200'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/8e2007b263ea250251ec3021a0a197da990ee1a8'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/c32490c6d3f3a9f2d177d57c7eb8bbc347561d08'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
tags:
  - nvd
  - cve.org
ingestedAt: '2026-10-06T08:50:17.434Z'
---

## Overview

In the Linux kernel, the following vulnerability has been resolved:

btrfs: take commit root semaphore when iterating in mark_block_group_to_copy()

mark_block_group_to_copy() iterates over the commit root with
skip_locking=true. A concurrent transaction commit can swap and free
the commit root during iteration, causing use-after-free when
accessing extent buffers.

Fix it by using path->need_commit_sem to protect the commit root search.

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
