[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20161103.153448.1648752999199676420.davem@davemloft.net>
Date: Thu, 03 Nov 2016 15:34:48 -0400 (EDT)
From: David Miller <davem@...emloft.net>
To: Yuval.Mintz@...ium.com
Cc: netdev@...r.kernel.org
Subject: Re: [PATCH net] qede: Correctly map aggregation replacement pages
From: Yuval Mintz <Yuval.Mintz@...ium.com>
Date: Wed, 2 Nov 2016 16:36:46 +0200
> Driver allocates replacement buffers before-hand to make
> sure whenever an aggregation begins there would be a replacement
> for the Rx buffers, as we can't release the buffer until
> aggregation is terminated and driver logic assumes the Rx rings
> are always full.
>
> For every other Rx page that's being allocated [I.e., regular]
> the page is being completely mapped while for the replacement
> buffers only the first portion of the page is being mapped.
> This means that:
> a. Once replacement buffer replenishes the regular Rx ring,
> assuming there's more than a single packet on page we'd post unmapped
> memory toward HW [assuming mapping is actually done in granularity
> smaller than page].
> b. Unmaps are being done for the entire page, which is incorrect.
>
> Fixes: 55482edc25f06 ("qede: Add slowpath/fastpath support and enable hardware GRO")
> Signed-off-by: Yuval Mintz <Yuval.Mintz@...ium.com>
Applied.
Powered by blists - more mailing lists