Re: [PATCH] ixgbe: Don't call kmap() on page allocated with GFP_ATOMIC

From: Alexander Duyck
Date: Tue Jul 05 2022 - 15:52:55 EST


On Tue, Jul 5, 2022 at 11:22 AM Ira Weiny <ira.weiny@xxxxxxxxx> wrote:
>
> On Mon, Jul 04, 2022 at 04:01:29PM +0200, Fabio M. De Francesco wrote:
> > Pages allocated with GFP_ATOMIC cannot come from Highmem. This is why
> > there is no need to call kmap() on them.
>
> I'm still not 100% sure where this page gets allocated but AFAICT it is
> allocated in ixgbe_alloc_mapped_page() which calls dev_alloc_pages() for the
> allocation which is where the GFP_ATOMIC is specified.
>
> I think I would add this detail here.
>
> That said, and assuming my analysis is correct, the code looks fine so:

Yeah, this is actually called out in other spots in the buffer
cleaning path. This is just something I had overlooked and left in
place back a few refactors ago.. :-)

https://elixir.bootlin.com/linux/latest/source/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c#L1795

Reviewed-by: Alexander Duyck <alexanderduyck@xxxxxx>