]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
netconsole: resume previously deactivated target
authorAndre Carvalho <asantostc@gmail.com>
Sun, 18 Jan 2026 11:00:26 +0000 (11:00 +0000)
committerJakub Kicinski <kuba@kernel.org>
Thu, 22 Jan 2026 03:09:11 +0000 (19:09 -0800)
commit220dbe3c76ed13a7b68393212a625eaf1770b96f
tree4763c797d24cf4b805517f7af6239dd78b3dd2e6
parentc52861e566db8af86c9fb412ccffa274c610babf
netconsole: resume previously deactivated target

Attempt to resume a previously deactivated target when the associated
interface comes back (NETDEV_REGISTER) or when it changes name
(NETDEV_CHANGENAME) by calling netpoll_setup on the device.

Depending on how the target was setup (by mac or interface name), the
corresponding field is compared with the device being brought up. Targets
that match the incoming device, are scheduled for resume on a workqueue.

Resuming happens on a workqueue as we can't execute netpoll_setup in the
context of the netdev event. A standalone workqueue (as opposed to the
global one) is used to allow for proper cleanup process during
netconsole module cleanup as we need to be able to flush all pending
work before traversing the target list given that targets are temporarily
removed from the list during resume_target.

Target transitions to STATE_DISABLED in case of failures resuming it to
avoid retrying the same target indefinitely.

Signed-off-by: Andre Carvalho <asantostc@gmail.com>
Reviewed-by: Breno Leitao <leitao@debian.org>
Tested-by: Breno Leitao <leitao@debian.org>
Link: https://patch.msgid.link/20260118-netcons-retrigger-v11-6-4de36aebcf48@gmail.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/netconsole.c