Re: [patch 11/35] net: ionic: Replace in_interrupt() usage.

From: Thomas Gleixner
Date: Tue Sep 29 2020 - 10:37:09 EST


On Mon, Sep 28 2020 at 12:51, Shannon Nelson wrote:
> On 9/28/20 10:24 AM, Shannon Nelson wrote:
>>> ionic_lif_addr() can be called from:
>>>
>>>   1) ->ndo_set_rx_mode() which is under netif_addr_lock_bh()) so it
>>> must not
>>>      sleep.
>>>
>>>   2) Init and setup functions which are in fully preemptible task
>>> context.
>>>
>>> _ionic_lif_rx_mode() has only one call path with BH disabled.
>
> Now that I've had my coffee, let's look at this again - there are
> multiple paths that get us to _ionic_lif_rx_mode():
>
> .ndo_set_rx_mode
>   ionic_set_rx_mode,
>     _ionic_lif_rx_mode
>
> { ionic_open, ionic_lif_handle_fw_up, ionic_start_queues_reconfig }
>     ionic_txrx_init
>       ionic_set_rx_mode
>         _ionic_lif_rx_mode

Hrm. Let me stare at it again...