Description
In the Linux kernel, the following vulnerability has been resolved:
net: mana: Guard mana_remove against double invocation
If PM resume fails (e.g., mana_attach() returns an error), mana_probe() calls mana_remove(), which tears down the device and sets gd->gdma_context = NULL and gd->driver_data = NULL.
However, a failed resume callback does not automatically unbind the driver. When the device is eventually unbound, mana_remove() is invoked a second time. Without a NULL check, it dereferences gc->dev with gc == NULL, causing a kernel panic.
Add an early return if gdma_context or driver_data is NULL so the second invocation is harmless. Move the dev = gc->dev assignment after the guard so it cannot dereference NULL.
Metrics
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:HWeakness enumeration
Affected software
| Vendor | Product | Versions |
|---|---|---|
| Linux | Linux | >= 635096a86edb067d55a1e04b4a918f5c6dac0c51, < f63a6d2e4167703611f5c2602eaa1a23f635430f; >= 635096a86edb067d55a1e04b4a918f5c6dac0c51, < 793bf1f4e469c51d0e39199823da5e1de85a2741; >= 635096a86edb067d55a1e04b4a918f5c6dac0c51, < 8ee85b75a72216c857c39457f6595709c4c9f856; >= 635096a86edb067d55a1e04b4a918f5c6dac0c51, < a1ddfd2c0b7a48e5239fadd2a24cc4bc2cda90e6; >= 635096a86edb067d55a1e04b4a918f5c6dac0c51, < bbe5c3c570645a4ceb120979d3ee203a1583d775; >= 635096a86edb067d55a1e04b4a918f5c6dac0c51, < 50271d7ec95144d26808025b508f463780517d3c |
| Linux | Linux | 5.16 |
References
- https://git.kernel.org/stable/c/50271d7ec95144d26808025b508f463780517d3cPatch
- https://git.kernel.org/stable/c/793bf1f4e469c51d0e39199823da5e1de85a2741
- https://git.kernel.org/stable/c/8ee85b75a72216c857c39457f6595709c4c9f856
- https://git.kernel.org/stable/c/a1ddfd2c0b7a48e5239fadd2a24cc4bc2cda90e6Patch
- https://git.kernel.org/stable/c/bbe5c3c570645a4ceb120979d3ee203a1583d775Patch
- https://git.kernel.org/stable/c/f63a6d2e4167703611f5c2602eaa1a23f635430f
Timeline
- Published
- Jun 26, 2026
- Last modified
- Nov 6, 2026
- NVD status
- Modified