From patchwork Tue Nov 20 13:00:15 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jasvinder Singh X-Patchwork-Id: 48206 X-Patchwork-Delegate: ferruh.yigit@amd.com Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id E7DB31DB9; Tue, 20 Nov 2018 14:00:19 +0100 (CET) Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by dpdk.org (Postfix) with ESMTP id 421A91D7 for ; Tue, 20 Nov 2018 14:00:17 +0100 (CET) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga004.fm.intel.com ([10.253.24.48]) by fmsmga107.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 20 Nov 2018 05:00:17 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.56,257,1539673200"; d="scan'208";a="107810835" Received: from silpixa00381635.ir.intel.com (HELO silpixa00381635.ger.corp.intel.com) ([10.237.222.149]) by fmsmga004.fm.intel.com with ESMTP; 20 Nov 2018 05:00:16 -0800 From: Jasvinder Singh To: dev@dpdk.org Cc: cristian.dumitrescu@intel.com Date: Tue, 20 Nov 2018 13:00:15 +0000 Message-Id: <20181120130015.157072-1-jasvinder.singh@intel.com> X-Mailer: git-send-email 2.17.1 Subject: [dpdk-dev] [PATCH] net/softnic: fix undefined dev info fields 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" The memcpy operation overwrites the device info fields set by ethdev API and leaves the device field undefined. Thus, replaces memcpy by only updating the required fields at the driver layer. error log: testpmd> show port info 1 **** Infos for port 1 **** MAC address: 00:00:00:00:00:00 Device name: net_softnic0 Segmentation fault. port_infos_display (port_id=1) at /dpdk/app/test-pmd/config.c:418 if (dev_info.device->devargs && dev_info.device->devargs->args) Fixes: cc6d421574fe ("net/softnic: add softnic PMD") Signed-off-by: Jasvinder Singh Reviewed-by: Ferruh Yigit --- drivers/net/softnic/rte_eth_softnic.c | 21 +++------------------ 1 file changed, 3 insertions(+), 18 deletions(-) diff --git a/drivers/net/softnic/rte_eth_softnic.c b/drivers/net/softnic/rte_eth_softnic.c index 743a7c585..14d4a1030 100644 --- a/drivers/net/softnic/rte_eth_softnic.c +++ b/drivers/net/softnic/rte_eth_softnic.c @@ -59,23 +59,6 @@ static const struct softnic_conn_params conn_params_default = { .msg_handle_arg = NULL, }; -static const struct rte_eth_dev_info pmd_dev_info = { - .min_rx_bufsize = 0, - .max_rx_pktlen = UINT32_MAX, - .max_rx_queues = UINT16_MAX, - .max_tx_queues = UINT16_MAX, - .rx_desc_lim = { - .nb_max = UINT16_MAX, - .nb_min = 0, - .nb_align = 1, - }, - .tx_desc_lim = { - .nb_max = UINT16_MAX, - .nb_min = 0, - .nb_align = 1, - }, -}; - static int pmd_softnic_logtype; #define PMD_LOG(level, fmt, args...) \ @@ -86,7 +69,9 @@ static void pmd_dev_infos_get(struct rte_eth_dev *dev __rte_unused, struct rte_eth_dev_info *dev_info) { - memcpy(dev_info, &pmd_dev_info, sizeof(*dev_info)); + dev_info->max_rx_pktlen = UINT32_MAX; + dev_info->max_rx_queues = UINT16_MAX; + dev_info->max_tx_queues = UINT16_MAX; } static int