From patchwork Wed Mar 25 18:46:24 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Eduard Serra X-Patchwork-Id: 67110 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 379BDA058B; Wed, 25 Mar 2020 19:46:38 +0100 (CET) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 1EEFE2C6D; Wed, 25 Mar 2020 19:46:37 +0100 (CET) Received: from NAM12-DM6-obe.outbound.protection.outlook.com (mail-dm6nam12on2078.outbound.protection.outlook.com [40.107.243.78]) by dpdk.org (Postfix) with ESMTP id A43E51E34 for ; Wed, 25 Mar 2020 19:46:35 +0100 (CET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=I7SJyhu6/Pwyk/CadjrKVEQim5+RGxDdw0zG5tOi9Uum+OKHFvihPW7YAYJ474BYCfyFwZNBx/JZQtM/9KY2vvx7xDz4Ng/aagoPbR8eVbgG5qW2upRa03dbRzFJvsaaslWYJPTBaB8hNXSzkOb9NLEDbaA0tl19vV4K8fOi7umjYEjT8RvOg4LMLE89/u7LLLrnWplg7M0OmcePmdOYq19Bwndl3zRvjA/wtBAvqlq4baACsapURbfWf1f+19/BZ7ah4EeJYPW6NTLpBB74XzMOI7GSC7iis3xrHLtW3dMxYuOpKsWxKJ542vnea694q6jp148GNytc/VcvpvKR+Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=eLZ6auYgiCAJVn5QB4VlwjpyvYiH9gubjWPvyXqjBEM=; b=Bi7YTDZ6SuZajxY2ost/Lyr3otVPbD5NJDTd8iTZ7BxbKZeOWvkiN2/9/gVAkeYucoT/ZKzMmf8Ijv0nv4PL6Rodr7ry3QWLjRx2MBqfkHFggifffbCI5V9dprvWKVIMZd080EeAoM//TO832upvVIKHy3+v78RadJ6kTLJRwRUM+uNNO5D3uhEd3v7QH0ZkpvpunHVpICvfgMSLxFy/PROUwjHzprD7oPb87ekrTEpuqy3cLeIbRRLfWx7CRHpHoYuCB/tKz3uLEwKFxEnAqFxA6Eu2LJGcV8Wyyb2maW0XGsBesdBAcEz9ntEmHq+B4unGXVA/1Lzhp12ZTyztVA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=vmware.com; dmarc=pass action=none header.from=vmware.com; dkim=pass header.d=vmware.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=vmware.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=eLZ6auYgiCAJVn5QB4VlwjpyvYiH9gubjWPvyXqjBEM=; b=TOVCvLSHEZ8bnWPwcXE6RN4CIDfgAZN0PxRORec4t+ORr7gLPQcbegDV6couzfyi1ZijR48bU0rivLMU2ccP2zZT8U9n/oBjiqSuAm5xz1BNZsU5zNgdvcDFgJMbsV6vXQiLdp19RYp4kEpu5+lqXPJUjSOjJ4fLs2EFcbSu4as= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=eserra@vmware.com; Received: from BYAPR05MB3989.namprd05.prod.outlook.com (2603:10b6:a02:86::31) by BYAPR05MB5671.namprd05.prod.outlook.com (2603:10b6:a03:19::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2856.9; Wed, 25 Mar 2020 18:46:30 +0000 Received: from BYAPR05MB3989.namprd05.prod.outlook.com ([fe80::f1be:e437:3f14:2f1a]) by BYAPR05MB3989.namprd05.prod.outlook.com ([fe80::f1be:e437:3f14:2f1a%7]) with mapi id 15.20.2856.017; Wed, 25 Mar 2020 18:46:30 +0000 From: Eduard Serra To: dev@dpdk.org Cc: yongwang@vmware.com Date: Wed, 25 Mar 2020 11:46:24 -0700 Message-Id: <1585161984-25276-1-git-send-email-eserra@vmware.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1585161801-24250-1-git-send-email-eserra@vmware.com> References: <1585161801-24250-1-git-send-email-eserra@vmware.com> X-ClientProxiedBy: BY5PR04CA0022.namprd04.prod.outlook.com (2603:10b6:a03:1d0::32) To BYAPR05MB3989.namprd05.prod.outlook.com (2603:10b6:a02:86::31) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from dev.localdomain (76.14.29.240) by BY5PR04CA0022.namprd04.prod.outlook.com (2603:10b6:a03:1d0::32) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256) id 15.20.2835.18 via Frontend Transport; Wed, 25 Mar 2020 18:46:30 +0000 X-Mailer: git-send-email 2.7.4 X-Originating-IP: [76.14.29.240] X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: f4228ff8-0aae-4896-5e9f-08d7d0ecd522 X-MS-TrafficTypeDiagnostic: BYAPR05MB5671:|BYAPR05MB5671: X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:8273; X-Forefront-PRVS: 0353563E2B X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(4636009)(366004)(39860400002)(346002)(376002)(396003)(136003)(66946007)(66556008)(66476007)(6486002)(16526019)(186003)(2616005)(956004)(81166006)(81156014)(6666004)(86362001)(5660300002)(8936002)(8676002)(36756003)(4326008)(52116002)(2906002)(6916009)(107886003)(966005)(6512007)(26005)(6506007)(316002)(478600001); DIR:OUT; SFP:1101; SCL:1; SRVR:BYAPR05MB5671; H:BYAPR05MB3989.namprd05.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; Received-SPF: None (protection.outlook.com: vmware.com does not designate permitted sender hosts) X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: yQbmaRq8gpt/dhYFD7FHIAncYJJ0sPRLrky0JMuSK0ZAZWwyqiTwcY4WJlMuMXQf2YU/5dX6+e9wAz6OBMHXP877OJN1wbFcheKo3m4FiNyhNvUev3z//o73IGMC6onXrHZQ1cN9+M8zGbtH7OV6LnhXRK3hbQsASR2pLWKp/hMBplMKsPCsdX9pLciXtVZEfDbknsCHJuFeIIGKtxMbPg5UvJOaEtHhy5exyGm6rH0fDPv0Y4UKnS9LbsnLBMwVIEFHiao/kwnBks49Cvp8eqArcEBmcVc4NZMsgExtiWgrQPO3SeOwGHS60OuYFYY+6Kp9c2Glwn02dtnU8QJE0+oq8Luai6EhCpM32rlmguoeOk5NG4QcmYhziOPqwtS4P/WQzpnUo738FH+hf5LIBOVsYrYC/Tix0DrQ87Dfqm/srMhDPIB3Oz30+F1zJeXhMsRO/cEbGgzcyGv9AjhbNFQxOJj1uzO3gg4vHdHAjVxfF9wbe6dzYsbmeeCy95wHqx5z1ByVy8PzwTy+Y6v6Bw== X-MS-Exchange-AntiSpam-MessageData: pAateU5H7peosQcoLRquR17mGCBg4exsJIFthdZSlylkUrvTaNrlSqYf2ikBBsaTxnQB3XmCHobCGQNzaQdkUHkG83+swXzfyI/Y4sDPh2XvHt1I1UZBsKBj0xuPNsvYsid0LnK+3hNGqjIjiVL5mw== X-OriginatorOrg: vmware.com X-MS-Exchange-CrossTenant-Network-Message-Id: f4228ff8-0aae-4896-5e9f-08d7d0ecd522 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Mar 2020 18:46:30.7450 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: b39138ca-3cee-4b4a-a4d6-cd83d9dd62f0 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: AUfHw3MgPrQBiYW41KIqeVSTdwJuE5QU8FBf4k/KgAyPnuYz+70xdVFYdJqCXS2aSEHtajg9Hq0Zacfm0WWr1A== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR05MB5671 Subject: [dpdk-dev] [PATCH v5] net/vmxnet3: Added mtu_set() function to allow setting MTU. 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" (Picked up from @Charles Myers patch https://patchwork.dpdk.org/patch/57771/) When the mtu_set() function is not implemented, rte_eth_dev_set_mtu() fails with -ENOTSUP and mtu is not stored in the mtu field in the rte_eth_dev_data. This causes the mtu in Vmxnet3_MiscConf which is shared with hypervisor to always be set to 1500. This may cause issues receiving jumbo frames on Enhanced Data Path N-VDS. --- drivers/net/vmxnet3/vmxnet3_ethdev.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/drivers/net/vmxnet3/vmxnet3_ethdev.c b/drivers/net/vmxnet3/vmxnet3_ethdev.c index 705e976..c6e11ad 100644 --- a/drivers/net/vmxnet3/vmxnet3_ethdev.c +++ b/drivers/net/vmxnet3/vmxnet3_ethdev.c @@ -87,6 +87,7 @@ static int vmxnet3_dev_info_get(struct rte_eth_dev *dev, struct rte_eth_dev_info *dev_info); static const uint32_t * vmxnet3_dev_supported_ptypes_get(struct rte_eth_dev *dev); +static int vmxnet3_dev_mtu_set(struct rte_eth_dev *dev, uint16_t mtu); static int vmxnet3_dev_vlan_filter_set(struct rte_eth_dev *dev, uint16_t vid, int on); static int vmxnet3_dev_vlan_offload_set(struct rte_eth_dev *dev, int mask); @@ -124,6 +125,7 @@ static const struct eth_dev_ops vmxnet3_eth_dev_ops = { .mac_addr_set = vmxnet3_mac_addr_set, .dev_infos_get = vmxnet3_dev_info_get, .dev_supported_ptypes_get = vmxnet3_dev_supported_ptypes_get, + .mtu_set = vmxnet3_dev_mtu_set, .vlan_filter_set = vmxnet3_dev_vlan_filter_set, .vlan_offload_set = vmxnet3_dev_vlan_offload_set, .rx_queue_setup = vmxnet3_dev_rx_queue_setup, @@ -1166,6 +1168,8 @@ vmxnet3_dev_info_get(struct rte_eth_dev *dev, dev_info->max_tx_queues = VMXNET3_MAX_TX_QUEUES; dev_info->min_rx_bufsize = 1518 + RTE_PKTMBUF_HEADROOM; dev_info->max_rx_pktlen = 16384; /* includes CRC, cf MAXFRS register */ + dev_info->min_mtu = VMXNET3_MIN_MTU; + dev_info->max_mtu = VMXNET3_MAX_MTU; dev_info->speed_capa = ETH_LINK_SPEED_10G; dev_info->max_mac_addrs = VMXNET3_MAX_MAC_ADDRS; @@ -1212,6 +1216,18 @@ vmxnet3_dev_supported_ptypes_get(struct rte_eth_dev *dev) } static int +vmxnet3_dev_mtu_set(struct rte_eth_dev *dev, __rte_unused uint16_t mtu) +{ + if (dev->data->dev_started) { + PMD_DRV_LOG(ERR, "Port %d must be stopped to configure MTU", + dev->data->port_id); + return -EBUSY; + } + + return 0; +} + +static int vmxnet3_mac_addr_set(struct rte_eth_dev *dev, struct rte_ether_addr *mac_addr) { struct vmxnet3_hw *hw = dev->data->dev_private;