i40e: use 16B HW descriptors instead of 32B
authorBjörn Töpel <bjorn.topel@intel.com>
Tue, 25 Aug 2020 11:35:55 +0000 (13:35 +0200)
committerTony Nguyen <anthony.l.nguyen@intel.com>
Mon, 14 Sep 2020 16:45:35 +0000 (09:45 -0700)
commitf0064bfd969bea0d65ef20d191bea8b7494b4ec8
treefa2cfffc47a4074f469910ccbb4f444881759029
parentf78bd13027d9d43a6f5f3469377cd6bfd4218a14
i40e: use 16B HW descriptors instead of 32B

The i40e NIC supports two flavors of HW descriptors, 16 and 32
byte. The latter has, obviously, room for more offloading
information. However, the only fields of the 32B HW descriptor that is
being used by the driver, is also available in the 16B descriptor.

In other words; Reading and writing 32 bytes instead of 16 byte is a
waste of bus bandwidth.

This commit starts using 16 byte descriptors instead of 32 byte
descriptors.

For AF_XDP the rx_drop benchmark was improved by 2%.

Signed-off-by: Björn Töpel <bjorn.topel@intel.com>
Tested-by: Aaron Brown <aaron.f.brown@intel.com>
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
drivers/net/ethernet/intel/i40e/i40e.h
drivers/net/ethernet/intel/i40e/i40e_debugfs.c
drivers/net/ethernet/intel/i40e/i40e_main.c
drivers/net/ethernet/intel/i40e/i40e_trace.h
drivers/net/ethernet/intel/i40e/i40e_txrx.c
drivers/net/ethernet/intel/i40e/i40e_txrx.h
drivers/net/ethernet/intel/i40e/i40e_type.h