net: sfc: Use GFP_KERNEL in efx_ef10_try_update_nic_stats()
authorSebastian Andrzej Siewior <bigeasy@linutronix.de>
Tue, 29 Sep 2020 20:25:25 +0000 (22:25 +0200)
committerDavid S. Miller <davem@davemloft.net>
Tue, 29 Sep 2020 21:02:54 +0000 (14:02 -0700)
efx_ef10_try_update_nic_stats_vf() is now only invoked from thread context
and can sleep after efx::stats_lock is dropped.

Change the allocation mode from GFP_ATOMIC to GFP_KERNEL.
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/sfc/ef10.c

index b702ba5986dceeb52e3615cb5c05aa6fd175191d..da6886dcac37c8795714a96fe4dcba08132d7281 100644 (file)
@@ -1873,7 +1873,7 @@ static int efx_ef10_try_update_nic_stats_vf(struct efx_nic *efx)
 
        efx_ef10_get_stat_mask(efx, mask);
 
-       rc = efx_nic_alloc_buffer(efx, &stats_buf, dma_len, GFP_ATOMIC);
+       rc = efx_nic_alloc_buffer(efx, &stats_buf, dma_len, GFP_KERNEL);
        if (rc) {
                spin_lock_bh(&efx->stats_lock);
                return rc;