From: Stephen Hemminger <stephen@networkplumber.org>
To: "Gaëtan Rivet" <gaetan.rivet@6wind.com>
Cc: dev@dpdk.org
Subject: Re: [dpdk-dev] [PATCH v4 05/12] net/failsafe: add plug-in support
Date: Thu, 1 Jun 2017 11:00:10 -0700 [thread overview]
Message-ID: <20170601110010.79a147c2@xeon-e3> (raw)
In-Reply-To: <20170601141241.GC18840@bidouze.vm.6wind.com>
On Thu, 1 Jun 2017 16:12:41 +0200
Gaëtan Rivet <gaetan.rivet@6wind.com> wrote:
> On Wed, May 31, 2017 at 08:15:26AM -0700, Stephen Hemminger wrote:
> > On Mon, 29 May 2017 15:42:17 +0200
> > Gaetan Rivet <gaetan.rivet@6wind.com> wrote:
> >
> > > Periodically check for the existence of a device.
> > > If a device has not been initialized and exists on the system, then it
> > > is probed and configured.
> > >
> > > The configuration process strives to synchronize the states between the
> > > plugged-in sub-device and the fail-safe device.
> >
> > There are existing event models (udev and netlink) that could be used to
> > do plug-in support without polling. Polling relies on application doing
> > rte_alarms and many don't.
>
> Indeed. This possibility arose during development.
>
> The main issue with it however is that it introduces an asynchronous
> design, which the DPDK and PMDs underneath are not well-suited to
> interact with. It goes against the grain in a way.
>
> The polling is simple. It can work with all models of device and is
> independent of event models specific to any architecture.
>
> It also allows to simplify the contexts in which probing and
> removal are done. Currently there is only one, the interrupt thread.
> This solves a few possible race conditions without having to resort to
> critical sections.
>
> The only dependency is on another DPDK subsystem, rte_alarm.
> I used alarms here because rte_timers need regular rte_timer_manage()
> calls and there is little way to guarantee the frequency of the calls.
>
> rte_alarms do not force any externalities on applications, thus allowing a
> seamless use of the fail-safe.
>
The issue with rte_alarm and also with LSC interrupt callbacks is that
they don't run on a normal DPDK EAL application thread. These callbacks
run on a DPDK internal pthread. I remember having to do some application
hacks like having the callback generate an internal event on a pipe.
next prev parent reply other threads:[~2017-06-01 18:00 UTC|newest]
Thread overview: 195+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-05-24 15:19 [dpdk-dev] [PATCH v3 00/11] introduce fail-safe PMD Gaetan Rivet
2017-05-24 15:19 ` [dpdk-dev] [PATCH v3 01/11] ethdev: save VLAN filter setting Gaetan Rivet
2017-05-24 15:20 ` [dpdk-dev] [PATCH v3 02/11] ethdev: add deferred intermediate device state Gaetan Rivet
2017-05-24 15:20 ` [dpdk-dev] [PATCH v3 03/11] ethdev: count devices consistently Gaetan Rivet
2017-05-24 15:20 ` [dpdk-dev] [PATCH v3 04/11] net/failsafe: add fail-safe PMD Gaetan Rivet
2017-05-24 15:20 ` [dpdk-dev] [PATCH v3 05/11] net/failsafe: add plug-in support Gaetan Rivet
2017-05-24 15:20 ` [dpdk-dev] [PATCH v3 06/11] net/failsafe: add flexible device definition Gaetan Rivet
2017-05-24 15:20 ` [dpdk-dev] [PATCH v3 07/11] net/failsafe: support flow API Gaetan Rivet
2017-05-24 15:20 ` [dpdk-dev] [PATCH v3 08/11] net/failsafe: support offload capabilities Gaetan Rivet
2017-05-24 15:20 ` [dpdk-dev] [PATCH v3 09/11] net/failsafe: add fast burst functions Gaetan Rivet
2017-05-24 15:20 ` [dpdk-dev] [PATCH v3 10/11] net/failsafe: support link status change event Gaetan Rivet
2017-05-24 15:20 ` [dpdk-dev] [PATCH v3 11/11] net/failsafe: support flow API isolation mode Gaetan Rivet
2017-05-29 13:42 ` [dpdk-dev] [PATCH v4 00/12] introduce fail-safe PMD Gaetan Rivet
2017-05-29 13:42 ` [dpdk-dev] [PATCH v4 01/12] ethdev: save VLAN filter setting Gaetan Rivet
2017-05-29 13:42 ` [dpdk-dev] [PATCH v4 02/12] ethdev: add deferred intermediate device state Gaetan Rivet
2017-05-29 13:42 ` [dpdk-dev] [PATCH v4 03/12] ethdev: count devices consistently Gaetan Rivet
2017-05-29 13:42 ` [dpdk-dev] [PATCH v4 04/12] net/failsafe: add fail-safe PMD Gaetan Rivet
2017-05-31 15:13 ` Stephen Hemminger
2017-06-01 14:01 ` Gaëtan Rivet
2017-06-01 17:57 ` Stephen Hemminger
2017-06-04 23:04 ` Gaëtan Rivet
2017-05-29 13:42 ` [dpdk-dev] [PATCH v4 05/12] net/failsafe: add plug-in support Gaetan Rivet
2017-05-31 15:15 ` Stephen Hemminger
2017-06-01 14:12 ` Gaëtan Rivet
2017-06-01 18:00 ` Stephen Hemminger [this message]
2017-06-04 23:09 ` Gaëtan Rivet
2017-06-05 15:25 ` Stephen Hemminger
2017-05-29 13:42 ` [dpdk-dev] [PATCH v4 06/12] net/failsafe: add flexible device definition Gaetan Rivet
2017-05-31 15:19 ` Stephen Hemminger
2017-06-01 14:24 ` Gaëtan Rivet
2017-05-29 13:42 ` [dpdk-dev] [PATCH v4 07/12] net/failsafe: support flow API Gaetan Rivet
2017-05-31 15:21 ` Stephen Hemminger
2017-06-01 14:28 ` Gaëtan Rivet
2017-06-01 18:02 ` Stephen Hemminger
2017-05-29 13:42 ` [dpdk-dev] [PATCH v4 08/12] net/failsafe: support offload capabilities Gaetan Rivet
2017-05-31 15:23 ` Stephen Hemminger
2017-06-01 14:38 ` Gaëtan Rivet
2017-06-01 14:55 ` Olga Shern
2017-05-29 13:42 ` [dpdk-dev] [PATCH v4 09/12] net/failsafe: add fast burst functions Gaetan Rivet
2017-05-29 13:42 ` [dpdk-dev] [PATCH v4 10/12] net/failsafe: support device removal Gaetan Rivet
2017-05-29 13:42 ` [dpdk-dev] [PATCH v4 11/12] net/failsafe: support link status change event Gaetan Rivet
2017-05-29 13:42 ` [dpdk-dev] [PATCH v4 12/12] net/failsafe: support flow API isolation mode Gaetan Rivet
2017-05-29 14:03 ` [dpdk-dev] [PATCH v4 00/12] introduce fail-safe PMD Ferruh Yigit
2017-05-31 15:24 ` Stephen Hemminger
2017-06-07 17:30 ` Stephen Hemminger
2017-06-07 23:59 ` [dpdk-dev] [PATCH v5 " Gaetan Rivet
2017-06-07 23:59 ` [dpdk-dev] [PATCH v5 01/12] ethdev: save VLAN filter setting Gaetan Rivet
2017-06-07 23:59 ` [dpdk-dev] [PATCH v5 02/12] ethdev: add deferred intermediate device state Gaetan Rivet
2017-06-07 23:59 ` [dpdk-dev] [PATCH v5 03/12] ethdev: count devices consistently Gaetan Rivet
2017-06-07 23:59 ` [dpdk-dev] [PATCH v5 04/12] net/failsafe: add fail-safe PMD Gaetan Rivet
2017-06-28 9:18 ` Thomas Monjalon
2017-06-07 23:59 ` [dpdk-dev] [PATCH v5 05/12] net/failsafe: add plug-in support Gaetan Rivet
2017-06-07 23:59 ` [dpdk-dev] [PATCH v5 06/12] net/failsafe: add flexible device definition Gaetan Rivet
2017-06-07 23:59 ` [dpdk-dev] [PATCH v5 07/12] net/failsafe: support flow API Gaetan Rivet
2017-06-07 23:59 ` [dpdk-dev] [PATCH v5 08/12] net/failsafe: support offload capabilities Gaetan Rivet
2017-06-07 23:59 ` [dpdk-dev] [PATCH v5 09/12] net/failsafe: add fast burst functions Gaetan Rivet
2017-06-08 0:00 ` [dpdk-dev] [PATCH v5 10/12] net/failsafe: support device removal Gaetan Rivet
2017-07-05 6:42 ` Thomas Monjalon
2017-06-08 0:00 ` [dpdk-dev] [PATCH v5 11/12] net/failsafe: support link status change event Gaetan Rivet
2017-07-05 6:43 ` Thomas Monjalon
2017-06-08 0:00 ` [dpdk-dev] [PATCH v5 12/12] net/failsafe: support flow API isolation mode Gaetan Rivet
2017-06-08 10:56 ` [dpdk-dev] [PATCH v5 00/12] introduce fail-safe PMD Ferruh Yigit
2017-06-08 13:30 ` Gaëtan Rivet
2017-06-08 14:20 ` Ferruh Yigit
2017-06-08 14:25 ` Ferruh Yigit
2017-06-08 15:02 ` Gaëtan Rivet
2017-07-07 0:09 ` [dpdk-dev] [PATCH v6 00/22] " Gaetan Rivet
2017-07-07 0:09 ` [dpdk-dev] [PATCH v6 01/22] eal: return device handle upon plugin Gaetan Rivet
2017-07-07 0:09 ` [dpdk-dev] [PATCH v6 02/22] eal: fix hotplug add Gaetan Rivet
2017-07-07 0:09 ` [dpdk-dev] [PATCH v6 03/22] devargs: introduce removal function Gaetan Rivet
2017-07-07 0:09 ` [dpdk-dev] [PATCH v6 04/22] eal: release devargs on device removal Gaetan Rivet
2017-07-07 0:09 ` [dpdk-dev] [PATCH v6 05/22] pci: use given name as generic name Gaetan Rivet
2017-07-07 0:09 ` [dpdk-dev] [PATCH v6 06/22] pci: fix generic driver pointer on probe error Gaetan Rivet
2017-07-07 0:09 ` [dpdk-dev] [PATCH v6 07/22] pci: fix hotplug operations Gaetan Rivet
2017-07-07 0:09 ` [dpdk-dev] [PATCH v6 08/22] vdev: add dev to vdev macro Gaetan Rivet
2017-07-07 0:09 ` [dpdk-dev] [PATCH v6 09/22] vdev: implement plug operation Gaetan Rivet
2017-07-07 0:09 ` [dpdk-dev] [PATCH v6 10/22] bus: remove useless plug parameter Gaetan Rivet
2017-07-07 0:09 ` [dpdk-dev] [PATCH v6 11/22] ethdev: save VLAN filter setting Gaetan Rivet
2017-07-07 0:09 ` [dpdk-dev] [PATCH v6 12/22] ethdev: add deferred intermediate device state Gaetan Rivet
2017-07-07 0:09 ` [dpdk-dev] [PATCH v6 13/22] ethdev: count devices consistently Gaetan Rivet
[not found] ` <cover.1499384906.git.gaetan.rivet@6wind.com>
2017-07-07 0:09 ` [dpdk-dev] [PATCH v6 11/23] ethdev: add flow API rule copy function Gaetan Rivet
2017-07-07 0:09 ` [dpdk-dev] [PATCH v6 12/23] ethdev: save VLAN filter setting Gaetan Rivet
2017-07-07 0:09 ` [dpdk-dev] [PATCH v6 13/23] ethdev: add deferred intermediate device state Gaetan Rivet
2017-07-07 0:09 ` [dpdk-dev] [PATCH v6 14/23] ethdev: count devices consistently Gaetan Rivet
2017-07-07 0:09 ` [dpdk-dev] [PATCH v6 15/23] net/failsafe: add fail-safe PMD Gaetan Rivet
2017-07-07 0:09 ` [dpdk-dev] [PATCH v6 16/23] net/failsafe: add plug-in support Gaetan Rivet
2017-07-07 0:09 ` [dpdk-dev] [PATCH v6 17/23] net/failsafe: add flexible device definition Gaetan Rivet
2017-07-07 0:09 ` [dpdk-dev] [PATCH v6 18/23] net/failsafe: support flow API Gaetan Rivet
2017-07-07 0:09 ` [dpdk-dev] [PATCH v6 19/23] net/failsafe: support offload capabilities Gaetan Rivet
2017-07-07 0:09 ` [dpdk-dev] [PATCH v6 20/23] net/failsafe: add fast burst functions Gaetan Rivet
2017-07-07 0:09 ` [dpdk-dev] [PATCH v6 21/23] net/failsafe: support device removal Gaetan Rivet
2017-07-07 0:09 ` [dpdk-dev] [PATCH v6 22/23] net/failsafe: support link status change event Gaetan Rivet
2017-07-07 0:09 ` [dpdk-dev] [PATCH v6 23/23] net/failsafe: support flow API isolation mode Gaetan Rivet
2017-07-07 0:09 ` [dpdk-dev] [PATCH v6 14/22] net/failsafe: add fail-safe PMD Gaetan Rivet
2017-07-07 0:09 ` [dpdk-dev] [PATCH v6 15/22] net/failsafe: add plug-in support Gaetan Rivet
2017-07-07 0:09 ` [dpdk-dev] [PATCH v6 16/22] net/failsafe: add flexible device definition Gaetan Rivet
2017-07-07 0:09 ` [dpdk-dev] [PATCH v6 17/22] net/failsafe: support flow API Gaetan Rivet
2017-07-07 0:09 ` [dpdk-dev] [PATCH v6 18/22] net/failsafe: support offload capabilities Gaetan Rivet
2017-07-07 0:09 ` [dpdk-dev] [PATCH v6 19/22] net/failsafe: add fast burst functions Gaetan Rivet
2017-07-07 0:09 ` [dpdk-dev] [PATCH v6 20/22] net/failsafe: support device removal Gaetan Rivet
2017-07-07 0:09 ` [dpdk-dev] [PATCH v6 21/22] net/failsafe: support link status change event Gaetan Rivet
2017-07-07 0:09 ` [dpdk-dev] [PATCH v6 22/22] net/failsafe: support flow API isolation mode Gaetan Rivet
2017-07-07 10:05 ` [dpdk-dev] [PATCH v6 00/22] introduce fail-safe PMD Ferruh Yigit
2017-07-07 10:08 ` Gaëtan Rivet
2017-07-09 1:47 ` [dpdk-dev] [PATCH v7 00/11] " Gaetan Rivet
2017-07-09 1:47 ` [dpdk-dev] [PATCH v7 01/11] ethdev: add deferred intermediate device state Gaetan Rivet
2017-07-09 1:47 ` [dpdk-dev] [PATCH v7 02/11] ethdev: count devices consistently Gaetan Rivet
2017-07-09 1:47 ` [dpdk-dev] [PATCH v7 03/11] net/failsafe: add fail-safe PMD Gaetan Rivet
2017-07-09 11:10 ` Jan Blunck
2017-07-09 12:35 ` Gaëtan Rivet
2017-07-09 15:02 ` Thomas Monjalon
2017-07-09 1:47 ` [dpdk-dev] [PATCH v7 04/11] net/failsafe: add plug-in support Gaetan Rivet
2017-07-09 1:47 ` [dpdk-dev] [PATCH v7 05/11] net/failsafe: add flexible device definition Gaetan Rivet
2017-07-09 1:47 ` [dpdk-dev] [PATCH v7 06/11] net/failsafe: support flow API Gaetan Rivet
2017-07-09 1:47 ` [dpdk-dev] [PATCH v7 07/11] net/failsafe: support offload capabilities Gaetan Rivet
2017-07-09 1:47 ` [dpdk-dev] [PATCH v7 08/11] net/failsafe: add fast burst functions Gaetan Rivet
2017-07-09 1:47 ` [dpdk-dev] [PATCH v7 09/11] net/failsafe: support device removal Gaetan Rivet
2017-07-09 1:47 ` [dpdk-dev] [PATCH v7 10/11] net/failsafe: support link status change event Gaetan Rivet
2017-07-09 1:47 ` [dpdk-dev] [PATCH v7 11/11] net/failsafe: support flow API isolation mode Gaetan Rivet
2017-07-10 23:19 ` [dpdk-dev] [PATCH v8 00/11] introduce fail-safe PMD Gaetan Rivet
2017-07-10 23:19 ` [dpdk-dev] [PATCH v8 01/11] ethdev: add deferred intermediate device state Gaetan Rivet
2017-07-10 23:19 ` [dpdk-dev] [PATCH v8 02/11] ethdev: count devices consistently Gaetan Rivet
2017-07-10 23:19 ` [dpdk-dev] [PATCH v8 03/11] net/failsafe: add fail-safe PMD Gaetan Rivet
2017-07-11 19:57 ` Thomas Monjalon
2017-07-11 21:48 ` Gaëtan Rivet
2017-07-11 22:21 ` Thomas Monjalon
2017-07-11 22:25 ` Gaëtan Rivet
2017-07-10 23:19 ` [dpdk-dev] [PATCH v8 04/11] net/failsafe: add plug-in support Gaetan Rivet
2017-07-10 23:19 ` [dpdk-dev] [PATCH v8 05/11] net/failsafe: add flexible device definition Gaetan Rivet
2017-07-10 23:19 ` [dpdk-dev] [PATCH v8 06/11] net/failsafe: support flow API Gaetan Rivet
2017-07-10 23:19 ` [dpdk-dev] [PATCH v8 07/11] net/failsafe: support offload capabilities Gaetan Rivet
2017-07-10 23:19 ` [dpdk-dev] [PATCH v8 08/11] net/failsafe: add fast burst functions Gaetan Rivet
2017-07-10 23:19 ` [dpdk-dev] [PATCH v8 09/11] net/failsafe: support device removal Gaetan Rivet
2017-07-10 23:19 ` [dpdk-dev] [PATCH v8 10/11] net/failsafe: support link status change event Gaetan Rivet
2017-07-10 23:19 ` [dpdk-dev] [PATCH v8 11/11] net/failsafe: support flow API isolation mode Gaetan Rivet
2017-07-11 23:26 ` [dpdk-dev] [PATCH v9 00/11] introduce fail-safe PMD Gaetan Rivet
2017-07-11 23:26 ` [dpdk-dev] [PATCH v9 01/11] ethdev: add deferred intermediate device state Gaetan Rivet
2017-07-11 23:26 ` [dpdk-dev] [PATCH v9 02/11] ethdev: count devices consistently Gaetan Rivet
2017-07-11 23:26 ` [dpdk-dev] [PATCH v9 03/11] net/failsafe: add fail-safe PMD Gaetan Rivet
2017-07-13 7:43 ` Thomas Monjalon
2017-07-11 23:26 ` [dpdk-dev] [PATCH v9 04/11] net/failsafe: add plug-in support Gaetan Rivet
2017-07-11 23:26 ` [dpdk-dev] [PATCH v9 05/11] net/failsafe: add flexible device definition Gaetan Rivet
2017-07-11 23:26 ` [dpdk-dev] [PATCH v9 06/11] net/failsafe: support flow API Gaetan Rivet
2017-07-11 23:26 ` [dpdk-dev] [PATCH v9 07/11] net/failsafe: support offload capabilities Gaetan Rivet
2017-07-11 23:26 ` [dpdk-dev] [PATCH v9 08/11] net/failsafe: add fast burst functions Gaetan Rivet
2017-07-11 23:26 ` [dpdk-dev] [PATCH v9 09/11] net/failsafe: support device removal Gaetan Rivet
2017-07-11 23:26 ` [dpdk-dev] [PATCH v9 10/11] net/failsafe: support link status change event Gaetan Rivet
2017-07-11 23:26 ` [dpdk-dev] [PATCH v9 11/11] net/failsafe: support flow API isolation mode Gaetan Rivet
2017-07-15 17:57 ` [dpdk-dev] [PATCH v10 00/11] introduce fail-safe PMD Gaetan Rivet
2017-07-15 17:57 ` [dpdk-dev] [PATCH v10 01/11] ethdev: add deferred intermediate device state Gaetan Rivet
2017-07-15 17:57 ` [dpdk-dev] [PATCH v10 02/11] ethdev: count devices consistently Gaetan Rivet
2017-07-17 13:58 ` Ferruh Yigit
2017-07-15 17:57 ` [dpdk-dev] [PATCH v10 03/11] net/failsafe: add fail-safe PMD Gaetan Rivet
2017-07-16 15:58 ` Thomas Monjalon
2017-07-16 20:00 ` Gaëtan Rivet
2017-07-17 13:56 ` Ferruh Yigit
2017-07-17 17:11 ` Gaëtan Rivet
2017-07-17 23:17 ` Gaëtan Rivet
2017-07-18 10:13 ` Ferruh Yigit
2017-07-18 11:01 ` Gaëtan Rivet
2017-07-15 17:57 ` [dpdk-dev] [PATCH v10 04/11] net/failsafe: add plug-in support Gaetan Rivet
2017-07-15 17:57 ` [dpdk-dev] [PATCH v10 05/11] net/failsafe: add flexible device definition Gaetan Rivet
2017-07-17 15:45 ` Ferruh Yigit
2017-07-17 15:52 ` Gaëtan Rivet
2017-07-17 16:04 ` Ferruh Yigit
2017-07-15 17:57 ` [dpdk-dev] [PATCH v10 06/11] net/failsafe: support flow API Gaetan Rivet
2017-07-17 16:03 ` Ferruh Yigit
2017-07-17 16:19 ` Gaëtan Rivet
2017-07-17 16:34 ` Ferruh Yigit
2017-07-17 17:15 ` Gaëtan Rivet
2017-07-15 17:57 ` [dpdk-dev] [PATCH v10 07/11] net/failsafe: support offload capabilities Gaetan Rivet
2017-07-17 16:22 ` Ferruh Yigit
2017-07-17 22:47 ` Gaëtan Rivet
2017-07-15 17:57 ` [dpdk-dev] [PATCH v10 08/11] net/failsafe: add fast burst functions Gaetan Rivet
2017-07-15 17:57 ` [dpdk-dev] [PATCH v10 09/11] net/failsafe: support device removal Gaetan Rivet
2017-07-15 17:57 ` [dpdk-dev] [PATCH v10 10/11] net/failsafe: support link status change event Gaetan Rivet
2017-07-15 17:57 ` [dpdk-dev] [PATCH v10 11/11] net/failsafe: support flow API isolation mode Gaetan Rivet
2017-07-18 12:48 ` [dpdk-dev] [PATCH v11 00/11] introduce fail-safe PMD Gaetan Rivet
2017-07-18 12:48 ` [dpdk-dev] [PATCH v11 01/11] ethdev: add deferred intermediate device state Gaetan Rivet
2017-07-18 16:04 ` Thomas Monjalon
2017-07-18 12:48 ` [dpdk-dev] [PATCH v11 02/11] ethdev: count devices consistently Gaetan Rivet
2017-07-18 16:04 ` Thomas Monjalon
2017-07-18 12:48 ` [dpdk-dev] [PATCH v11 03/11] net/failsafe: add fail-safe PMD Gaetan Rivet
2017-07-18 12:48 ` [dpdk-dev] [PATCH v11 04/11] net/failsafe: add plug-in support Gaetan Rivet
2017-07-18 12:48 ` [dpdk-dev] [PATCH v11 05/11] net/failsafe: add flexible device definition Gaetan Rivet
2017-07-18 12:48 ` [dpdk-dev] [PATCH v11 06/11] net/failsafe: support flow API Gaetan Rivet
2017-07-18 12:48 ` [dpdk-dev] [PATCH v11 07/11] net/failsafe: support Rx offload capabilities Gaetan Rivet
2017-07-18 12:48 ` [dpdk-dev] [PATCH v11 08/11] net/failsafe: add fast burst functions Gaetan Rivet
2017-07-18 12:48 ` [dpdk-dev] [PATCH v11 09/11] net/failsafe: support device removal Gaetan Rivet
2017-07-18 12:48 ` [dpdk-dev] [PATCH v11 10/11] net/failsafe: support link status change event Gaetan Rivet
2017-07-18 12:48 ` [dpdk-dev] [PATCH v11 11/11] net/failsafe: support flow API isolation mode Gaetan Rivet
2017-07-18 16:08 ` [dpdk-dev] [PATCH v11 00/11] introduce fail-safe PMD Ferruh Yigit
2017-08-03 13:00 ` Ferruh Yigit
2017-08-03 13:49 ` Gaëtan Rivet
2017-08-03 15:48 ` Ferruh Yigit
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20170601110010.79a147c2@xeon-e3 \
--to=stephen@networkplumber.org \
--cc=dev@dpdk.org \
--cc=gaetan.rivet@6wind.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).