---
id: CVE-2025-37846
title: 'arm64: mops: Do not dereference src reg for a set operation'
summary: |-
  In the Linux kernel, the following vulnerability has been resolved:

  arm64: mops: Do not dereference src reg for a set operation

  The source register is not used for SET* and reading it can result in
  a UBSAN out-of-bounds array access er…
severity: none
vendor: Linux
product: Linux
affected:
  - >-
    Linux >= 2de451a329cf662beeba71f63c7f83ee24ca6642 <
    eec737e17e5567e08148550a7f1d94d495b9fb17
  - >-
    Linux >= 2de451a329cf662beeba71f63c7f83ee24ca6642 <
    43267d934eacff6c70e15545d804ebbcab8a0bf5
  - >-
    Linux >= 2de451a329cf662beeba71f63c7f83ee24ca6642 <
    5f6022a74147675124b781fdc056b291850e7786
  - >-
    Linux >= 2de451a329cf662beeba71f63c7f83ee24ca6642 <
    a13bfa4fe0d6949cea14718df2d1fe84c38cd113
  - Linux 6.7
ssvc:
  exploitation: none
  automatable: 'no'
  technicalImpact: partial
  timestamp: '2026-11-05T20:42:20.551748Z'
published: '2025-05-09'
updated: '2026-11-05'
sourceUpdated: '2026-11-05T20:52:05.305Z'
source: CVEORG
sourceUrl: 'https://www.cve.org/CVERecord?id=CVE-2025-37846'
references:
  - url: 'https://git.kernel.org/stable/c/eec737e17e5567e08148550a7f1d94d495b9fb17'
  - url: 'https://git.kernel.org/stable/c/43267d934eacff6c70e15545d804ebbcab8a0bf5'
  - url: 'https://git.kernel.org/stable/c/5f6022a74147675124b781fdc056b291850e7786'
  - url: 'https://git.kernel.org/stable/c/a13bfa4fe0d6949cea14718df2d1fe84c38cd113'
tags:
  - cve.org
epss: 0.00288
epssPercentile: 0.21504
ingestedAt: '2026-11-05T22:38:31.900Z'
---

## Overview

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

arm64: mops: Do not dereference src reg for a set operation

The source register is not used for SET* and reading it can result in
a UBSAN out-of-bounds array access error, specifically when the MOPS
exception is taken from a SET* sequence with XZR (reg 31) as the
source. Architecturally this is the only case where a src/dst/size
field in the ESR can be reported as 31.

Prior to 2de451a329cf662b the code in do_el0_mops() was benign as the
use of pt_regs_read_reg() prevented the out-of-bounds access.

## Affected

- `Linux >= 2de451a329cf662beeba71f63c7f83ee24ca6642 < eec737e17e5567e08148550a7f1d94d495b9fb17`
- `Linux >= 2de451a329cf662beeba71f63c7f83ee24ca6642 < 43267d934eacff6c70e15545d804ebbcab8a0bf5`
- `Linux >= 2de451a329cf662beeba71f63c7f83ee24ca6642 < 5f6022a74147675124b781fdc056b291850e7786`
- `Linux >= 2de451a329cf662beeba71f63c7f83ee24ca6642 < a13bfa4fe0d6949cea14718df2d1fe84c38cd113`
- `Linux 6.7`

## Remediation

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