tsnep: Replace modulo operation with mask
authorGerhard Engleder <gerhard@engleder-embedded.com>
Fri, 21 Apr 2023 19:46:51 +0000 (21:46 +0200)
committerJakub Kicinski <kuba@kernel.org>
Tue, 25 Apr 2023 01:22:38 +0000 (18:22 -0700)
commit42fb2962b4a6f8b46aa1c141748319e01d0c7c39
tree3d661946f8721039e0bb21a0726dc9a3d989ab23
parent938f65adc4202da8ed3c85ef5a40dd3b8ee328d9
tsnep: Replace modulo operation with mask

TX/RX ring size is static and power of 2 to enable compiler to optimize
modulo operation to mask operation. Make this optimization already in
the code and don't rely on the compiler.

CPU utilisation during high packet rate has not changed. So no
performance improvement has been measured. But it is best practice to
prevent modulo operations.

Suggested-by: Maciej Fijalkowski <maciej.fijalkowski@intel.com>
Signed-off-by: Gerhard Engleder <gerhard@engleder-embedded.com>
Reviewed-by: Maciej Fijalkowski <maciej.fijalkowski@intel.com>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/engleder/tsnep.h
drivers/net/ethernet/engleder/tsnep_main.c