CVE-2026-64326

block: skip sync_blockdev() on surprise removal in bdev_mark_dead()

State
Published
Severity
Not scored
Published
Jul 25, 2026
Updated
Aug 17, 2026
Reserved
Jul 19, 2026

Read the record on cve.org

Description

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

block: skip sync_blockdev() on surprise removal in bdev_mark_dead()

bdev_mark_dead()'s @surprise == true means the device is already gone. The filesystem callback fs_bdev_mark_dead() honours this and skips sync_filesystem(), but the bare block device path (no ->mark_dead op) lost its !surprise guard when the holder ->mark_dead callback was wired up (see Fixes), and now calls sync_blockdev() unconditionally, which can hang forever waiting on writeback that can no longer complete.

syzkaller hit this via nvme_reset_work()'s "I/O queues lost" path: nvme_mark_namespaces_dead() -> blk_mark_disk_dead() -> bdev_mark_dead(bdev, true) -> sync_blockdev() blocks in folio_wait_writeback(), wedging the reset worker and every task waiting on it.

Skip the sync on surprise removal, matching fs_bdev_mark_dead(); invalidate_bdev() still runs. Orderly removal (surprise == false) is unchanged.

Found by FuzzNvme(Syzkaller with FEMU fuzzing framework).

Scores

The record has no CVSS score.

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • d8530de5a6e82be0ce17a5fdf727a394bcf6444c to before d6998ddd507c81e3829489a6ead23f17f5acb7feAffected
  • d8530de5a6e82be0ce17a5fdf727a394bcf6444c to before f41cf35ee2a1e31374b3f54e7579c55153506e70Affected
  • d8530de5a6e82be0ce17a5fdf727a394bcf6444c to before 9818bcae3c0ca1dde4b9a334125c46676e0a9b29Affected
  • d8530de5a6e82be0ce17a5fdf727a394bcf6444c to before aa4c4a9315764b2b7a7182e72cc5ea87520436b4Affected
  • d8530de5a6e82be0ce17a5fdf727a394bcf6444c to before 49f06cff50a4ccf3b7a1a662ceb892b3b21a527aAffected
LinuxLinux
  • 6.6Affected
  • before 6.6Not affected
  • 6.6.145 through 6.6.*Not affected
  • 6.12.96 through 6.12.*Not affected
  • 6.18.39 through 6.18.*Not affected
  • 7.1.4 through 7.1.*Not affected
  • 7.2 and laterNot affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.