summaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/google/gve/gve_rx.c
diff options
context:
space:
mode:
authorCatherine Sullivan <csully@google.com>2022-01-25 16:38:43 -0800
committerJakub Kicinski <kuba@kernel.org>2022-01-26 18:45:01 -0800
commita92f7a6feeb3884c69c1c7c1f13bccecb2228ad0 (patch)
treee4a4d0446b0e81dd2892478b99326e64db6f9872 /drivers/net/ethernet/google/gve/gve_rx.c
parent2f6513284347432d137ce54e30baae2aa5d5f55c (diff)
downloadlinux-a92f7a6feeb3884c69c1c7c1f13bccecb2228ad0.tar.bz2
gve: Fix GFP flags when allocing pages
Use GFP_ATOMIC when allocating pages out of the hotpath, continue to use GFP_KERNEL when allocating pages during setup. GFP_KERNEL will allow blocking which allows it to succeed more often in a low memory enviornment but in the hotpath we do not want to allow the allocation to block. Fixes: f5cedc84a30d2 ("gve: Add transmit and receive support") Signed-off-by: Catherine Sullivan <csully@google.com> Signed-off-by: David Awogbemila <awogbemila@google.com> Link: https://lore.kernel.org/r/20220126003843.3584521-1-awogbemila@google.com Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'drivers/net/ethernet/google/gve/gve_rx.c')
-rw-r--r--drivers/net/ethernet/google/gve/gve_rx.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/net/ethernet/google/gve/gve_rx.c b/drivers/net/ethernet/google/gve/gve_rx.c
index 9ddcc497f48e..2068199445bd 100644
--- a/drivers/net/ethernet/google/gve/gve_rx.c
+++ b/drivers/net/ethernet/google/gve/gve_rx.c
@@ -86,7 +86,8 @@ static int gve_rx_alloc_buffer(struct gve_priv *priv, struct device *dev,
dma_addr_t dma;
int err;
- err = gve_alloc_page(priv, dev, &page, &dma, DMA_FROM_DEVICE);
+ err = gve_alloc_page(priv, dev, &page, &dma, DMA_FROM_DEVICE,
+ GFP_ATOMIC);
if (err)
return err;