[PATCH v3 2/2] net/igc: enable launch time offloading

Stephen Hemminger stephen at networkplumber.org
Fri Feb 3 01:30:32 CET 2023


On Thu,  2 Feb 2023 15:18:01 +0800
Simei Su <simei.su at intel.com> wrote:

>  
> +static uint32_t igc_tx_launchtime(uint64_t txtime, uint16_t port_id)
> +{
> +	struct rte_eth_dev *dev = &rte_eth_devices[port_id];
> +	struct igc_adapter *adapter = IGC_DEV_PRIVATE(dev);
> +	uint64_t base_time = adapter->base_time;
> +	uint64_t cycle_time = adapter->cycle_time;
> +	uint32_t launchtime;
> +
> +	launchtime = (txtime - base_time) % cycle_time;
> +
> +	return rte_cpu_to_le_32(launchtime);
> +}


Divide in transmit path will slow things down.
Better to use something like rte_reciprocal_divide_64() to avoid slow 64 bit divide.


More information about the dev mailing list