From patchwork Thu Sep 17 05:30:25 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Michal Krawczyk X-Patchwork-Id: 77970 X-Patchwork-Delegate: ferruh.yigit@amd.com Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 7C083A04B6; Thu, 17 Sep 2020 07:32:25 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id D7D951D56D; Thu, 17 Sep 2020 07:31:08 +0200 (CEST) Received: from mail-lf1-f44.google.com (mail-lf1-f44.google.com [209.85.167.44]) by dpdk.org (Postfix) with ESMTP id 2F1101D55C for ; Thu, 17 Sep 2020 07:31:03 +0200 (CEST) Received: by mail-lf1-f44.google.com with SMTP id b12so755617lfp.9 for ; Wed, 16 Sep 2020 22:31:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=semihalf-com.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=zZlLyEbMXe5z9zzDgiUY8fqJ+y56WoZFwsGOkjcipH0=; b=njFCUP80WCRCy+Eyy9PKSPX+8XQsZFj7JJYkRTJ1TfKEIWyHvWj/2rlOSNxNF9IMLF vp18ELsQnqTij368OSkgilVdf0/pHOiIbiTme5yiHoUERHW9nXxmIE3ihZhe6FM6zSUt 5pZ588c1p7P1SiYPwtisFWv5DuhfAzl+7dXkhtNSG34UEjHBcPZFMaC5clMD6058IqIN 3wLZWESPNzxgOKq43lasQD5tEZq7zOLhkrDLOt1t5b4pL5zRfMrpq3Rp9hLvIuaXjMsU GVXHycEI6ByTYA17xefmZRM655CWN8bl6C5ZAU+rlRnxqbSVqypLAwWrcIhfo/wJTdaq 6ztw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=zZlLyEbMXe5z9zzDgiUY8fqJ+y56WoZFwsGOkjcipH0=; b=DrIhIuit5YhoYbbX+cZbpxLwV0m7zTMOarM+Ohlm9GmXgplvj8om4PoBVh5TpVntNE xuXOQ9ja032jQsuJbJ7vhlsGX7vw4ZrC0Wfu6LY3AUx3Ir90ditNtaQ2iw2+TmvBRlOP pl7+6PsLSk9Bhns2ubpqAcdtCCXcv8pabQileM9Gfok19shWzUyogxx2JW2teCZTnoIQ 3weFXq+kfDORUSELyvntcMyGes6dnMjo4EBllYVphU/qQzE9HMcgxyRtvnaYil6wDjnV qxJ3MnxFOQwLBRyPJoL3ON+QVQL2dW5+tHIzVB2C2KdTrepW6Bolohd/DjWqhjSZuZSd JzGg== X-Gm-Message-State: AOAM531iEMWiWbJ2cyfL2BasqaH6VmgU0zH4/12j8wJSzhuNXLfS4E/l yfdbJs/x48Z6PZYnvDQ2r3zpr824tQ7oRT2u X-Google-Smtp-Source: ABdhPJxHe2l2IoN5E2hauOtyRRBCdQ/um+uFN2rFcYAsLVHE/7be3euCVoOget2n9fewaDj539tMHA== X-Received: by 2002:a19:e54:: with SMTP id 81mr10274149lfo.178.1600320662509; Wed, 16 Sep 2020 22:31:02 -0700 (PDT) Received: from mkPC.semihalf.local (193-106-246-138.noc.fibertech.net.pl. [193.106.246.138]) by smtp.gmail.com with ESMTPSA id j3sm5033686lfb.185.2020.09.16.22.31.01 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 16 Sep 2020 22:31:01 -0700 (PDT) From: Michal Krawczyk To: dev@dpdk.org Cc: gtzalik@amazon.com, igorch@amazon.com, Michal Krawczyk , Marcin Wojtas , Evgeny Schemeilin Date: Thu, 17 Sep 2020 07:30:25 +0200 Message-Id: <20200917053035.1889989-11-mk@semihalf.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20200917053035.1889989-1-mk@semihalf.com> References: <20200917053035.1889989-1-mk@semihalf.com> MIME-Version: 1.0 Subject: [dpdk-dev] [PATCH 10/20] net/ena/base: do not use hardcoded RSS key buffer size X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" It's well defined how the RSS key buffer looks from the device perspective, so the constant calue should be used instead of magic number. Also it doesn't has to be calculated dynamically. Signed-off-by: Michal Krawczyk Reviewed-by: Igor Chauskin Reviewed-by: Guy Tzalik --- drivers/net/ena/base/ena_com.c | 7 +++---- drivers/net/ena/base/ena_defs/ena_admin_defs.h | 4 +++- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/drivers/net/ena/base/ena_com.c b/drivers/net/ena/base/ena_com.c index bf1de09c5c..ea7d6788c9 100644 --- a/drivers/net/ena/base/ena_com.c +++ b/drivers/net/ena/base/ena_com.c @@ -1073,11 +1073,10 @@ static void ena_com_hash_key_fill_default_key(struct ena_com_dev *ena_dev) (ena_dev->rss).hash_key; ENA_RSS_FILL_KEY(&hash_key->key, sizeof(hash_key->key)); - /* The key is stored in the device in uint32_t array - * as well as the API requires the key to be passed in this - * format. Thus the size of our array should be divided by 4 + /* The key buffer is stored in the device in an array of + * uint32 elements. */ - hash_key->keys_num = sizeof(hash_key->key) / sizeof(uint32_t); + hash_key->keys_num = ENA_ADMIN_RSS_KEY_PARTS; } static int ena_com_hash_key_allocate(struct ena_com_dev *ena_dev) diff --git a/drivers/net/ena/base/ena_defs/ena_admin_defs.h b/drivers/net/ena/base/ena_defs/ena_admin_defs.h index be1747cd9f..9cea1c3905 100644 --- a/drivers/net/ena/base/ena_defs/ena_admin_defs.h +++ b/drivers/net/ena/base/ena_defs/ena_admin_defs.h @@ -9,6 +9,8 @@ #define ENA_ADMIN_EXTRA_PROPERTIES_STRING_LEN 32 #define ENA_ADMIN_EXTRA_PROPERTIES_COUNT 32 +#define ENA_ADMIN_RSS_KEY_PARTS 10 + enum ena_admin_aq_opcode { ENA_ADMIN_CREATE_SQ = 1, ENA_ADMIN_DESTROY_SQ = 2, @@ -732,7 +734,7 @@ struct ena_admin_feature_rss_flow_hash_control { uint32_t reserved; - uint32_t key[10]; + uint32_t key[ENA_ADMIN_RSS_KEY_PARTS]; }; struct ena_admin_feature_rss_flow_hash_function {