[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20151023.025943.873672852211823864.davem@davemloft.net>
Date: Fri, 23 Oct 2015 02:59:43 -0700 (PDT)
From: David Miller <davem@...emloft.net>
To: thomas.lendacky@....com
Cc: netdev@...r.kernel.org, christoffer.dall@...aro.org
Subject: Re: [PATCH net] amd-xgbe: Use wmb before updating current
descriptor count
From: Tom Lendacky <thomas.lendacky@....com>
Date: Wed, 21 Oct 2015 15:37:05 -0500
> The code currently uses the lightweight dma_wmb barrier before updating
> the current descriptor count. Under heavy load, the Tx cleanup routine
> was seeing the updated current descriptor count before the updated
> descriptor information. As a result, the Tx descriptor was being cleaned
> up before it was used because it was not "owned" by the hardware yet,
> resulting in a Tx queue hang.
>
> Using the wmb barrier insures that the descriptor is updated before the
> descriptor counter preventing the Tx queue hang. For extra insurance,
> the Tx cleanup routine is changed to grab the current decriptor count on
> entry and uses that initial value in the processing loop rather than
> trying to chase the current value.
>
> Signed-off-by: Tom Lendacky <thomas.lendacky@....com>
> Tested-by: Christoffer Dall <christoffer.dall@...aro.org>
Applied, thanks.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists