Hi Helin, > -----Original Message----- > From: dev [mailto:dev-bounces at dpdk.org] On Behalf Of Helin Zhang > Sent: Thursday, June 04, 2015 8:34 AM > To: dev at dpdk.org > Subject: [dpdk-dev] [PATCH v2 1/6] ethdev: add an field for querying hash key > size > > To support querying hash key size per port, an new field of > 'hash_key_size' was added in 'struct rte_eth_dev_info' for storing > hash key size in bytes. > > Signed-off-by: Helin Zhang <helin.zhang at intel.com> > --- > lib/librte_ether/rte_ethdev.h | 3 +++ > 1 file changed, 3 insertions(+) > > v2 changes: > * Disabled the code changes by default, to avoid breaking ABI compatibility. > > diff --git a/lib/librte_ether/rte_ethdev.h b/lib/librte_ether/rte_ethdev.h > index 16dbe00..bdebc87 100644 > --- a/lib/librte_ether/rte_ethdev.h > +++ b/lib/librte_ether/rte_ethdev.h > @@ -916,6 +916,9 @@ struct rte_eth_dev_info { > uint16_t max_vmdq_pools; /**< Maximum number of VMDq pools. */ > uint32_t rx_offload_capa; /**< Device RX offload capabilities. */ > uint32_t tx_offload_capa; /**< Device TX offload capabilities. */ > +#ifdef RTE_QUERY_HASH_KEY_SIZE > + uint8_t hash_key_size; /**< Hash key size in bytes */ > +#endif > uint16_t reta_size; > /**< Device redirection table size, the total number of entries. */ > /** Bit mask of RSS offloads, the bit offset also means flow type */
Why do you need to introduce an #ifdef RTE_QUERY_HASH_KEY_SIZE around your code? Why not to have it always on? Is it because of not breaking ABI for 2.1? But here, I suppose there would be no breakage anyway: struct rte_eth_dev_info { ... uint32_t tx_offload_capa; /**< Device TX offload capabilities. */ uint16_t reta_size; /**< Device redirection table size, the total number of entries. */ /** Bit mask of RSS offloads, the bit offset also means flow type */ uint64_t flow_type_rss_offloads; struct rte_eth_rxconf default_rxconf; so between 'reta_size' and 'flow_type_rss_offloads', there is a 2 bytes gap. Wonder, why not put it there? Konstantin > -- > 1.9.3