Subject: Re: [PATCH (net-next.git) 13/18] stmmac: perf, remove modulo in stmmac_rx()

From: Giuseppe CAVALLARO <[email-masked]>
Date: Thu, 10 Dec 2015 06:11:07 +0100

On 12/9/2015 6:21 PM, David Laight wrote:
> From: Giuseppe Cavallaro
>> Sent: 09 December 2015 08:38
>> The indexes into the ring buffer are always incremented, and
>> the entry is accessed via doing a modulo to find the "real" index.
>> Modulo is an expensive operation.
>>
>> This patch replaces the modulo with a simple if clamp.
>> It helps improve stmmac RX path as it's being called inside RX loop.
>
> Is dma_rx_size always a power of 2 ?

no

> If so you can replace the % by & and remove the conditionals.
>
> If you have changed the read and write values to indexes
> then you need to be certain that the 'ring full' and 'ring empty'
> cases are correctly distinguished.

this is implicitly managed by dirty and curr index.

thx
peppe

> 	David