From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-lb0-f196.google.com (mail-lb0-f196.google.com [209.85.217.196]) by dpdk.org (Postfix) with ESMTP id 676512BA0 for ; Wed, 9 Mar 2016 21:57:46 +0100 (CET) Received: by mail-lb0-f196.google.com with SMTP id gn5so6364280lbc.3 for ; Wed, 09 Mar 2016 12:57:46 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:from:date:message-id :subject:to:cc; bh=J3eumB7IdfJ0K6TE8myLOPJCF5SPr98GZt2vGgujj+g=; b=tK+ot9iJOt7MQrpz2714J00dMubTewsHIhhnn6RxmWWgqpXWOgst7/6n2RSRQ+0dJw rgW5vRn00PFzkNBzeOHyNIdFtSHWnLBbWyGc7pSSZ/Uzzc4OduTkaEchtxEYGqt0FwVr 3BNghhQRL29wLcJujc3syncdbcH944eBxvwL5gFTtIL2LrZbpszZOMnDt1sZc3NxSDgx 7+cbRcCdZIFWLkdpCwFhLBrPy3lEbVX0irBD54gWujQIjEzkhvl/041fsVcw+0A3MWKt i/h51eVDuusuHnTYgP1neQPE+RIbP40ZaqBM7cCY4ahy/i3Hrxa3fF/UJrjss6IP00F4 xyrQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:sender:in-reply-to:references:from :date:message-id:subject:to:cc; bh=J3eumB7IdfJ0K6TE8myLOPJCF5SPr98GZt2vGgujj+g=; b=jie/9viflhQtGpSeMkrPfgqEiVwnN8YzFFILauMIrxpDa6puLVckg8Mg1W7dqg2crc HNtfuYL9s0YKtyzGEbDLjlokV2Uyp7jRIAncKZ6P5YTnaa6mGoG9ddxEzz8yiFrfxkRA eh1LKxFwuanMjT4VvZqh+YW2laOYaqKXXY64ZrPM6qkIZ6hhQfQwGJtPq5XiWqXSlu3r o37ppVXI6v3PNkcypgVgRnm/9OJPY7AYz79zkCrqPJOEo2jCnmD2kbEuZulMz2fUAW9L KKQ5T9ky2XAUOmzfEUNfLhcSJ7zsPSVKM1zvXbPtE+AGnCYwI1tfSXxtv6gNAZU+lXHI nYIw== X-Gm-Message-State: AD7BkJI72+XYVR7DIsv4pNe7/AZChZNjV/lSUGncvBYaY4z1ElHpS4+/PEx07MkyuAZumtutxs/5S9OD09m/nw== X-Received: by 10.112.51.48 with SMTP id h16mr98965lbo.7.1457557066042; Wed, 09 Mar 2016 12:57:46 -0800 (PST) MIME-Version: 1.0 Sender: marc.sune@gmail.com Received: by 10.112.155.196 with HTTP; Wed, 9 Mar 2016 12:57:26 -0800 (PST) In-Reply-To: <20160309100907.GO27714@autoinstall.dev.6wind.com> References: <1455488259-1000-1-git-send-email-marcdevel@gmail.com> <1456793151-1475-1-git-send-email-marcdevel@gmail.com> <20160308165305.GK27714@autoinstall.dev.6wind.com> <20160309092938.GN27714@autoinstall.dev.6wind.com> <20160309100907.GO27714@autoinstall.dev.6wind.com> From: Marc Date: Wed, 9 Mar 2016 21:57:26 +0100 X-Google-Sender-Auth: FxjrUqmgOadRCGW55RFjjlg5f14 Message-ID: To: =?UTF-8?Q?N=C3=A9lio_Laranjeiro?= Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Content-Filtered-By: Mailman/MimeDel 2.1.15 Cc: "dev@dpdk.org" Subject: Re: [dpdk-dev] [PATCH v9 0/4] ethdev: add speed capabilities and refactor link API X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 09 Mar 2016 20:57:46 -0000 On 9 March 2016 at 11:09, N=C3=A9lio Laranjeiro wrote: > On Wed, Mar 09, 2016 at 10:29:38AM +0100, N=C3=A9lio Laranjeiro wrote: > > On Tue, Mar 08, 2016 at 05:53:05PM +0100, N=C3=A9lio Laranjeiro wrote: > > > On Tue, Mar 08, 2016 at 04:00:29PM +0100, Marc Sune wrote: > > > > 2016-03-01 1:45 GMT+01:00 Marc Sune : > > > > > > > > > The current rte_eth_dev_info abstraction does not provide any > mechanism to > > > > > get the supported speed(s) of an ethdev. > > > > > > > > > > For some drivers (e.g. ixgbe), an educated guess could be done > based on the > > > > > driver's name (driver_name in rte_eth_dev_info), see: > > > > > > > > > > http://dpdk.org/ml/archives/dev/2013-August/000412.html > > > > > > > > > > However, i) doing string comparisons is annoying, and can silentl= y > > > > > break existing applications if PMDs change their names ii) it doe= s > not > > > > > provide all the supported capabilities of the ethdev iii) for som= e > drivers > > > > > it > > > > > is impossible determine correctly the (max) speed by the > application > > > > > (e.g. in i40, distinguish between XL710 and X710). > > > > > > > > > > In addition, the link APIs do not allow to define a set of > advertised link > > > > > speeds for autonegociation. > > > > > > > > > > This series of patches adds the following capabilities: > > > > > > > > > > * speed_capa bitmap in rte_eth_dev_info, which is filled by the > PMDs > > > > > according to the physical device capabilities. > > > > > * refactors link API in ethdev to allow the definition of the > advertised > > > > > link speeds, fix speed (no auto-negociation) or advertise all > supported > > > > > speeds (default). > > > > > > > > > > WARNING: this patch series, specifically 3/4, is NOT tested for > most of the > > > > > PMDs, due to the lack of hardware. Only generic EM is tested (VM)= . > > > > > Reviewing > > > > > and testing required by PMD maintainers. > > > > > > > > > > * * * * * > > > > > > > > > > v2: rebase, converted speed_capa into 32 bits bitmap, fixed > alignment > > > > > (checkpatch). > > > > > > > > > > v3: rebase to v2.1. unified ETH_LINK_SPEED and ETH_SPEED_CAP into > > > > > ETH_SPEED. > > > > > Converted field speed in struct rte_eth_conf to speed, to > allow a > > > > > bitmap > > > > > for defining the announced speeds, as suggested M. Brorup. > Fixed > > > > > spelling > > > > > issues. > > > > > > > > > > v4: fixed errata in the documentation of field speeds of > rte_eth_conf, and > > > > > commit 1/2 message. rebased to v2.1.0. v3 was incorrectly > based on > > > > > ~2.1.0-rc1. > > > > > > > > > > v5: revert to v2 speed capabilities patch. Fixed MLX4 speed > capabilities > > > > > (thanks N. Laranjeiro). Refactored link speed API to allow > setting > > > > > advertised speeds (3/4). Added NO_AUTONEG option to > explicitely disable > > > > > auto-negociation. Updated 2.2 rel. notes (4/4). Rebased to > current > > > > > HEAD. > > > > > > > > > > v6: Move link_duplex to be part of bitfield. Fixed i40 autoneg > flag link > > > > > update code. Added rte_eth_speed_to_bm_flag() to .map file. > Fixed other > > > > > spelling issues. Rebased to current HEAD. > > > > > > > > > > v7: Rebased to current HEAD. Moved documentation to v2.3. Still > needs > > > > > testing > > > > > from PMD maintainers. > > > > > > > > > > v8: Rebased to current HEAD. Modified em driver impl. to not touc= h > base > > > > > files. > > > > > Merged patch 5 into 3 (map file). Changed numeric speed to a > 64 bit > > > > > value. > > > > > Filled-in speed capabilities for drivers bnx2x, cxgbe, mlx5 > and nfp in > > > > > addition to the ones of previous patch sets. > > > > > > > > > > v9: rebased to current HEAD. Reverted numeric speed to 32 bit in > struct > > > > > rte_eth_link (no atomic link get > 64bit). Fixed mlx5 driver > > > > > compilation > > > > > and link speeds. Moved documentation to release_16_04.rst and > fixed > > > > > several > > > > > issues. Upgrade NIC notes with speed capabilities. > > > > > > > > > > > > > Anyone interested in reviewing and _testing_ this series? > > > > > > > > Thank you > > > > Marc > > > > > > Hi Marc, > > > > > > I will take a look tomorrow morning and run test on Mellanox NICs > > > (ConnectX 3 and 4). > > > > > > I do not have access to the others NICs, if those who have can do > > > it, could be really great. > > > > > > Regards, > > > > It works as expected with Mellanox NICs. > > > > Regards, > > > > -- > > N=C3=A9lio Laranjeiro > > 6WIND > > Tested-by: Nelio Laranjeiro > > - OS/Kernel: Debian 8/3.16.0-4-amd64 > - GCC: gcc (Debian 4.9.2-10) 4.9.2 > - CPU: Intel(R) Xeon(R) CPU E5-2697 v2 @ 2.70GHz > - MLNX OFED: 3.2-2.0.0.0 > - NIC: ConnectX 4 100G > > - OS/Kernel: Debian 7/3.16.0-0.bpo.4-amd64 > - GCC: gcc (Debian 4.7.2-5) 4.7.2 > - CPU: Intel(R) Xeon(R) CPU E5-2648L 0 @ 1.80GHz > - MLNX OFED: 3.2-2.0.0.0 > - NIC: ConnectX 3 Pro > > > 1. Link displayed at the correct negotiated speed: > - 40Gbps for ConnectX3 Pro > - 100Gbps for ConnectX4 100G > - 40Gbps for ConnectX4 100G on a 40G link. > > 2. Configuring speed: > - Not supported yet for Mellanox as expected. > Thanks Neilo, It would be good that at least i40 and e1000/ixgbe is tested and acked, specially for the speed config part. Some more reviews would also help. Marc > > -- > N=C3=A9lio Laranjeiro > 6WIND >