> -----Original Message----- > From: Ananyev, Konstantin > Sent: Thursday, June 4, 2015 6:38 PM > To: Zhang, Helin; dev at dpdk.org > Subject: RE: [dpdk-dev] [PATCH v2 1/6] ethdev: add an field for querying hash > key size > > 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? Oh, yes, you are totally right. There should be a 2 bytes padding there. I will rework it with that. Thanks!
Helin > > Konstantin > > > -- > > 1.9.3