Re: [PATCH net v2] net: netconsole: Disable target before netpoll cleanup

From: Eric Dumazet
Date: Fri Jul 12 2024 - 12:36:45 EST


On Fri, Jul 12, 2024 at 7:34 AM Breno Leitao <leitao@xxxxxxxxxx> wrote:
>
> Currently, netconsole cleans up the netpoll structure before disabling
> the target. This approach can lead to race conditions, as message
> senders (write_ext_msg() and write_msg()) check if the target is
> enabled before using netpoll. The sender can validate that the target is
> enabled, but, the netpoll might be de-allocated already, causing
> undesired behaviours.
>
> This patch reverses the order of operations:
> 1. Disable the target
> 2. Clean up the netpoll structure
>
> This change eliminates the potential race condition, ensuring that
> no messages are sent through a partially cleaned-up netpoll structure.
>
> Fixes: 2382b15bcc39 ("netconsole: take care of NETDEV_UNREGISTER event")
> Cc: stable@xxxxxxxxxxxxxxx
> Signed-off-by: Breno Leitao <leitao@xxxxxxxxxx>

Goof catch, thanks.

Reviewed-by: Eric Dumazet <edumazet@xxxxxxxxxx>