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

  dm: fix a buffer overflow in ioctl processing

  Tony Asleson (using Claude) found a buffer overflow in dm-ioctl in the
  function retrieve_status:

  1
summary: |-
  In the Linux kernel, the following vulnerability has been resolved:

  dm: fix a buffer overflow in ioctl processing

  Tony Asleson (using Claude) found a buffer overflow in dm-ioctl in the
  function retrieve_status:

  1. The code in retrieve…
severity: none
published: '2026-06-08'
updated: '2026-07-07'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-46294'
references:
  - url: 'https://git.kernel.org/stable/c/2fa49cc884f6496a915c35621ba4da35649bf159'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/448ee8fb79c26a26599ffa4b2adeb4322d3d3d8c'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/526ff9126a0ae087b65726e1faf31114c718020d'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/5af6a879e915ae7bcd83695c316ebb32e1c61bc2'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/8daa6c708ef524089ae43f2aed9190acb26d7df8'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/c8c5311237448f6ffeecc9aec2362e3692623668'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/d271631023cbe1cbe7c31a0275ab797883be6e0a'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/f0b0b09d9840838ae77ccdd6a62de0daef4e6e0a'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
tags:
  - nvd
epss: 0.00143
epssPercentile: 0.03943
ingestedAt: '2026-07-07T18:42:24.306Z'
---

## Overview

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

dm: fix a buffer overflow in ioctl processing

Tony Asleson (using Claude) found a buffer overflow in dm-ioctl in the
function retrieve_status:

1. The code in retrieve_status checks that the output string fits into
   the output buffer and writes the output string there
2. Then, the code aligns the "outptr" variable to the next 8-byte
   boundary:
	outptr = align_ptr(outptr);
3. The alignment doesn't check overflow, so outptr could point past the
   buffer end
4. The "for" loop is iterated again, it executes:
	remaining = len - (outptr - outbuf);
5. If "outptr" points past "outbuf + len", the arithmetics wraps around
   and the variable "remaining" contains unusually high number
6. With "remaining" being high, the code writes more data past the end of
   the buffer

Luckily, this bug has no security implications because:
1. Only root can issue device mapper ioctls
2. The commonly used libraries that communicate with device mapper
   (libdevmapper and devicemapper-rs) use buffer size that is aligned to
   8 bytes - thus, "outptr = align_ptr(outptr)" can't overshoot the input
   buffer and the bug can't happen accidentally

## Remediation

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