---
id: CVE-2026-80602
title: 'perf/x86/amd/lbr: Fix kernel address leakage'
summary: |-
  In the Linux kernel, the following vulnerability has been resolved:

  perf/x86/amd/lbr: Fix kernel address leakage

  A user-only branch stack can contain branches that originate from
  the kernel. As a result, kernel addresses are exposed to…
severity: none
vendor: Linux
product: Linux
affected:
  - >-
    Linux >= f4f925dae7419fc7a10af539c073871927ce3a24 <
    5adfec05e804ce4bd3368b75df5e5b7b40ee960b
  - >-
    Linux >= f4f925dae7419fc7a10af539c073871927ce3a24 <
    5be478c1e08981ca91b34de310d7e2638171d9d8
  - >-
    Linux >= f4f925dae7419fc7a10af539c073871927ce3a24 <
    208ecca408b1707ad86ea247d3d3e09d3606fc13
  - >-
    Linux >= f4f925dae7419fc7a10af539c073871927ce3a24 <
    5ab0eba9c8819506bcb72348fd701f8a9006f95e
  - >-
    Linux >= f4f925dae7419fc7a10af539c073871927ce3a24 <
    fb3b76b5ad2ebad63dd76f8b65b624eaf638b73f
  - >-
    Linux >= f4f925dae7419fc7a10af539c073871927ce3a24 <
    2a892294b83f541115c94b0bb637f39bef187657
  - Linux 6.1
published: '2026-08-28'
updated: '2026-10-30'
sourceUpdated: '2026-10-30T12:30:41.331Z'
source: CVEORG
sourceUrl: 'https://www.cve.org/CVERecord?id=CVE-2026-80602'
references:
  - url: 'https://git.kernel.org/stable/c/5adfec05e804ce4bd3368b75df5e5b7b40ee960b'
  - url: 'https://git.kernel.org/stable/c/5be478c1e08981ca91b34de310d7e2638171d9d8'
  - url: 'https://git.kernel.org/stable/c/208ecca408b1707ad86ea247d3d3e09d3606fc13'
  - url: 'https://git.kernel.org/stable/c/5ab0eba9c8819506bcb72348fd701f8a9006f95e'
  - url: 'https://git.kernel.org/stable/c/fb3b76b5ad2ebad63dd76f8b65b624eaf638b73f'
  - url: 'https://git.kernel.org/stable/c/2a892294b83f541115c94b0bb637f39bef187657'
tags:
  - cve.org
epss: 0.00215
epssPercentile: 0.11907
ingestedAt: '2026-11-05T15:02:32.596Z'
---

## Overview

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

perf/x86/amd/lbr: Fix kernel address leakage

A user-only branch stack can contain branches that originate from
the kernel. As a result, kernel addresses are exposed to user space
even when PERF_SAMPLE_BRANCH_USER is requested. On AMD processors
supporting X86_FEATURE_AMD_LBR_V2, perf can still report SYSRET/ERET
entries for which the branch-from addresses are in the kernel.

E.g.

  $ perf record -e cycles -o - -j any,save_type,u -- \
        perf bench syscall basic --loop 1000 | \
        perf script -i - -F brstack|tr ' ' '\n'| \
        grep -E '0x[89a-f][0-9a-f]{15}'

  ...
  0xffffffff81001268/0x717a90a38f1a/M/-/-/0/ERET/NON_SPEC_CORRECT_PATH
  0xffffffff81001268/0x717a90a39157/M/-/-/0/ERET/NON_SPEC_CORRECT_PATH
  0xffffffff81001268/0x717a90a2c628/M/-/-/0/ERET/NON_SPEC_CORRECT_PATH
  0xffffffff81001268/0x717a90a41b60/M/-/-/0/ERET/NON_SPEC_CORRECT_PATH
  0xffffffff81001268/0x717a90a260db/M/-/-/0/ERET/NON_SPEC_CORRECT_PATH
  0xffffffff81001268/0x717a90a260db/M/-/-/0/ERET/NON_SPEC_CORRECT_PATH
  0xffffffff81001268/0x717a8bef1c30/M/-/-/0/ERET/NON_SPEC_CORRECT_PATH
  0xffffffff81001268/0x717a8e4d3c90/M/-/-/0/ERET/NON_SPEC_CORRECT_PATH
  ...

The reason is that the hardware filter only considers the privilege
level applicable to the branch target. Extend software filtering to
also validate the branch-from addresses against br_sel, so that any
branch record whose branch-from address is in the kernel is dropped
when PERF_SAMPLE_BRANCH_USER is requested.

## Affected

- `Linux >= f4f925dae7419fc7a10af539c073871927ce3a24 < 5adfec05e804ce4bd3368b75df5e5b7b40ee960b`
- `Linux >= f4f925dae7419fc7a10af539c073871927ce3a24 < 5be478c1e08981ca91b34de310d7e2638171d9d8`
- `Linux >= f4f925dae7419fc7a10af539c073871927ce3a24 < 208ecca408b1707ad86ea247d3d3e09d3606fc13`
- `Linux >= f4f925dae7419fc7a10af539c073871927ce3a24 < 5ab0eba9c8819506bcb72348fd701f8a9006f95e`
- `Linux >= f4f925dae7419fc7a10af539c073871927ce3a24 < fb3b76b5ad2ebad63dd76f8b65b624eaf638b73f`
- `Linux >= f4f925dae7419fc7a10af539c073871927ce3a24 < 2a892294b83f541115c94b0bb637f39bef187657`
- `Linux 6.1`

## Remediation

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