From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ophir Munk Subject: [PATCH v2] ethdev: document RSS default key and types Date: Wed, 7 Nov 2018 09:23:42 +0000 Message-ID: <1541582611-1609-1-git-send-email-ophirmu@mellanox.com> References: <1541259953-4273-1-git-send-email-ophirmu@mellanox.com> Mime-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Cc: Asaf Penso , Shahaf Shuler , Olga Shern , Ophir Munk To: Ferruh Yigit , Andrew Rybchenko , "dev@dpdk.org" , Thomas Monjalon Return-path: Received: from EUR03-AM5-obe.outbound.protection.outlook.com (mail-eopbgr30048.outbound.protection.outlook.com [40.107.3.48]) by dpdk.org (Postfix) with ESMTP id DC32B239 for ; Wed, 7 Nov 2018 10:23:43 +0100 (CET) In-Reply-To: <1541259953-4273-1-git-send-email-ophirmu@mellanox.com> Content-Language: en-US List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" struct rte_flow_action_rss include fields 'key' and 'types'. Field 'key' is a pointer to bytes array (uint8_t *) which contains the specific RSS hash key. If an application is only interested in default RSS operation it should not care about the specific hash key. The application can set the hash key to NULL such that any PMD uses its default RSS key. Field 'types' is a uint64_t bits flag used to specify a specific RSS hash type such as ETH_RSS_IP (see ETH_RSS_*). If an application does not care about the specific RSS type it can set this field to 0 such that any PMD uses its default type. Signed-off-by: Ophir Munk --- lib/librte_ethdev/rte_flow.h | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/lib/librte_ethdev/rte_flow.h b/lib/librte_ethdev/rte_flow.h index c0fe879..ca9e135 100644 --- a/lib/librte_ethdev/rte_flow.h +++ b/lib/librte_ethdev/rte_flow.h @@ -1782,10 +1782,15 @@ struct rte_flow_action_rss { * through. */ uint32_t level; - uint64_t types; /**< Specific RSS hash types (see ETH_RSS_*). */ + /** + * Specific RSS hash types (see ETH_RSS_*), + * or 0 for PMD specific default. + */ + uint64_t types; uint32_t key_len; /**< Hash key length in bytes. */ uint32_t queue_num; /**< Number of entries in @p queue. */ - const uint8_t *key; /**< Hash key. */ + /** Hash key, or NULL for PMD specific default key. */ + const uint8_t *key; const uint16_t *queue; /**< Queue indices to use. */ }; =20 --=20 1.8.3.1