[dpdk-dev] [PATCH 4/4] ethdev: remove jumbo offload flag

Ferruh Yigit ferruh.yigit at intel.com
Wed Jul 21 14:26:38 CEST 2021


On 7/13/2021 3:07 PM, Andrew Rybchenko wrote:
> On 7/9/21 8:29 PM, Ferruh Yigit wrote:
>> Removing 'DEV_RX_OFFLOAD_JUMBO_FRAME' offload flag.
>>
>> Instead of drivers announce this capability, application can deduct the
>> capability by checking reported 'dev_info.max_mtu' or
>> 'dev_info.max_rx_pktlen'.
>>
>> And instead of application explicitly set this flag to enable jumbo
>> frames, this can be deducted by driver by comparing requested 'mtu' to
>> 'RTE_ETHER_MTU'.
> 
> I can imagine the case when app wants to enable jumbo MTU in
> run-time, but enabling requires to know it in advance in order
> to configure HW correctly (i.e. offload is needed).
> I think it may be ignored. Driver should either reject MTU
> set in started state or do restart automatically on request.
> 

As far as I can see we have both implementations. Most of PMDs return error if
device is started, a few tries to restart to apply the configuration.

And many PMDs just record the value passed with this API and apply it in the
device start, some apply the value within API.

> However, driver maintainers should keep it in mind reviewing
> the patch.
> 

+1

>>
>> Removing this additional configuration for simplification.
>>
>> Signed-off-by: Ferruh Yigit <ferruh.yigit at intel.com>
> 
> ethdev part:
> 
> Acked-by: Andrew Rybchenko <andrew.rybchenko at oktetlabs.ru>
> 
> [snip]
> 
>> diff --git a/drivers/net/e1000/e1000_ethdev.h b/drivers/net/e1000/e1000_ethdev.h
>> index 3b4d9c3ee6f4..1ae78fe71f02 100644
>> --- a/drivers/net/e1000/e1000_ethdev.h
>> +++ b/drivers/net/e1000/e1000_ethdev.h
>> @@ -468,8 +468,8 @@ void eth_em_rx_queue_release(void *rxq);
>>  void em_dev_clear_queues(struct rte_eth_dev *dev);
>>  void em_dev_free_queues(struct rte_eth_dev *dev);
>>  
>> -uint64_t em_get_rx_port_offloads_capa(struct rte_eth_dev *dev);
>> -uint64_t em_get_rx_queue_offloads_capa(struct rte_eth_dev *dev);
>> +uint64_t em_get_rx_port_offloads_capa(void);
>> +uint64_t em_get_rx_queue_offloads_capa(void);
> 
> I'm not sure that it is a step in right direction.
> May be it is better to keep dev unused.
> net/e1000 maintainers should decide.
> 



More information about the dev mailing list