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

  fbdev: Add bounds checking in bit_putcs to fix vmalloc-out-of-bounds

  Add bounds checking to prevent writes past framebuffer boundaries when
  rendering text near screen …
summary: |-
  In the Linux kernel, the following vulnerability has been resolved:

  fbdev: Add bounds checking in bit_putcs to fix vmalloc-out-of-bounds

  Add bounds checking to prevent writes past framebuffer boundaries when
  rendering text near screen …
severity: high
cvss: 7.8
cvssVector: 'CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H'
published: '2025-12-08'
updated: '2026-10-14'
sourceUpdated: '2026-10-14T22:10:00.210'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2025-40304'
references:
  - url: 'https://git.kernel.org/stable/c/15ba9acafb0517f8359ca30002c189a68ddbb939'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/1943b69e87b0ab35032d47de0a7fca9a3d1d6fc1'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/2d1359e11674ed4274934eac8a71877ae5ae7bbb'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/3637d34b35b287ab830e66048841ace404382b67'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/86df8ade88d290725554cefd03101ecd0fbd3752'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/996bfaa7372d6718b6d860bdf78f6618e850c702'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/ebc0730b490c7f27340b1222e01dd106e820320d'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/f0982400648a3e00580253e0c48e991f34d2684c'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
tags:
  - nvd
epss: 0.00144
epssPercentile: 0.03285
ingestedAt: '2026-10-14T23:00:02.019Z'
---

## Overview

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

fbdev: Add bounds checking in bit_putcs to fix vmalloc-out-of-bounds

Add bounds checking to prevent writes past framebuffer boundaries when
rendering text near screen edges. Return early if the Y position is off-screen
and clip image height to screen boundary. Break from the rendering loop if the
X position is off-screen. When clipping image width to fit the screen, update
the character count to match the clipped width to prevent buffer size
mismatches.

Without the character count update, bit_putcs_aligned and bit_putcs_unaligned
receive mismatched parameters where the buffer is allocated for the clipped
width but cnt reflects the original larger count, causing out-of-bounds writes.

## Remediation

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