From: Stephen Hemminger <stephen@networkplumber.org>
To: Tyler Retzlaff <roretzla@linux.microsoft.com>
Cc: David Marchand <david.marchand@redhat.com>,
dev@dpdk.org, thomas@monjalon.net, bruce.richardson@intel.com,
kevin.laatz@intel.com, Parav Pandit <parav@nvidia.com>,
Xueming Li <xuemingl@nvidia.com>,
Hemant Agrawal <hemant.agrawal@nxp.com>,
Sachin Saxena <sachin.saxena@oss.nxp.com>,
Rosen Xu <rosen.xu@intel.com>,
Stephen Hemminger <sthemmin@microsoft.com>,
Long Li <longli@microsoft.com>, Chas Williams <chas3@att.com>,
"Min Hu (Connor)" <humin29@huawei.com>,
Matan Azrad <matan@nvidia.com>, Ray Kinsella <mdr@ashroe.eu>,
Ferruh Yigit <ferruh.yigit@xilinx.com>,
Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru>
Subject: Re: [RFC PATCH 11/11] bus: hide bus object
Date: Tue, 28 Jun 2022 10:38:27 -0700 [thread overview]
Message-ID: <20220628103827.5060e318@hermes.local> (raw)
In-Reply-To: <20220628170712.GC17875@linuxonhyperv3.guj3yctzbm1etfxqx2vob5hsef.xx.internal.cloudapp.net>
On Tue, 28 Jun 2022 10:07:12 -0700
Tyler Retzlaff <roretzla@linux.microsoft.com> wrote:
> > > to avoid people tripping over mishandling pointers in/out of the api
> > > surface taking the opaque object you could declare opaque handle for the
> > > api to operate on instead. it would force the use of a cast in the
> > > implementation but would avoid accidental void * of the wrong thing that
> > > got cached being passed in. if the cast was really undesirable just
> > > whack it under an inline / internal function.
> >
> > I don't like that because it least to dangerous casts in the internal code.
> > Better to keep the the type of the object. As long as the API only passes
> > around an pointer to a struct, without exposing the contents of the struct;
> > it is safer and easier to debug.
>
> as i mentioned you can use an inline/internal function or even a macro
> to hide the cast, you could provide some additional integrity checks
> here if desired as a value add.
>
> the fact that you expose that it is a struct is an internal
> implementation detail, if truly opaque tomorrow you could convert it
> to a simple integer that indexes or enumerates something and prevents
> any meaningful interpretation in the application.
>
> when you say it is safer to debug i think you mean for dpdk devs not the
> application developer because unless the app developer does something
> really gross/dangerous casting they really can't "mishandle" the opaque
> object except to use one that isn't initialized at all which we
> can detect and handle internally in a general way.
>
> i will however concede there would be slightly more finger work when
> debugging dpdk itself since gdb / debugger doesn't automatically infer
> type so you end up having to tell gdb what is in the uintptr_t.
>
> anyway just drawing from experience in the driver frameworks we maintain
> in windows, i think one of our regrets is that we didn't do this from
> day 1 and subsequentl that we initially only used one opaque type
> instead of defining separate (not implicitly convertable) types to each
> opaque type.
It seems to be a difference in style/taste.
The Linux/Unix side prefers opaque structure pointers.
Windows (and LLVM) uses numeric handles.
At this point DPDK should follow the Linux bus.
next prev parent reply other threads:[~2022-06-28 17:38 UTC|newest]
Thread overview: 231+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-06-28 14:46 [RFC PATCH 00/11] Bus cleanup for 22.11 David Marchand
2022-06-28 14:46 ` [RFC PATCH 01/11] common/mlx5: rework check on driver registration David Marchand
2022-06-28 14:46 ` [RFC PATCH 02/11] raw/ifpga: remove PCI bus accessor David Marchand
2022-06-28 14:46 ` [RFC PATCH 03/11] dev: hide debug messages in device iterator David Marchand
2022-06-28 14:46 ` [RFC PATCH 04/11] dev: move unrelated macros from header David Marchand
2022-06-28 14:46 ` [RFC PATCH 05/11] devargs: remove dependency on bus header David Marchand
2022-06-28 14:46 ` [RFC PATCH 06/11] bus: remove unneeded inclusion of " David Marchand
2022-06-28 14:46 ` [RFC PATCH 07/11] bus: move IOVA definition from header David Marchand
2022-06-28 14:46 ` [RFC PATCH 08/11] drivers/bus: remove back reference to bus objects David Marchand
2022-06-28 14:46 ` [RFC PATCH 09/11] drivers/bus: hide specific structures David Marchand
2022-06-28 14:46 ` [RFC PATCH 10/11] bus: introduce accessors David Marchand
2022-06-28 14:46 ` [RFC PATCH 11/11] bus: hide bus object David Marchand
2022-06-28 16:22 ` Tyler Retzlaff
2022-06-28 16:24 ` Tyler Retzlaff
2022-06-28 16:29 ` Stephen Hemminger
2022-06-28 17:07 ` Tyler Retzlaff
2022-06-28 17:38 ` Stephen Hemminger [this message]
2022-06-28 18:23 ` Tyler Retzlaff
2022-07-09 8:16 ` David Marchand
2022-07-09 16:28 ` Stephen Hemminger
2022-09-23 8:49 ` David Marchand
2022-09-23 8:57 ` Thomas Monjalon
2022-07-09 8:26 ` [RFC v2 v2 00/29] Bus and device cleanup for 22.11 David Marchand
2022-07-09 8:26 ` [RFC v2 v2 01/29] common/mlx5: rework check on driver registration David Marchand
2022-07-09 8:26 ` [RFC v2 v2 02/29] raw/ifpga: remove PCI bus accessor David Marchand
2022-07-09 8:26 ` [RFC v2 v2 03/29] kni: stop populating PCI info in examples David Marchand
2022-07-09 8:26 ` [RFC v2 v2 04/29] examples/ethtool: prefer device name David Marchand
2022-07-09 8:26 ` [RFC v2 v2 05/29] dev: hide debug messages in device iterator David Marchand
2022-07-09 8:26 ` [RFC v2 v2 06/29] dev: move unrelated macros from header David Marchand
2022-07-09 8:26 ` [RFC v2 v2 07/29] devargs: remove dependency on bus header David Marchand
2022-07-09 8:26 ` [RFC v2 v2 08/29] bus: remove unneeded inclusion of " David Marchand
2022-07-09 8:26 ` [RFC v2 v2 09/29] bus: move IOVA definition from header David Marchand
2022-07-09 8:26 ` [RFC v2 v2 10/29] drivers/bus: remove back reference to bus objects David Marchand
2022-07-09 8:26 ` [RFC v2 v2 11/29] drivers/bus: hide specific structures David Marchand
2022-07-09 8:26 ` [RFC v2 v2 12/29] bus: introduce accessors David Marchand
2022-07-09 8:26 ` [RFC v2 v2 13/29] bus: hide bus object David Marchand
2022-07-09 8:26 ` [RFC v2 v2 14/29] bbdev: mark driver header David Marchand
2022-07-09 8:26 ` [RFC v2 v2 15/29] ethdev: mark some headers as driver only David Marchand
2022-07-09 8:26 ` [RFC v2 v2 16/29] rawdev: mark driver header David Marchand
2022-07-09 8:26 ` [RFC v2 v2 17/29] drivers: export drivers headers David Marchand
2022-07-09 8:26 ` [RFC v2 v2 18/29] bus/auxiliary: make driver-only headers private David Marchand
2022-07-09 8:26 ` [RFC v2 v2 19/29] bus/dpaa: " David Marchand
2022-07-09 8:26 ` [RFC v2 v2 20/29] bus/fslmc: " David Marchand
2022-07-09 8:26 ` [RFC v2 v2 21/29] bus/ifpga: cleanup exported symbols David Marchand
2022-07-09 8:26 ` [RFC v2 v2 22/29] bus/ifpga: make driver-only headers private David Marchand
2022-07-09 8:26 ` [RFC v2 v2 23/29] bus/pci: " David Marchand
2022-07-09 8:26 ` [RFC v2 v2 24/29] bus/vdev: " David Marchand
2022-07-09 8:26 ` [RFC v2 v2 25/29] bus/vmbus: " David Marchand
2022-07-09 8:26 ` [RFC v2 v2 26/29] dev: introduce driver name David Marchand
2022-07-09 8:26 ` [RFC v2 v2 27/29] dev: hide driver object David Marchand
2022-07-09 8:26 ` [RFC v2 v2 28/29] dev: introduce device accessors David Marchand
2022-07-09 8:26 ` [RFC v2 v2 29/29] dev: hide device object David Marchand
2022-07-09 16:30 ` [RFC v2 v2 00/29] Bus and device cleanup for 22.11 Stephen Hemminger
2022-07-11 8:38 ` Bruce Richardson
2022-07-28 15:26 ` [RFC v3 00/26] " David Marchand
2022-07-28 15:26 ` [RFC v3 01/26] devtools: forbid inclusions of driver only headers David Marchand
2022-07-28 16:23 ` Bruce Richardson
2022-07-28 15:26 ` [RFC v3 02/26] common/mlx5: rework check on driver registration David Marchand
2022-07-28 15:26 ` [RFC v3 03/26] raw/ifpga: remove PCI bus accessor David Marchand
2022-07-29 2:36 ` Xu, Rosen
2022-07-28 15:26 ` [RFC v3 04/26] app/testpmd: drop PCI register commands David Marchand
2022-07-28 16:26 ` Bruce Richardson
2022-07-28 15:26 ` [RFC v3 05/26] kni: stop populating PCI info in examples David Marchand
2022-07-28 16:30 ` Bruce Richardson
2022-07-28 15:26 ` [RFC v3 06/26] examples/ethtool: prefer device name David Marchand
2022-07-28 16:32 ` Bruce Richardson
2022-07-28 19:27 ` David Marchand
2022-07-28 15:26 ` [RFC v3 07/26] dev: hide debug messages in device iterator David Marchand
2022-07-28 16:33 ` Bruce Richardson
2022-07-28 15:26 ` [RFC v3 08/26] dev: move unrelated macros from header David Marchand
2022-07-28 16:38 ` Bruce Richardson
2022-07-28 19:32 ` David Marchand
2022-07-29 9:58 ` Bruce Richardson
2022-07-29 13:22 ` David Marchand
2022-08-24 6:50 ` David Marchand
2022-08-24 7:39 ` Thomas Monjalon
2022-08-24 11:52 ` Morten Brørup
2022-08-24 12:53 ` Thomas Monjalon
2022-07-28 15:26 ` [RFC v3 09/26] devargs: remove dependency on bus header David Marchand
2022-07-28 16:40 ` Bruce Richardson
2022-07-28 15:26 ` [RFC v3 10/26] build: export drivers headers David Marchand
2022-07-28 16:41 ` Bruce Richardson
2022-07-28 15:26 ` [RFC v3 11/26] bus/auxiliary: make driver-only headers private David Marchand
2022-07-28 15:26 ` [RFC v3 12/26] bus/dpaa: " David Marchand
2022-07-28 15:26 ` [RFC v3 13/26] bus/fslmc: " David Marchand
2022-07-28 15:26 ` [RFC v3 14/26] bus/ifpga: cleanup exported symbols David Marchand
2022-07-29 2:36 ` Xu, Rosen
2022-07-28 15:26 ` [RFC v3 15/26] bus/ifpga: make driver-only headers private David Marchand
2022-07-29 2:37 ` Xu, Rosen
2022-07-28 15:26 ` [RFC v3 16/26] bus/pci: " David Marchand
2022-07-28 16:46 ` Bruce Richardson
2022-07-28 16:52 ` Ajit Khaparde
2022-07-29 2:41 ` Xu, Rosen
2022-07-28 15:26 ` [RFC v3 17/26] bus/vdev: " David Marchand
2022-07-29 2:38 ` Xu, Rosen
2022-07-28 15:26 ` [RFC v3 18/26] bus/vmbus: " David Marchand
2022-07-28 15:26 ` [RFC v3 19/26] bus: move IOVA definition from header David Marchand
2022-07-28 16:48 ` Bruce Richardson
2022-07-28 15:26 ` [RFC v3 20/26] bus: introduce accessors David Marchand
2022-07-28 16:51 ` Bruce Richardson
2022-07-28 15:26 ` [RFC v3 21/26] bus: hide bus object David Marchand
2022-07-28 16:56 ` Bruce Richardson
2022-07-28 19:26 ` David Marchand
2022-07-29 10:01 ` Bruce Richardson
2022-07-29 11:14 ` David Marchand
2022-07-28 15:26 ` [RFC v3 22/26] dev: introduce driver accessors David Marchand
2022-07-28 16:59 ` Bruce Richardson
2022-07-28 15:26 ` [RFC v3 23/26] dev: hide driver object David Marchand
2022-07-28 17:00 ` Bruce Richardson
2022-08-01 17:18 ` Ajit Khaparde
2022-08-01 7:06 ` Jayatheerthan, Jay
2022-07-28 15:26 ` [RFC v3 24/26] dev: introduce device accessors David Marchand
2022-07-28 17:01 ` Bruce Richardson
2022-07-28 15:26 ` [RFC v3 25/26] dev: provide Bus specific information David Marchand
2022-07-28 17:03 ` Bruce Richardson
2022-07-28 19:45 ` David Marchand
2022-07-28 15:26 ` [RFC v3 26/26] dev: hide device object David Marchand
2022-07-28 17:04 ` Bruce Richardson
2022-08-04 23:19 ` [RFC v3 00/26] Bus and device cleanup for 22.11 Harris, James R
2022-08-25 9:31 ` David Marchand
2022-08-29 17:12 ` Walker, Benjamin
2022-08-30 15:09 ` David Marchand
2022-09-21 22:29 ` Harris, James R
2022-09-23 7:13 ` David Marchand
2022-09-23 21:56 ` Harris, James R
2022-08-26 12:41 ` [PATCH v4 00/27] " David Marchand
2022-08-26 12:41 ` [PATCH v4 01/27] devtools: forbid inclusions of driver only headers David Marchand
2022-08-26 12:41 ` [PATCH v4 02/27] common/mlx5: rework check on driver registration David Marchand
2022-08-26 12:41 ` [PATCH v4 03/27] raw/ifpga: remove PCI bus accessor David Marchand
2022-08-26 12:41 ` [PATCH v4 04/27] app/testpmd: drop PCI register commands David Marchand
2022-08-26 12:41 ` [PATCH v4 05/27] kni: stop populating PCI info in examples David Marchand
2022-08-26 12:41 ` [PATCH v4 06/27] examples/ethtool: prefer device name David Marchand
2022-08-26 12:41 ` [PATCH v4 07/27] dev: hide debug messages in device iterator David Marchand
2022-08-26 12:41 ` [PATCH v4 08/27] eal: deprecate RTE_FUNC_PTR_* macros David Marchand
2022-08-26 12:41 ` [PATCH v4 09/27] devargs: remove dependency on bus header David Marchand
2022-08-26 12:41 ` [PATCH v4 10/27] build: export drivers headers David Marchand
2022-08-26 12:41 ` [PATCH v4 11/27] bus/auxiliary: make driver-only headers private David Marchand
2022-08-26 12:41 ` [PATCH v4 12/27] bus/dpaa: " David Marchand
2022-08-30 4:50 ` Hemant Agrawal
2022-08-26 12:41 ` [PATCH v4 13/27] bus/fslmc: " David Marchand
2022-08-30 4:49 ` Hemant Agrawal
2022-08-26 12:41 ` [PATCH v4 14/27] bus/ifpga: cleanup exported symbols David Marchand
2022-08-26 12:41 ` [PATCH v4 15/27] bus/ifpga: make driver-only headers private David Marchand
2022-08-26 12:41 ` [PATCH v4 16/27] bus/pci: " David Marchand
2022-08-26 12:41 ` [PATCH v4 17/27] bus/vdev: " David Marchand
2022-08-29 7:17 ` Ruifeng Wang
2022-08-29 8:12 ` David Marchand
2022-08-26 12:41 ` [PATCH v4 18/27] bus/vmbus: " David Marchand
2022-08-26 12:42 ` [PATCH v4 19/27] bus: move IOVA definition from header David Marchand
2022-08-26 12:42 ` [PATCH v4 20/27] bus: introduce accessors David Marchand
2022-08-26 12:42 ` [PATCH v4 21/27] bus: hide bus object David Marchand
2022-08-26 12:42 ` [PATCH v4 22/27] dev: introduce driver accessors David Marchand
2022-08-26 12:42 ` [PATCH v4 23/27] dev: hide driver object David Marchand
2022-08-26 12:42 ` [PATCH v4 24/27] dev: introduce device accessors David Marchand
2022-08-26 12:42 ` [PATCH v4 25/27] dev: provide bus specific information David Marchand
2022-08-26 12:42 ` [PATCH v4 26/27] bus/pci: fill " David Marchand
2022-08-26 12:42 ` [PATCH v4 27/27] dev: hide device object David Marchand
2022-09-05 8:35 ` [PATCH v5 00/27] Bus and device cleanup for 22.11 David Marchand
2022-09-05 8:35 ` [PATCH v5 01/27] devtools: forbid inclusions of driver only headers David Marchand
2022-09-05 8:35 ` [PATCH v5 02/27] common/mlx5: rework check on driver registration David Marchand
2022-09-05 8:35 ` [PATCH v5 03/27] raw/ifpga: remove PCI bus accessor David Marchand
2022-09-05 8:35 ` [PATCH v5 04/27] app/testpmd: drop PCI register commands David Marchand
2022-09-05 8:35 ` [PATCH v5 05/27] kni: stop populating PCI info in examples David Marchand
2022-09-05 8:35 ` [PATCH v5 06/27] examples/ethtool: prefer device name David Marchand
2022-09-05 8:35 ` [PATCH v5 07/27] dev: hide debug messages in device iterator David Marchand
2022-09-05 8:35 ` [PATCH v5 08/27] eal: deprecate RTE_FUNC_PTR_* macros David Marchand
2022-09-06 8:24 ` Jayatheerthan, Jay
2022-09-05 8:39 ` [PATCH v5 00/27] Bus and device cleanup for 22.11 David Marchand
2022-09-05 8:39 ` David Marchand
2022-09-05 8:39 ` [PATCH v5 01/27] devtools: forbid inclusions of driver only headers David Marchand
2022-09-05 8:39 ` [PATCH v5 02/27] common/mlx5: rework check on driver registration David Marchand
2022-09-05 8:39 ` [PATCH v5 03/27] raw/ifpga: remove PCI bus accessor David Marchand
2022-09-05 8:39 ` [PATCH v5 04/27] app/testpmd: drop PCI register commands David Marchand
2022-09-05 8:39 ` [PATCH v5 05/27] kni: stop populating PCI info in examples David Marchand
2022-09-05 8:39 ` [PATCH v5 06/27] examples/ethtool: prefer device name David Marchand
2022-09-05 8:39 ` [PATCH v5 07/27] dev: hide debug messages in device iterator David Marchand
2022-09-05 8:39 ` [PATCH v5 08/27] eal: deprecate RTE_FUNC_PTR_* macros David Marchand
2022-09-06 6:11 ` [EXT] " Akhil Goyal
2022-09-05 8:39 ` [PATCH v5 09/27] devargs: remove dependency on bus header David Marchand
2022-09-05 8:39 ` [PATCH v5 10/27] build: export drivers headers David Marchand
2022-09-05 8:39 ` [PATCH v5 11/27] bus/auxiliary: make driver-only headers private David Marchand
2022-09-05 8:39 ` [PATCH v5 12/27] bus/dpaa: " David Marchand
2022-09-05 8:39 ` [PATCH v5 13/27] bus/fslmc: " David Marchand
2022-09-05 8:39 ` [PATCH v5 14/27] bus/ifpga: cleanup exported symbols David Marchand
2022-09-05 8:39 ` [PATCH v5 15/27] bus/ifpga: make driver-only headers private David Marchand
2022-09-05 8:39 ` [PATCH v5 16/27] bus/pci: " David Marchand
2022-09-05 8:39 ` [PATCH v5 17/27] bus/vdev: " David Marchand
2022-09-05 8:39 ` [PATCH v5 18/27] bus/vmbus: " David Marchand
2022-09-05 8:39 ` [PATCH v5 19/27] bus: move IOVA definition from header David Marchand
2022-09-05 8:39 ` [PATCH v5 20/27] bus: introduce accessors David Marchand
2022-09-05 8:39 ` [PATCH v5 21/27] bus: hide bus object David Marchand
2022-09-05 8:39 ` [PATCH v5 22/27] dev: introduce driver accessors David Marchand
2022-09-05 8:39 ` [PATCH v5 23/27] dev: hide driver object David Marchand
2022-09-06 6:05 ` [EXT] " Akhil Goyal
2022-09-06 6:46 ` Gujjar, Abhinandan S
2022-09-05 8:39 ` [PATCH v5 24/27] dev: introduce device accessors David Marchand
2022-09-05 8:39 ` [PATCH v5 25/27] dev: provide bus specific information David Marchand
2022-09-05 8:39 ` [PATCH v5 26/27] bus/pci: fill " David Marchand
2022-09-05 8:39 ` [PATCH v5 27/27] dev: hide device object David Marchand
2022-09-14 7:58 ` [PATCH v6 00/27] Bus and device cleanup for 22.11 David Marchand
2022-09-14 7:58 ` [PATCH v6 01/27] devtools: forbid inclusions of driver only headers David Marchand
2022-09-14 7:58 ` [PATCH v6 02/27] common/mlx5: rework check on driver registration David Marchand
2022-09-14 7:58 ` [PATCH v6 03/27] raw/ifpga: remove PCI bus accessor David Marchand
2022-09-14 7:58 ` [PATCH v6 04/27] app/testpmd: drop PCI register commands David Marchand
2022-09-14 7:58 ` [PATCH v6 05/27] kni: stop populating PCI info in examples David Marchand
2022-09-14 7:58 ` [PATCH v6 06/27] examples/ethtool: prefer device name David Marchand
2022-09-14 7:58 ` [PATCH v6 07/27] dev: hide debug messages in device iterator David Marchand
2022-09-14 7:58 ` [PATCH v6 08/27] eal: deprecate RTE_FUNC_PTR_* macros David Marchand
2022-10-26 9:04 ` Morten Brørup
2022-10-26 9:21 ` David Marchand
2022-10-26 10:30 ` Morten Brørup
2022-09-14 7:58 ` [PATCH v6 09/27] devargs: remove dependency on bus header David Marchand
2022-09-14 7:58 ` [PATCH v6 10/27] build: export drivers headers David Marchand
2022-09-14 7:58 ` [PATCH v6 11/27] bus/auxiliary: make driver-only headers private David Marchand
2022-09-14 7:58 ` [PATCH v6 12/27] bus/dpaa: " David Marchand
2022-09-14 7:58 ` [PATCH v6 13/27] bus/fslmc: " David Marchand
2022-09-14 7:58 ` [PATCH v6 14/27] bus/ifpga: cleanup exported symbols David Marchand
2022-09-14 7:58 ` [PATCH v6 15/27] bus/ifpga: make driver-only headers private David Marchand
2022-09-14 7:58 ` [PATCH v6 16/27] bus/pci: " David Marchand
2022-09-14 7:58 ` [PATCH v6 17/27] bus/vdev: " David Marchand
2022-09-14 7:58 ` [PATCH v6 18/27] bus/vmbus: " David Marchand
2022-09-14 7:58 ` [PATCH v6 19/27] bus: move IOVA definition from header David Marchand
2022-09-14 7:58 ` [PATCH v6 20/27] bus: introduce accessors David Marchand
2022-09-14 7:58 ` [PATCH v6 21/27] bus: hide bus object David Marchand
2022-09-14 7:58 ` [PATCH v6 22/27] dev: introduce driver accessors David Marchand
2022-09-14 7:58 ` [PATCH v6 23/27] dev: hide driver object David Marchand
2022-09-14 7:58 ` [PATCH v6 24/27] dev: introduce device accessors David Marchand
2022-09-14 7:58 ` [PATCH v6 25/27] dev: provide bus specific information David Marchand
2022-09-14 7:58 ` [PATCH v6 26/27] bus/pci: fill " David Marchand
2022-09-14 7:58 ` [PATCH v6 27/27] dev: hide device object David Marchand
2022-09-24 7:14 ` [PATCH v6 00/27] Bus and device cleanup for 22.11 David Marchand
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=20220628103827.5060e318@hermes.local \
--to=stephen@networkplumber.org \
--cc=andrew.rybchenko@oktetlabs.ru \
--cc=bruce.richardson@intel.com \
--cc=chas3@att.com \
--cc=david.marchand@redhat.com \
--cc=dev@dpdk.org \
--cc=ferruh.yigit@xilinx.com \
--cc=hemant.agrawal@nxp.com \
--cc=humin29@huawei.com \
--cc=kevin.laatz@intel.com \
--cc=longli@microsoft.com \
--cc=matan@nvidia.com \
--cc=mdr@ashroe.eu \
--cc=parav@nvidia.com \
--cc=roretzla@linux.microsoft.com \
--cc=rosen.xu@intel.com \
--cc=sachin.saxena@oss.nxp.com \
--cc=sthemmin@microsoft.com \
--cc=thomas@monjalon.net \
--cc=xuemingl@nvidia.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).