---
id: CVE-2026-31540
title: 'drm/i915/gt: Check set_default_submission() before deferencing'
summary: |-
  In the Linux kernel, the following vulnerability has been resolved:

  drm/i915/gt: Check set_default_submission() before deferencing

  When the i915 driver firmware binaries are not present, the
  set_default_submission pointer is not set. T…
severity: none
vendor: Linux
product: Linux
affected:
  - >-
    Linux >= ff44ad51ebf8e4693bd66ae41aa37a6bc88a134f <
    db8b1bebe81ffb410ddd746b6869f72e22420850
  - >-
    Linux >= ff44ad51ebf8e4693bd66ae41aa37a6bc88a134f <
    da6552d67012a1cf0585f2eb401d0c4abcf108c9
  - >-
    Linux >= ff44ad51ebf8e4693bd66ae41aa37a6bc88a134f <
    df1f4a7d9cf689b4e96c95255228896505f44c31
  - >-
    Linux >= ff44ad51ebf8e4693bd66ae41aa37a6bc88a134f <
    2e20a886b443a71b573ceaed3ca7053d15380916
  - >-
    Linux >= ff44ad51ebf8e4693bd66ae41aa37a6bc88a134f <
    cf4b224ffb9a58181be32b64130fc36cf59c3192
  - >-
    Linux >= ff44ad51ebf8e4693bd66ae41aa37a6bc88a134f <
    1a16150729db8d997e39519f9d58e6b435c4c087
  - >-
    Linux >= ff44ad51ebf8e4693bd66ae41aa37a6bc88a134f <
    0162ab3220bac870e43e229e6e3024d1a21c3f26
  - Linux 4.12
ssvc:
  exploitation: none
  automatable: 'no'
  technicalImpact: partial
  timestamp: '2026-11-05T21:38:07.826588Z'
published: '2026-04-24'
updated: '2026-11-05'
sourceUpdated: '2026-11-05T21:45:06.945Z'
source: CVEORG
sourceUrl: 'https://www.cve.org/CVERecord?id=CVE-2026-31540'
references:
  - url: 'https://git.kernel.org/stable/c/db8b1bebe81ffb410ddd746b6869f72e22420850'
  - url: 'https://git.kernel.org/stable/c/da6552d67012a1cf0585f2eb401d0c4abcf108c9'
  - url: 'https://git.kernel.org/stable/c/df1f4a7d9cf689b4e96c95255228896505f44c31'
  - url: 'https://git.kernel.org/stable/c/2e20a886b443a71b573ceaed3ca7053d15380916'
  - url: 'https://git.kernel.org/stable/c/cf4b224ffb9a58181be32b64130fc36cf59c3192'
  - url: 'https://git.kernel.org/stable/c/1a16150729db8d997e39519f9d58e6b435c4c087'
  - url: 'https://git.kernel.org/stable/c/0162ab3220bac870e43e229e6e3024d1a21c3f26'
tags:
  - cve.org
epss: 0.00123
epssPercentile: 0.02052
ingestedAt: '2026-11-05T23:41:31.975Z'
---

## Overview

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

drm/i915/gt: Check set_default_submission() before deferencing

When the i915 driver firmware binaries are not present, the
set_default_submission pointer is not set. This pointer is
dereferenced during suspend anyways.

Add a check to make sure it is set before dereferencing.

[   23.289926] PM: suspend entry (deep)
[   23.293558] Filesystems sync: 0.000 seconds
[   23.298010] Freezing user space processes
[   23.302771] Freezing user space processes completed (elapsed 0.000 seconds)
[   23.309766] OOM killer disabled.
[   23.313027] Freezing remaining freezable tasks
[   23.318540] Freezing remaining freezable tasks completed (elapsed 0.001 seconds)
[   23.342038] serial 00:05: disabled
[   23.345719] serial 00:02: disabled
[   23.349342] serial 00:01: disabled
[   23.353782] sd 0:0:0:0: [sda] Synchronizing SCSI cache
[   23.358993] sd 1:0:0:0: [sdb] Synchronizing SCSI cache
[   23.361635] ata1.00: Entering standby power mode
[   23.368863] ata2.00: Entering standby power mode
[   23.445187] BUG: kernel NULL pointer dereference, address: 0000000000000000
[   23.452194] #PF: supervisor instruction fetch in kernel mode
[   23.457896] #PF: error_code(0x0010) - not-present page
[   23.463065] PGD 0 P4D 0
[   23.465640] Oops: Oops: 0010 [#1] SMP NOPTI
[   23.469869] CPU: 8 UID: 0 PID: 211 Comm: kworker/u48:18 Tainted: G S      W           6.19.0-rc4-00020-gf0b9d8eb98df #10 PREEMPT(voluntary)
[   23.482512] Tainted: [S]=CPU_OUT_OF_SPEC, [W]=WARN
[   23.496511] Workqueue: async async_run_entry_fn
[   23.501087] RIP: 0010:0x0
[   23.503755] Code: Unable to access opcode bytes at 0xffffffffffffffd6.
[   23.510324] RSP: 0018:ffffb4a60065fca8 EFLAGS: 00010246
[   23.515592] RAX: 0000000000000000 RBX: ffff9f428290e000 RCX: 000000000000000f
[   23.522765] RDX: 0000000000000000 RSI: 0000000000000282 RDI: ffff9f428290e000
[   23.529937] RBP: ffff9f4282907070 R08: ffff9f4281130428 R09: 00000000ffffffff
[   23.537111] R10: 0000000000000000 R11: 0000000000000001 R12: ffff9f42829070f8
[   23.544284] R13: ffff9f4282906028 R14: ffff9f4282900000 R15: ffff9f4282906b68
[   23.551457] FS:  0000000000000000(0000) GS:ffff9f466b2cf000(0000) knlGS:0000000000000000
[   23.559588] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[   23.565365] CR2: ffffffffffffffd6 CR3: 000000031c230001 CR4: 0000000000f70ef0
[   23.572539] PKRU: 55555554
[   23.575281] Call Trace:
[   23.577770]  <TASK>
[   23.579905]  intel_engines_reset_default_submission+0x42/0x60
[   23.585695]  __intel_gt_unset_wedged+0x191/0x200
[   23.590360]  intel_gt_unset_wedged+0x20/0x40
[   23.594675]  gt_sanitize+0x15e/0x170
[   23.598290]  i915_gem_suspend_late+0x6b/0x180
[   23.602692]  i915_drm_suspend_late+0x35/0xf0
[   23.607008]  ? __pfx_pci_pm_suspend_late+0x10/0x10
[   23.611843]  dpm_run_callback+0x78/0x1c0
[   23.615817]  device_suspend_late+0xde/0x2e0
[   23.620037]  async_suspend_late+0x18/0x30
[   23.624082]  async_run_entry_fn+0x25/0xa0
[   23.628129]  process_one_work+0x15b/0x380
[   23.632182]  worker_thread+0x2a5/0x3c0
[   23.635973]  ? __pfx_worker_thread+0x10/0x10
[   23.640279]  kthread+0xf6/0x1f0
[   23.643464]  ? __pfx_kthread+0x10/0x10
[   23.647263]  ? __pfx_kthread+0x10/0x10
[   23.651045]  ret_from_fork+0x131/0x190
[   23.654837]  ? __pfx_kthread+0x10/0x10
[   23.658634]  ret_from_fork_asm+0x1a/0x30
[   23.662597]  </TASK>
[   23.664826] Modules linked in:
[   23.667914] CR2: 0000000000000000
[   23.671271] ------------[ cut here ]------------

(cherry picked from commit daa199abc3d3d1740c9e3a2c3e9216ae5b447cad)

## Affected

- `Linux >= ff44ad51ebf8e4693bd66ae41aa37a6bc88a134f < db8b1bebe81ffb410ddd746b6869f72e22420850`
- `Linux >= ff44ad51ebf8e4693bd66ae41aa37a6bc88a134f < da6552d67012a1cf0585f2eb401d0c4abcf108c9`
- `Linux >= ff44ad51ebf8e4693bd66ae41aa37a6bc88a134f < df1f4a7d9cf689b4e96c95255228896505f44c31`
- `Linux >= ff44ad51ebf8e4693bd66ae41aa37a6bc88a134f < 2e20a886b443a71b573ceaed3ca7053d15380916`
- `Linux >= ff44ad51ebf8e4693bd66ae41aa37a6bc88a134f < cf4b224ffb9a58181be32b64130fc36cf59c3192`
- `Linux >= ff44ad51ebf8e4693bd66ae41aa37a6bc88a134f < 1a16150729db8d997e39519f9d58e6b435c4c087`
- `Linux >= ff44ad51ebf8e4693bd66ae41aa37a6bc88a134f < 0162ab3220bac870e43e229e6e3024d1a21c3f26`
- `Linux 4.12`

## Remediation

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