Re: [PATCH net] net: lapbether: Prevent racing when checking whether the netif is running

From: Xie He
Date: Thu Mar 11 2021 - 16:15:26 EST


On Thu, Mar 11, 2021 at 12:43 PM Jakub Kicinski <kuba@xxxxxxxxxx> wrote:
>
> Is this a theoretical issues or do you see a path where it triggers?
>
> Who are the callers sending frames to a device which went down?

This is a theoretical issue. I didn't see this issue in practice.

When "__dev_queue_xmit" and "sch_direct_xmit" call
"dev_hard_start_xmit", there appears to be no locking mechanism
preventing the netif from going down while "dev_hard_start_xmit" is
doing its work.

David once confirmed in an email that a driver's "ndo_stop" function
would indeed race with its "ndo_start_xmit" function:
https://lore.kernel.org/netdev/20190520.200922.2277656639346033061.davem@xxxxxxxxxxxxx/