diff options
| author | Li RongQing <lirongqing@baidu.com> | 2026-09-03 16:25:50 +0800 |
|---|---|---|
| committer | Leon Romanovsky <leon@kernel.org> | 2026-09-06 03:39:32 -0400 |
| commit | 0ff7fcd6aac16dd149ad322687a10c8ea7d806b2 (patch) | |
| tree | 4d48a50da2f997cb35e00c55820be010e50fd49a /tools/lib/python/kdoc/python_version.py | |
| parent | 89b48ad5671fa082645f1be7e933236ac21de974 (diff) | |
RDMA/nldev: Put the device when dellink fails
nldev_dellink() takes a device reference through
ib_device_get_by_index() and normally hands it over to
ib_unregister_device_and_put(). The error path of the ->dellink
callback returns without releasing it, so the reference is leaked.
Once that happens, any later unregistration of the device blocks
forever, because disable_device() drops its own reference and then
waits for the refcount to drain. No in-tree driver returns an error
from ->dellink today, so the leak is currently latent.
Put the device before returning the error.
Fixes: a60e3f3d6fba ("RDMA/nldev: Add dellink function pointer")
Signed-off-by: Li RongQing <lirongqing@baidu.com>
Link: https://patch.msgid.link/20260903082550.2257-1-lirongqing@baidu.com
Signed-off-by: Leon Romanovsky <leon@kernel.org>
Diffstat (limited to 'tools/lib/python/kdoc/python_version.py')
0 files changed, 0 insertions, 0 deletions
