---
id: CVE-2026-31514
title: 'erofs: set fileio bio failed in short read case'
summary: |-
  In the Linux kernel, the following vulnerability has been resolved:

  erofs: set fileio bio failed in short read case

  For file-backed mount, IO requests are handled by vfs_iocb_iter_read().
  However, it can be interrupted by SIGKILL, retu…
severity: none
vendor: Linux
product: Linux
affected:
  - >-
    Linux >= ce63cb62d794c98c7631c2296fa845f2a8d0a4a1 <
    d1ba7d6b3cd1757b108d7b6856c92ae661d6c323
  - >-
    Linux >= ce63cb62d794c98c7631c2296fa845f2a8d0a4a1 <
    5cf3972c8221abdb1b464a14ccf8103d840b9085
  - >-
    Linux >= ce63cb62d794c98c7631c2296fa845f2a8d0a4a1 <
    5a5f23ef5431639db1ac3a0b274aef3a84cc413c
  - >-
    Linux >= ce63cb62d794c98c7631c2296fa845f2a8d0a4a1 <
    eade54040384f54b7fb330e4b0975c5734850b3c
  - Linux 6.12
published: '2026-04-22'
updated: '2026-10-23'
sourceUpdated: '2026-10-23T08:20:15.576Z'
source: CVEORG
sourceUrl: 'https://www.cve.org/CVERecord?id=CVE-2026-31514'
references:
  - url: 'https://git.kernel.org/stable/c/d1ba7d6b3cd1757b108d7b6856c92ae661d6c323'
  - url: 'https://git.kernel.org/stable/c/5cf3972c8221abdb1b464a14ccf8103d840b9085'
  - url: 'https://git.kernel.org/stable/c/5a5f23ef5431639db1ac3a0b274aef3a84cc413c'
  - url: 'https://git.kernel.org/stable/c/eade54040384f54b7fb330e4b0975c5734850b3c'
tags:
  - cve.org
epss: 0.00162
epssPercentile: 0.0501
ingestedAt: '2026-10-23T09:20:44.068Z'
---

## Overview

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

erofs: set fileio bio failed in short read case

For file-backed mount, IO requests are handled by vfs_iocb_iter_read().
However, it can be interrupted by SIGKILL, returning the number of
bytes actually copied. Unused folios in bio are unexpectedly marked
as uptodate.

  vfs_read
    filemap_read
      filemap_get_pages
        filemap_readahead
          erofs_fileio_readahead
            erofs_fileio_rq_submit
              vfs_iocb_iter_read
                filemap_read
                  filemap_get_pages  <= detect signal
              erofs_fileio_ki_complete  <= set all folios uptodate

This patch addresses this by setting short read bio with an error
directly.

## Affected

- `Linux >= ce63cb62d794c98c7631c2296fa845f2a8d0a4a1 < d1ba7d6b3cd1757b108d7b6856c92ae661d6c323`
- `Linux >= ce63cb62d794c98c7631c2296fa845f2a8d0a4a1 < 5cf3972c8221abdb1b464a14ccf8103d840b9085`
- `Linux >= ce63cb62d794c98c7631c2296fa845f2a8d0a4a1 < 5a5f23ef5431639db1ac3a0b274aef3a84cc413c`
- `Linux >= ce63cb62d794c98c7631c2296fa845f2a8d0a4a1 < eade54040384f54b7fb330e4b0975c5734850b3c`
- `Linux 6.12`

## Remediation

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