High · published July 19, 2026
In the Linux kernel, the following vulnerability has been resolved:
rpmsg: char: Fix use-after-free on probe error path
rpmsg_chrdev_probe() stores the newly allocated eptdev in the default
endpoint's priv pointer before calling rpmsg_chrdev_eptdev_add(). If
rpmsg_chrdev_eptdev_add() then fails, its error path frees eptdev while
the default endpoint may still dispatch callbacks with the stale priv
pointer.
Avoid publishing eptdev through the default endpoint until
rpmsg_chrdev_eptdev_add() succeeds. Messages received before the priv
pointer is published should be ignored by rpmsg_ept_cb(). Flow-control
updates can hit rpmsg_ept_flow_cb() in the same window, so make both
callbacks return success when priv is NULL.
| Product | Versions | Fixed in |
|---|---|---|
| linux/linux_kernel | ≥ 5.18, < 6.1.178 | 6.1.178 |
| linux/linux_kernel | ≥ 6.2, < 6.6.144 | 6.6.144 |
| linux/linux_kernel | ≥ 6.7, < 6.12.95 | 6.12.95 |
| linux/linux_kernel | ≥ 6.13, < 6.18.38 | 6.18.38 |
| linux/linux_kernel | ≥ 6.19, < 7.1.3 | 7.1.3 |