From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-wr0-f174.google.com (mail-wr0-f174.google.com [209.85.128.174]) by dpdk.org (Postfix) with ESMTP id 79CA72BC8 for ; Thu, 3 Aug 2017 15:49:31 +0200 (CEST) Received: by mail-wr0-f174.google.com with SMTP id 12so6000495wrb.1 for ; Thu, 03 Aug 2017 06:49:31 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=6wind-com.20150623.gappssmtp.com; s=20150623; h=date:from:to:cc:subject:message-id:references:mime-version :content-disposition:content-transfer-encoding:in-reply-to :user-agent; bh=jqxB30g0yl06H7KjiHiDB5CCDM2kys1NdXB70OnsWi8=; b=FPbEyuRhh2DBwrqw1KCH6HJSjtEkMi1Chy7+gEeRHzNE3uRvldDiEWsHl7LjpkKkVu Bm9WfqA4DEX7EZKxs7vvbvC5MyIrxx5aL21Gtu57Uju04cDdMa59hNfxhW6Z+URMZZxW dPghmIZbavtVWSKVjkG+J14gA9yy5qvKq1YrMY7aQu3ByRW3FQ8Bm88WfKddVe86gdCA c1gZgtRGRLk/8LyMtwfz8FGKs2tU2QhcibNcVQrA7HXMvIbiYkICa7y86k2NdaiDZmT5 ztnuPn648qpEi8WouGQGKy6uhiy2zXAFnPpITq5GL3yS62M2dlSNkWZXBThwGToNYs3l MmwQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:content-transfer-encoding :in-reply-to:user-agent; bh=jqxB30g0yl06H7KjiHiDB5CCDM2kys1NdXB70OnsWi8=; b=JXYP0tVZBOnBDp3mrlwLnoIUnwkk450hpLIwgS86XQWEgVuJjcuvQrj3UuHOzAPmMp oi/pL3SFkhLI7jT0vTJ1x9icdJoRNUvHgh+2aes5o4jeI6ZJw8S9PEuCLHHw9tuqEwJx PimYOmH4GpgI0/pcfUbD126tzPGn8K9256iFdAycTqwm0qhcTS4QSTDWXE8vdNwiVWOa jSpMMQxdf/Qey9kpO4y9LslJ2LqEoYL5ZUdeueXn4AicGH2tiIEtqgt5e5IoJLFukgQM Ki/v1DjOHIZZToKp1HVsT3zcH9CR648jhlDjkZL4pG9Xu1k3H4lijchH4V8DhUojaZbB cMiw== X-Gm-Message-State: AIVw110zJPOLqknY8vrvz9Ewxw51hLTiC7GhK2/jqUWH3ZkVT4Fsj29h MMu7q3KGRInxTY2V X-Received: by 10.223.176.57 with SMTP id f54mr1324465wra.194.1501768170898; Thu, 03 Aug 2017 06:49:30 -0700 (PDT) Received: from bidouze.vm.6wind.com (host.78.145.23.62.rev.coltfrance.com. [62.23.145.78]) by smtp.gmail.com with ESMTPSA id e9sm2404624wmi.40.2017.08.03.06.49.29 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 03 Aug 2017 06:49:29 -0700 (PDT) Date: Thu, 3 Aug 2017 15:49:21 +0200 From: =?iso-8859-1?Q?Ga=EBtan?= Rivet To: Ferruh Yigit Cc: dev@dpdk.org Message-ID: <20170803134920.GF8124@bidouze.vm.6wind.com> References: <63b3e33c-cc68-7a9a-c41c-91ff2ada50ff@intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <63b3e33c-cc68-7a9a-c41c-91ff2ada50ff@intel.com> User-Agent: Mutt/1.5.23 (2014-03-12) Subject: Re: [dpdk-dev] [PATCH v11 00/11] introduce fail-safe PMD 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: , X-List-Received-Date: Thu, 03 Aug 2017 13:49:31 -0000 On Thu, Aug 03, 2017 at 02:00:15PM +0100, Ferruh Yigit wrote: > On 7/18/2017 5:08 PM, Ferruh Yigit wrote: > > On 7/18/2017 1:48 PM, Gaetan Rivet wrote: > >> This PMD intercepts and manages Ethernet device removal events issued by > >> slave PMDs and re-initializes them transparently when brought back so that > >> existing applications do not need to be modified to benefit from true > >> hot-plugging support. > >> > >> The stacked PMD approach shares many similarities with the bonding PMD but > >> with a different purpose. While bonding provides the ability to group > >> several links into a single logical device for enhanced throughput and > >> supports fail-over at link level, this one manages the sudden disappearance > >> of the underlying device; it guarantees applications face a valid device in > >> working order at all times. > >> > >> Each fail-safe instance is configured to run atop one or several > >> devices, with one defined as the preferred device. Hot-plug events are > >> handled on all of them, and Tx is always directed to the preferred device > >> if present or to the next available failover device (Rx is always performed > >> on all devices for simplicity). > >> > >> Moreover, the configured slaves (preferred or failover) do not need to be > >> present at initialization time and may appear later. > >> > >> Slaves configuration is continuously synchronized with that of the virtual > >> device, which exposes their common set of capabilities to the application. > >> Failure to apply the current configuration state to a slave for any reason > >> simply reschedules its initialization. > >> > >> This patchset depends on: > >> > >> [dpdk-dev] [PATCH v4 0/8] fix hotplug API > >> http://dpdk.org/ml/archives/dev/2017-July/071340.html > >> > >> v1 --> v2: > >> > >> - Wrote documentation > >> - Fixed commit logs, signed-off-by > >> - Added LSC event support > >> - A few minor fixes > >> > >> v2 --> v3: > >> > >> - Numerous bug fixes. > >> - Complete sub-EAL rework to follow new bus API. > >> - burst protection on sub removal. > >> - more flexible sub definition. > >> - flow isolated mode support. > >> > >> v3 --> v4: > >> > >> - Split back commits > >> net/failsafe: add fast burst functions > >> net/failsafe: support device removal > >> That were squashed by error during a rebase > >> - Fix segfault on port plugin > >> - Fix isolate mode support for MLX4 ports plugin > >> > >> v4 --> v5: > >> > >> - Follow new plug / unplug API. > >> > >> v5 --> v6: > >> > >> - Follow new hotplug API. > >> - Improve usability of hotplug API. > >> - Fix rte_dev hotplug API implementation. > >> - Introduce rte_eal_devargs_rmv API as EXPERIMENTAL. > >> - Use it to clean up resources on hotplug_remove. > >> - Fix hotplug implementation and support un pci bus. > >> The scan was not idempotent, nor clean. > >> Neither were the device fields. > >> - Implement plug operation for vdev bus. > >> This is needed for hotplug support and to make the EAL > >> independent from vdev-specific API. > >> - Remove useless parameters from plug / unplug API. > >> > >> This patchset is fairly big and complex. The hotplug API has been rushed and > >> has never been tested outside of the special case of vdev bus. > >> > >> These evolutions are proposed alongside this PMD as only this PMD allows to test > >> this API at the moment, and without those evolutions this PMD cannot be used. > >> > >> v6 --> v7 > >> > >> - Split the series in three, with > >> vlan filter configuration store standing alone > >> Hotplug API fixes separated > >> Fail-safe PMD on its own. > >> > >> These changes should ease integration. > >> > >> v7 --> v8 > >> > >> - Fix usage examples in documentation. > >> - Use rte_eth_dev_allocated when relevant. > >> > >> v8 --> v9 > >> > >> - Use calloc instead of rte_realloc for command line parsing. > >> - Include errno only when necessary. > >> > >> v9 --> v10 > >> > >> - Fix rte_flow description double-free issue. > >> Thanks Raslan for finding the issue :) > >> - Use RTE_ASSERT instead of assert. > >> Integrate the debug log of the fail-safe to > >> RTE_LOG_DEBUG macro as well, allowing dynamic log levels. > >> - Remove devices post-state-sync during slave upkeep, > >> to avoid a useless early probe attempt. > >> > >> v10 --> v11 > >> > >> - Added Glossary in documentation. > >> - Fixed issues oulined in [1]. > >> - Removed Rx offload advertizement in feature matrix. > >> > >> [1]: http://dpdk.org/ml/archives/dev/2017-July/071406.html > >> > >> Gaetan Rivet (11): > >> ethdev: add deferred intermediate device state > >> ethdev: count devices consistently > >> net/failsafe: add fail-safe PMD > >> net/failsafe: add plug-in support > >> net/failsafe: add flexible device definition > >> net/failsafe: support flow API > >> net/failsafe: support Rx offload capabilities > >> net/failsafe: add fast burst functions > >> net/failsafe: support device removal > >> net/failsafe: support link status change event > >> net/failsafe: support flow API isolation mode > > > > Series applied to dpdk-next-net/master, thanks. > > Hi Gaetan, > > Can you please send a patch to update release notes to announce the new PMD? > Hi Ferruh, Sure > And can you also send a web page to list the PMD within supported NICs [1]? > How can I do that? Is there a git repository for dpdk.org I can propose a patch for? > Thanks, > ferruh > > [1] > http://dpdk.org/doc/nics -- Gaëtan Rivet 6WIND