Re: [dpdk-dev] [RFC 00/14] mlx5: support SubFunction

2021-06-15 Thread Parav Pandit
> From: Xia, Chenbo > Sent: Tuesday, June 15, 2021 4:49 PM > > > > > > Just FYI: > > > > > > We are introducing a new mdev bus for DPDK: > > > http://patchwork.dpdk.org/project/dpdk/cover/20210601030644.3318-1- > > > chenbo@intel.com/ > > > > > I am yet to read about it. But I am not sure w

Re: [dpdk-dev] [RFC 00/14] mlx5: support SubFunction

2021-06-14 Thread Parav Pandit
> From: Xia, Chenbo > Sent: Tuesday, June 15, 2021 11:03 AM > > Hi Parav, > > > -Original Message- > > From: Parav Pandit > > Sent: Tuesday, June 15, 2021 12:05 PM > > To: Xia, Chenbo ; NBU-Contact-Thomas Monjalon > > ; Yigit, Ferruh

Re: [dpdk-dev] [RFC 00/14] mlx5: support SubFunction

2021-06-14 Thread Parav Pandit
Hi Chenbo, > From: Xia, Chenbo > Sent: Tuesday, June 15, 2021 7:41 AM > > Hi Thomas, > > > From: Thomas Monjalon > > Sent: Friday, June 11, 2021 3:54 PM [..] > > Yes. In our term it's called Assignable Device Interface (ADI) introduced in > Intel Scalable IOV (https://01.org/blogs/2019/assig

Re: [dpdk-dev] [PATCH 1/2] pci: rename catch-all ID

2021-04-05 Thread Parav Pandit
/**< Vendor ID or RTE_PCI_ANY_ID. */ > + uint16_t device_id; /**< Device ID or RTE_PCI_ANY_ID. */ > + uint16_t subsystem_vendor_id; /**< Subsystem vendor ID or > RTE_PCI_ANY_ID. */ > + uint16_t subsystem_device_id; /**< Subsystem device ID or > +RTE_PCI_ANY_ID. */ > }; > > /** > @@ -95,7 +95,9 @@ struct rte_pci_addr { > }; > > /** Any PCI device identifier (vendor, device, ...) */ -#define PCI_ANY_ID > (0x) > +#define RTE_PCI_ANY_ID (0x) > +/** @deprecated Replaced with RTE_PCI_ANY_ID */ #define PCI_ANY_ID > +RTE_PCI_ANY_ID > #define RTE_CLASS_ANY_ID (0xff) > > /** > -- > 2.30.1 Reviewed-by: Parav Pandit

[dpdk-dev] [PATCH v12 10/10] common/mlx5: remove class check from class drivers

2020-07-27 Thread Parav Pandit
Now that mlx5_pci PMD checks for enabled classes and performs probe(), remove() of associated classes, individual class driver does not need to check if other driver is enabled. Signed-off-by: Parav Pandit Acked-by: Matan Azrad --- drivers/common/mlx5/mlx5_common.c | 37

[dpdk-dev] [PATCH v12 09/10] common/mlx5: register class drivers through common layer

2020-07-27 Thread Parav Pandit
Migrate mlx5 net, vdpa and regex PMD to start using mlx5 common class driver. Signed-off-by: Parav Pandit Acked-by: Matan Azrad --- Changelog: v10->v11: - Moved new class combinations to previous patch v8->v9: - Removed leftover inclusion of mlx5_pci bus include directory --- drive

[dpdk-dev] [PATCH v12 07/10] common/mlx5: change class values as bits

2020-07-27 Thread Parav Pandit
mlx5 PCI Device supports multiple classes of devices such as net, vdpa, and/or regex. To support these multiple classes, change mlx5_class to a bitmap values so that if users asks to enable multiple of them, all supported classes can be parsed. Signed-off-by: Parav Pandit Acked-by: Matan Azrad

[dpdk-dev] [PATCH v12 08/10] common/mlx5: introduce layer to support multiple class drivers

2020-07-27 Thread Parav Pandit
Add generic mlx5 PCI PMD layer as part of existing common_mlx5 module. This enables multiple classes (net, regex, vdpa) PMDs to be supported at same time. Signed-off-by: Parav Pandit Acked-by: Matan Azrad --- Changelog: v11->v12: - Added releases note back v10->v11: - Moved class combi

[dpdk-dev] [PATCH v12 02/10] drivers: fix indent of directory list

2020-07-27 Thread Parav Pandit
From: Thomas Monjalon Define each sub-directory on its own line ended with a comma, and use a simple indent. Acked-by: Bruce Richardson Reviewed-by: David Marchand Signed-off-by: Thomas Monjalon --- Changelog: v7->8: - new patch --- drivers/meson.build | 24 +--- 1 file

[dpdk-dev] [PATCH v12 03/10] drivers: relax dependency order

2020-07-27 Thread Parav Pandit
From: Thomas Monjalon Drivers dependencies are evaluated in the order defined per their parent directory (also called class). This strict ordering prevents from having pairs of drivers from two classes with different dependency ordering. For example, if the mlx5 common code depends on the pci bus

[dpdk-dev] [PATCH v12 01/10] eal: introduce macro for bit definition

2020-07-27 Thread Parav Pandit
There are several drivers which duplicate bit generation macro. Introduce a generic bit macros so that such drivers avoid redefining same in multiple drivers. Signed-off-by: Parav Pandit Acked-by: Matan Azrad Acked-by: Morten Brørup --- Changelog: v11->v12: - Define RTE_BIT32 macro as w

[dpdk-dev] [PATCH v12 05/10] regex/mlx5: fix segmentation fault during error unwinding

2020-07-27 Thread Parav Pandit
When fail to initialize the device, avoid segmentation fault while accessing uninitialized priv. Fixes: cfc672a90b74 ("regex/mlx5: support probing") Signed-off-by: Parav Pandit --- Changelog: v9->v10: - Corrected type in commit log v7->v8: - Rebased - new patch --- dr

[dpdk-dev] [PATCH v12 04/10] common/mlx5: fix void parameters in glue wrappers

2020-07-27 Thread Parav Pandit
n't a prototype [-Werror=strict-prototypes] Fix them by adding void data type in empty argument list. Fixes: 34fa7c0268e7 ("net/mlx5: add drop action to Direct Verbs E-Switch") Fixes: 400d985eb586 ("net/mlx5: add VLAN push/pop DR commands to glue") Signed-off-by: Parav

[dpdk-dev] [PATCH v12 06/10] common/mlx5: avoid using class constructor priority

2020-07-27 Thread Parav Pandit
mlx5_common is shared library between mlx5 net, VDPA and regex PMD. It is better to use common initialization helper instead of using RTE_PRIORITY_CLASS priority. Reviewed-by: David Marchand Suggested-by: David Marchand Signed-off-by: Parav Pandit --- Changelog: v7->v8: - new pa

[dpdk-dev] [PATCH v12 00/10] Improve mlx5 PMD driver framework for multiple classes

2020-07-27 Thread Parav Pandit
ror message string - Use uint32_t datatype instead of enum mlx5_class - Changed logic to parse device arguments only once during probe() - Added check to fail driver probe if multiple classes register with DMA ops - Renamed function to parse_class_options - Migreate API from rte_driver to rte_pci

Re: [dpdk-dev] [PATCH v10 01/10] eal: introduce macro for bit definition

2020-07-27 Thread Parav Pandit
01/10] eal: introduce macro for bit > > definition > > > > > > There are several drivers which duplicate bit generation macro. > > > Introduce a generic bit macros so that such drivers avoid redefining > > same in > > > multiple drivers.

[dpdk-dev] [PATCH v11 08/10] common/mlx5: introduce layer to support multiple class drivers

2020-07-26 Thread Parav Pandit
Add generic mlx5 PCI PMD layer as part of existing common_mlx5 module. This enables multiple classes (net, regex, vdpa) PMDs to be supported at same time. Signed-off-by: Parav Pandit Acked-by: Matan Azrad --- Changelog: v10->v11: - Moved class combination hunk from next patch to this one

[dpdk-dev] [PATCH v11 09/10] common/mlx5: register class drivers through common layer

2020-07-26 Thread Parav Pandit
Migrate mlx5 net, vdpa and regex PMD to start using mlx5 common class driver. Signed-off-by: Parav Pandit Acked-by: Matan Azrad --- Changelog: v10->v11: - Moved new class combinations to previous patch v8->v9: - Removed leftover inclusion of mlx5_pci bus include directory --- drive

[dpdk-dev] [PATCH v11 10/10] common/mlx5: remove class check from class drivers

2020-07-26 Thread Parav Pandit
Now that mlx5_pci PMD checks for enabled classes and performs probe(), remove() of associated classes, individual class driver does not need to check if other driver is enabled. Signed-off-by: Parav Pandit Acked-by: Matan Azrad --- drivers/common/mlx5/mlx5_common.c | 37

[dpdk-dev] [PATCH v11 07/10] common/mlx5: change class values as bits

2020-07-26 Thread Parav Pandit
mlx5 PCI Device supports multiple classes of devices such as net, vdpa, and/or regex. To support these multiple classes, change mlx5_class to a bitmap values so that if users asks to enable multiple of them, all supported classes can be parsed. Signed-off-by: Parav Pandit Acked-by: Matan Azrad

[dpdk-dev] [PATCH v11 04/10] common/mlx5: fix void parameters in glue wrappers

2020-07-26 Thread Parav Pandit
n't a prototype [-Werror=strict-prototypes] Fix them by adding void data type in empty argument list. Fixes: 34fa7c0268e7 ("net/mlx5: add drop action to Direct Verbs E-Switch") Fixes: 400d985eb586 ("net/mlx5: add VLAN push/pop DR commands to glue") Signed-off-by: Parav

[dpdk-dev] [PATCH v11 06/10] common/mlx5: avoid using class constructor priority

2020-07-26 Thread Parav Pandit
mlx5_common is shared library between mlx5 net, VDPA and regex PMD. It is better to use common initialization helper instead of using RTE_PRIORITY_CLASS priority. Reviewed-by: David Marchand Suggested-by: David Marchand Signed-off-by: Parav Pandit --- Changelog: v7->v8: - new pa

[dpdk-dev] [PATCH v11 05/10] regex/mlx5: fix segmentation fault during error unwinding

2020-07-26 Thread Parav Pandit
When fail to initialize the device, avoid segmentation fault while accessing uninitialized priv. Fixes: cfc672a90b74 ("regex/mlx5: support probing") Signed-off-by: Parav Pandit --- Changelog: v9->v10: - Corrected type in commit log v7->v8: - Rebased - new patch --- dr

[dpdk-dev] [PATCH v11 01/10] eal: introduce macro for bit definition

2020-07-26 Thread Parav Pandit
There are several drivers which duplicate bit generation macro. Introduce a generic bit macros so that such drivers avoid redefining same in multiple drivers. Signed-off-by: Parav Pandit Acked-by: Matan Azrad Acked-by: Morten Brørup --- Changelog: v4->v5: - Addressed comments from Mor

[dpdk-dev] [PATCH v11 00/10] Improve mlx5 PMD driver framework for multiple classes

2020-07-26 Thread Parav Pandit
to fail driver probe if multiple classes register with DMA ops - Renamed function to parse_class_options - Migreate API from rte_driver to rte_pci_driver Parav Pandit (8): eal: introduce macro for bit definition common/mlx5: fix void parameters in glue wrappers regex/mlx5: fix segmentati

[dpdk-dev] [PATCH v11 03/10] drivers: relax dependency order

2020-07-26 Thread Parav Pandit
From: Thomas Monjalon Drivers dependencies are evaluated in the order defined per their parent directory (also called class). This strict ordering prevents from having pairs of drivers from two classes with different dependency ordering. For example, if the mlx5 common code depends on the pci bus

[dpdk-dev] [PATCH v11 02/10] drivers: fix indent of directory list

2020-07-26 Thread Parav Pandit
From: Thomas Monjalon Define each sub-directory on its own line ended with a comma, and use a simple indent. Acked-by: Bruce Richardson Reviewed-by: David Marchand Signed-off-by: Thomas Monjalon --- Changelog: v7->8: - new patch --- drivers/meson.build | 24 +--- 1 file

Re: [dpdk-dev] [PATCH v8 03/10] drivers: relax dependency order

2020-07-24 Thread Parav Pandit
> From: Bruce Richardson > Sent: Friday, July 24, 2020 8:20 PM > > On Fri, Jul 24, 2020 at 03:54:33PM +0200, Thomas Monjalon wrote: > > 24/07/2020 15:48, Parav Pandit: > > > Hi Bruce, > > > > > > > From: Bruce Richardson > > > > Sen

[dpdk-dev] [PATCH v10 10/10] common/mlx5: remove class check from class drivers

2020-07-24 Thread Parav Pandit
Now that mlx5_pci PMD checks for enabled classes and performs probe(), remove() of associated classes, individual class driver does not need to check if other driver is enabled. Signed-off-by: Parav Pandit Acked-by: Matan Azrad --- drivers/common/mlx5/mlx5_common.c | 37

[dpdk-dev] [PATCH v10 09/10] common/mlx5: register class drivers through common layer

2020-07-24 Thread Parav Pandit
Migrate mlx5 net, vdpa and regex PMD to start using mlx5 common class driver. Signed-off-by: Parav Pandit Acked-by: Matan Azrad --- Changelog: v8->v9: - Removed leftover inclusion of mlx5_pci bus include directory --- drivers/common/mlx5/mlx5_common_pci.c | 6 ++ drivers/net/m

[dpdk-dev] [PATCH v10 06/10] common/mlx5: avoid using class constructor priority

2020-07-24 Thread Parav Pandit
mlx5_common is shared library between mlx5 net, VDPA and regex PMD. It is better to use common initialization helper instead of using RTE_PRIORITY_CLASS priority. Reviewed-by: David Marchand Suggested-by: David Marchand Signed-off-by: Parav Pandit --- Changelog: v7->v8: - new pa

[dpdk-dev] [PATCH v10 08/10] common/mlx5: introduce layer to support multiple class drivers

2020-07-24 Thread Parav Pandit
Add generic mlx5 PCI PMD layer as part of existing common_mlx5 module. This enables multiple classes (net, regex, vdpa) PMDs to be supported at same time. Signed-off-by: Parav Pandit Acked-by: Matan Azrad --- Changelog: v9->v10: - Fixed alignment v8->v9: - Added missing LDFLAG for p

[dpdk-dev] [PATCH v10 07/10] common/mlx5: change class values as bits

2020-07-24 Thread Parav Pandit
mlx5 PCI Device supports multiple classes of devices such as net, vdpa, and/or regex. To support these multiple classes, change mlx5_class to a bitmap values so that if users asks to enable multiple of them, all supported classes can be parsed. Signed-off-by: Parav Pandit Acked-by: Matan Azrad

[dpdk-dev] [PATCH v10 04/10] common/mlx5: fix void parameters in glue wrappers

2020-07-24 Thread Parav Pandit
n't a prototype [-Werror=strict-prototypes] Fix them by adding void data type in empty argument list. Fixes: 34fa7c0268e7 ("net/mlx5: add drop action to Direct Verbs E-Switch") Fixes: 400d985eb586 ("net/mlx5: add VLAN push/pop DR commands to glue") Signed-off-by: Parav

[dpdk-dev] [PATCH v10 05/10] regex/mlx5: fix segmentation fault during error unwinding

2020-07-24 Thread Parav Pandit
When fail to initialize the device, avoid segmentation fault while accessing unintialized priv. Fixes: cfc672a90b74 ("regex/mlx5: support probing") Signed-off-by: Parav Pandit --- Changelog: v9->v10: - Corrected type in commit log v7->v8: - Rebased - new patch --- dr

[dpdk-dev] [PATCH v10 01/10] eal: introduce macro for bit definition

2020-07-24 Thread Parav Pandit
There are several drivers which duplicate bit generation macro. Introduce a generic bit macros so that such drivers avoid redefining same in multiple drivers. Signed-off-by: Parav Pandit Acked-by: Matan Azrad Acked-by: Morten Brørup --- Changelog: v4->v5: - Addressed comments from Mor

[dpdk-dev] [PATCH v10 03/10] drivers: relax dependency order

2020-07-24 Thread Parav Pandit
From: Thomas Monjalon Drivers dependencies are evaluated in the order defined per their parent directory (also called class). This strict ordering prevents from having pairs of drivers from two classes with different dependency ordering. For example, if the mlx5 common code depends on the pci bus

[dpdk-dev] [PATCH v10 00/10] Improve mlx5 PMD driver framework for multiple classes

2020-07-24 Thread Parav Pandit
API from rte_driver to rte_pci_driver Parav Pandit (8): eal: introduce macro for bit definition common/mlx5: fix void parameters in glue wrappers regex/mlx5: fix segmentation fault during error unwinding common/mlx5: avoid using class constructor priority common/mlx5: change class values as b

[dpdk-dev] [PATCH v10 02/10] drivers: fix indent of directory list

2020-07-24 Thread Parav Pandit
From: Thomas Monjalon Define each sub-directory on its own line ended with a comma, and use a simple indent. Acked-by: Bruce Richardson Reviewed-by: David Marchand Signed-off-by: Thomas Monjalon --- Changelog: v7->8: - new patch --- drivers/meson.build | 24 +--- 1 file

Re: [dpdk-dev] [PATCH v9 00/10] Improve mlx5 PMD driver framework for multiple classes

2020-07-24 Thread Parav Pandit
> From: Parav Pandit > Sent: Friday, July 24, 2020 7:54 PM > > This series introduces mlx5 common driver layer to support multiple class of > devices for a single PCI device. > [..] > > Changelog: > v8->v9: > - Updated commit message > - Fixed LD

[dpdk-dev] [PATCH v9 10/10] common/mlx5: remove class check from class drivers

2020-07-24 Thread Parav Pandit
Now that mlx5_pci PMD checks for enabled classes and performs probe(), remove() of associated classes, individual class driver does not need to check if other driver is enabled. Signed-off-by: Parav Pandit Acked-by: Matan Azrad --- drivers/common/mlx5/mlx5_common.c | 37

[dpdk-dev] [PATCH v9 06/10] common/mlx5: avoid using class constructor priority

2020-07-24 Thread Parav Pandit
mlx5_common is shared library between mlx5 net, VDPA and regex PMD. It is better to use common initialization helper instead of using RTE_PRIORITY_CLASS priority. Reviewed-by: David Marchand Suggested-by: David Marchand Signed-off-by: Parav Pandit --- Changelog: v7->v8: - new pa

[dpdk-dev] [PATCH v9 09/10] common/mlx5: register class drivers through common layer

2020-07-24 Thread Parav Pandit
Migrate mlx5 net, vdpa and regex PMD to start using mlx5 common class driver. Signed-off-by: Parav Pandit Acked-by: Matan Azrad --- Changelog: v8->v9: - Removed leftover inclusion of mlx5_pci bus include directory --- drivers/common/mlx5/mlx5_common_pci.c | 6 ++ drivers/net/m

[dpdk-dev] [PATCH v9 08/10] common/mlx5: introduce layer to support multiple class drivers

2020-07-24 Thread Parav Pandit
Add generic mlx5 PCI PMD layer as part of existing common_mlx5 module. This enables multiple classes (net, regex, vdpa) PMDs to be supported at same time. Signed-off-by: Parav Pandit Acked-by: Matan Azrad --- Changelog: v8->v9: - Added missing LDFLAG for pci bus - Fixed white spaces at st

[dpdk-dev] [PATCH v9 07/10] common/mlx5: change class values as bits

2020-07-24 Thread Parav Pandit
mlx5 PCI Device supports multiple classes of devices such as net, vdpa, and/or regex. To support these multiple classes, change mlx5_class to a bitmap values so that if users asks to enable multiple of them, all supported classes can be parsed. Signed-off-by: Parav Pandit Acked-by: Matan Azrad

[dpdk-dev] [PATCH v9 05/10] regex/mlx5: fix segmentation fault during error unwinding

2020-07-24 Thread Parav Pandit
When fail to initialize the device, avoid segmentation fault while accessing unintialized priv. Fixes: cfc672a90b74 ("regex/mlx5: support probing") Signed-off-by: Parav Pandit --- Changelog: v7->v8: - Rebased - new patch --- drivers/regex/mlx5/mlx5_regex.c | 7 --- 1 fi

[dpdk-dev] [PATCH v9 04/10] common/mlx5: fix void parameters in glue wrappers

2020-07-24 Thread Parav Pandit
n't a prototype [-Werror=strict-prototypes] Fix them by adding void data type in empty argument list. Fixes: 34fa7c0268e7 ("net/mlx5: add drop action to Direct Verbs E-Switch") Fixes: 400d985eb586 ("net/mlx5: add VLAN push/pop DR commands to glue") Signed-off-by: Parav

[dpdk-dev] [PATCH v9 03/10] drivers: relax dependency order

2020-07-24 Thread Parav Pandit
From: Thomas Monjalon Drivers dependencies are evaluated in the order defined per their parent directory (also called class). This strict ordering prevents from having pairs of drivers from two classes with different dependency ordering. For example, if the mlx5 common code depends on the pci bus

[dpdk-dev] [PATCH v9 01/10] eal: introduce macro for bit definition

2020-07-24 Thread Parav Pandit
There are several drivers which duplicate bit generation macro. Introduce a generic bit macros so that such drivers avoid redefining same in multiple drivers. Signed-off-by: Parav Pandit Acked-by: Matan Azrad Acked-by: Morten Brørup --- Changelog: v4->v5: - Addressed comments from Mor

[dpdk-dev] [PATCH v9 02/10] drivers: fix indent of directory list

2020-07-24 Thread Parav Pandit
From: Thomas Monjalon Define each sub-directory on its own line ended with a comma, and use a simple indent. Acked-by: Bruce Richardson Reviewed-by: David Marchand Signed-off-by: Thomas Monjalon --- Changelog: v7->8: - new patch --- drivers/meson.build | 24 +--- 1 file

[dpdk-dev] [PATCH v9 00/10] Improve mlx5 PMD driver framework for multiple classes

2020-07-24 Thread Parav Pandit
x5_class - Changed logic to parse device arguments only once during probe() - Added check to fail driver probe if multiple classes register with DMA ops - Renamed function to parse_class_options - Migreate API from rte_driver to rte_pci_driver Parav Pandit (8): eal: introduce macro for bit

Re: [dpdk-dev] [PATCH v8 03/10] drivers: relax dependency order

2020-07-24 Thread Parav Pandit
Hi Bruce, > From: Bruce Richardson > Sent: Friday, July 24, 2020 4:37 PM > > On Thu, Jul 23, 2020 at 11:09:03PM +0300, Parav Pandit wrote: > > From: Thomas Monjalon > > > > Drivers dependencies are evaluated in the order defined per their > > parent dir

Re: [dpdk-dev] [PATCH v8 06/10] common/mlx5: avoid using class constructor priority

2020-07-24 Thread Parav Pandit
> From: David Marchand > Sent: Friday, July 24, 2020 7:15 PM > To: Parav Pandit > Cc: dev ; Gaetan Rivet ; Yigit, Ferruh > ; Thomas Monjalon ; > Raslan Darawsheh ; Ori Kam > ; Matan Azrad ; Joyce Kong > > Subject: Re: [dpdk-dev] [PATCH v8 06/10] common/mlx5: avoi

[dpdk-dev] [PATCH v8 09/10] common/mlx5: register class drivers through common layer

2020-07-23 Thread Parav Pandit
Migrate mlx5 net, vdpa and regex PMD to start using mlx5 common class driver. Signed-off-by: Parav Pandit Acked-by: Matan Azrad --- Changelog: v7->v8: - Extended support for newly added mlx5 regex driver --- drivers/common/mlx5/mlx5_common_pci.c | 6 ++ drivers/net/mlx5/Makef

[dpdk-dev] [PATCH v8 10/10] common/mlx5: remove class check from class drivers

2020-07-23 Thread Parav Pandit
Now that mlx5_pci PMD checks for enabled classes and performs probe(), remove() of associated classes, individual class driver does not need to check if other driver is enabled. Signed-off-by: Parav Pandit Acked-by: Matan Azrad --- drivers/common/mlx5/mlx5_common.c | 37

[dpdk-dev] [PATCH v8 06/10] common/mlx5: avoid using class constructor priority

2020-07-23 Thread Parav Pandit
mlx5_common is shared library between mlx5 net, VDPA and regex PMD. It is better to use common initialization helper instead of using RTE_INIT_CLASS priority. Signed-off-by: Parav Pandit --- drivers/common/mlx5/mlx5_common.c | 13 +++-- drivers/common/mlx5/mlx5_common.h

[dpdk-dev] [PATCH v8 05/10] regex/mlx5: fix segmentation fault during error unwinding

2020-07-23 Thread Parav Pandit
When fail to initialize the device, avoid segmentation fault while accessing unintialized priv. Fixes: cfc672a90b74 ("regex/mlx5: support probing") Signed-off-by: Parav Pandit --- drivers/regex/mlx5/mlx5_regex.c | 7 --- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git

[dpdk-dev] [PATCH v8 07/10] common/mlx5: change class values as bits

2020-07-23 Thread Parav Pandit
mlx5 PCI Device supports multiple classes of devices such as net, vdpa, and/or regex. To support these multiple classes, change mlx5_class to a bitmap values so that if users asks to enable multiple of them, all supported classes can be parsed. Signed-off-by: Parav Pandit Acked-by: Matan Azrad

[dpdk-dev] [PATCH v8 08/10] common/mlx5: introduce layer to support multiple class drivers

2020-07-23 Thread Parav Pandit
From: Thomas Monjalon Add generic mlx5 PCI PMD layer as part of existing common_mlx5 module. This enables multiple classes (net, regex, vdpa) PMDs to be supported at same time. Signed-off-by: Parav Pandit Acked-by: Matan Azrad --- drivers/Makefile | 10

[dpdk-dev] [PATCH v8 04/10] common/mlx5: fix void parameters in glue wrappers

2020-07-23 Thread Parav Pandit
n't a prototype [-Werror=strict-prototypes] Fix them by adding void data type in empty argument list. Fixes: 34fa7c0268e7 ("net/mlx5: add drop action to Direct Verbs E-Switch") Fixes: 400d985eb586 ("net/mlx5: add VLAN push/pop DR commands to glue") Signed-off-by: Parav

[dpdk-dev] [PATCH v8 03/10] drivers: relax dependency order

2020-07-23 Thread Parav Pandit
From: Thomas Monjalon Drivers dependencies are evaluated in the order defined per their parent directory (also called class). This strict ordering prevent from having 2 different drivers of the same class with different dependencies ordering. This problem occurs if drivers/common/mlx5 depends on

[dpdk-dev] [PATCH v8 00/10] Improve mlx5 PMD driver framework for multiple classes

2020-07-23 Thread Parav Pandit
parse_class_options - Migreate API from rte_driver to rte_pci_driver Parav Pandit (7): eal: introduce macro for bit definition common/mlx5: fix void parameters in glue wrappers regex/mlx5: fix segmentation fault during error unwinding common/mlx5: avoid using class constructor priority c

[dpdk-dev] [PATCH v8 02/10] drivers: fix indent of directory list

2020-07-23 Thread Parav Pandit
From: Thomas Monjalon Define each sub-directory on its own line ended with a comma, and use a simple indent. Signed-off-by: Thomas Monjalon --- drivers/meson.build | 24 +--- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/drivers/meson.build b/drivers/meson

[dpdk-dev] [PATCH v8 01/10] eal: introduce macro for bit definition

2020-07-23 Thread Parav Pandit
There are several drivers which duplicate bit generation macro. Introduce a generic bit macros so that such drivers avoid redefining same in multiple drivers. Signed-off-by: Parav Pandit Acked-by: Matan Azrad Acked-by: Morten Brørup --- lib/librte_eal/include/rte_bitops.h | 8 1 file

Re: [dpdk-dev] [PATCH v7 2/9] eal: introduce RTE common initialization level

2020-07-21 Thread Parav Pandit
> From: Thomas Monjalon > Sent: Tuesday, July 21, 2020 5:57 PM > > 21/07/2020 14:13, Parav Pandit: > > From: David Marchand > > > On Tue, Jul 21, 2020 at 1:19 PM Parav Pandit > wrote: > > > > > This way, net/mlx5 and vdpa/mlx5 will pass their id

Re: [dpdk-dev] [PATCH v7 2/9] eal: introduce RTE common initialization level

2020-07-21 Thread Parav Pandit
> From: David Marchand > Sent: Tuesday, July 21, 2020 4:59 PM > > On Tue, Jul 21, 2020 at 1:19 PM Parav Pandit wrote: > > > This way, net/mlx5 and vdpa/mlx5 will pass their id_map to the mlx5 > > > pci driver whether it is registered to the pci bus or not yet.

Re: [dpdk-dev] [PATCH v7 2/9] eal: introduce RTE common initialization level

2020-07-21 Thread Parav Pandit
Hi David, On 7/21/2020 3:04 PM, David Marchand wrote: > On Mon, Jul 20, 2020 at 9:30 PM Ori Kam wrote: >>> net and vdpa code expect the common code being initialised. >>> It is a dependency internal to mlx5 drivers, I see nothing generic. >>> >> First the idea was to declare a new bus not a PMD.

[dpdk-dev] [PATCH v7 8/9] bus/mlx5_pci: enable net and vDPA to use mlx5 PCI bus driver

2020-07-17 Thread Parav Pandit
Enable class driver to match with the mlx5 pci devices. Migrate mlx5 net PMD and vdpa PMD to start using mlx5 common class driver. Signed-off-by: Parav Pandit Acked-by: Matan Azrad --- Changelog: v2->v3: - Avoid static table v1->v2: - Migreate API from rte_driver to rte_pci_

[dpdk-dev] [PATCH v7 9/9] common/mlx5: remove class checks from individual driver

2020-07-17 Thread Parav Pandit
Now that mlx5_pci bus does the check for enabled classes and performs probe(), remove() of associated classes, individual class driver does not need to check if other driver is enabled. Signed-off-by: Parav Pandit Acked-by: Matan Azrad --- Changelog: v2->v3: - Removed empty line v1->v2:

[dpdk-dev] [PATCH v7 3/9] common/mlx5: fix empty input style in glue wrappers

2020-07-17 Thread Parav Pandit
n't a prototype [-Werror=strict-prototypes] Fix them by adding void data type in empty argument list. Fixes: 34fa7c0268e7 ("net/mlx5: add drop action to Direct Verbs E-Switch") Fixes: 400d985eb586 ("net/mlx5: add VLAN push/pop DR commands to glue") Signed-off-by: Parav

[dpdk-dev] [PATCH v7 7/9] bus/mlx5_pci: register a PCI driver

2020-07-17 Thread Parav Pandit
Create a mlx5 bus driver framework for invoking drivers of multiple classes who have registered with the mlx5_pci bus driver. Validate user class arguments for supported class combinations. Signed-off-by: Parav Pandit Acked-by: Matan Azrad --- Changelog: v3->v4: - Fixed dma_map er

[dpdk-dev] [PATCH v7 4/9] common/mlx5: change mlx5 class enum values as bits

2020-07-17 Thread Parav Pandit
mlx5 PCI Device supports multiple classes of devices such as net, vdpa, and/or regex. To support these multiple classes, change mlx5_class to a bitmap values so that if users asks to enable multiple of them, all supported classes can be parsed. Signed-off-by: Parav Pandit Acked-by: Matan Azrad

[dpdk-dev] [PATCH v7 6/9] bus/mlx5_pci: add mlx5 PCI bus

2020-07-17 Thread Parav Pandit
Add mlx5 PCI bus which enables multiple mlx5 drivers to bind to single pci device. Signed-off-by: Parav Pandit Acked-by: Matan Azrad --- Changelog: v6->v7: - Updated release notes v5->v6: - Updated Makefile for parallel shared build support v4->v5: - Merged maintainers update patch

[dpdk-dev] [PATCH v7 5/9] common/mlx5: use common rte priority

2020-07-17 Thread Parav Pandit
) Information registered by these PMDs is used by mlx5_bus_pci PMD. This mlx5 class PMDs should not confused with rte_class. (d) Register mlx5 PCI bus PMD Signed-off-by: Parav Pandit Acked-by: Matan Azrad --- drivers/common/mlx5/mlx5_common.c | 2 +- drivers/net/mlx5/mlx5.c | 2 +- drivers/vdpa

[dpdk-dev] [PATCH v7 1/9] eal: introduce macros for getting value for bit

2020-07-17 Thread Parav Pandit
There are several drivers which duplicate bit generation macro. Introduce a generic bit macros so that such drivers avoid redefining same in multiple drivers. Signed-off-by: Parav Pandit Acked-by: Matan Azrad Acked-by: Morten Brørup --- Changelog: v4->v5: - Addressed comments from Mor

[dpdk-dev] [PATCH v7 0/9] Improve mlx5 PMD driver framework for multiple classes

2020-07-17 Thread Parav Pandit
er probe if multiple classes register with DMA ops - Renamed function to parse_class_options - Migreate API from rte_driver to rte_pci_driver Parav Pandit (9): eal: introduce macros for getting value for bit eal: introduce RTE common initialization level common/mlx5: fix empty input sty

[dpdk-dev] [PATCH v7 2/9] eal: introduce RTE common initialization level

2020-07-17 Thread Parav Pandit
which can be used for common initialization and RTE_PRIO_CLASS by mlx5 PMDs for class driver initialization. Signed-off-by: Parav Pandit Acked-by: Matan Azrad --- Changelog: v2->v3: - new patch --- lib/librte_eal/include/rte_common.h | 1 + 1 file changed, 1 insertion(+) diff --git a/

[dpdk-dev] [PATCH v6 9/9] common/mlx5: remove class checks from individual driver

2020-07-16 Thread Parav Pandit
Now that mlx5_pci bus does the check for enabled classes and performs probe(), remove() of associated classes, individual class driver does not need to check if other driver is enabled. Signed-off-by: Parav Pandit Acked-by: Matan Azrad --- Changelog: v2->v3: - Removed empty line v1->v2:

[dpdk-dev] [PATCH v6 8/9] bus/mlx5_pci: enable net and vDPA to use mlx5 PCI bus driver

2020-07-16 Thread Parav Pandit
Enable class driver to match with the mlx5 pci devices. Migrate mlx5 net PMD and vdpa PMD to start using mlx5 common class driver. Signed-off-by: Parav Pandit Acked-by: Matan Azrad --- Changelog: v2->v3: - Avoid static table v1->v2: - Migreate API from rte_driver to rte_pci_

[dpdk-dev] [PATCH v6 5/9] common/mlx5: use common rte priority

2020-07-16 Thread Parav Pandit
) Information registered by these PMDs is used by mlx5_bus_pci PMD. This mlx5 class PMDs should not confused with rte_class. (d) Register mlx5 PCI bus PMD Signed-off-by: Parav Pandit Acked-by: Matan Azrad --- drivers/common/mlx5/mlx5_common.c | 2 +- drivers/net/mlx5/mlx5.c | 2 +- drivers/vdpa

[dpdk-dev] [PATCH v6 7/9] bus/mlx5_pci: register a PCI driver

2020-07-16 Thread Parav Pandit
Create a mlx5 bus driver framework for invoking drivers of multiple classes who have registered with the mlx5_pci bus driver. Validate user class arguments for supported class combinations. Signed-off-by: Parav Pandit Acked-by: Matan Azrad --- Changelog: v3->v4: - Fixed dma_map er

[dpdk-dev] [PATCH v6 6/9] bus/mlx5_pci: add mlx5 PCI bus

2020-07-16 Thread Parav Pandit
Add mlx5 PCI bus which enables multiple mlx5 drivers to bind to single pci device. Signed-off-by: Parav Pandit Acked-by: Matan Azrad --- Changelog: v5->v6: - Updated Makefile for parallel shared build support v4->v5: - Merged maintainers update patch with this patch v2->v3: -

[dpdk-dev] [PATCH v6 2/9] eal: introduce RTE common initialization level

2020-07-16 Thread Parav Pandit
which can be used for common initialization and RTE_PRIO_CLASS by mlx5 PMDs for class driver initialization. Signed-off-by: Parav Pandit Acked-by: Matan Azrad --- Changelog: v2->v3: - new patch --- lib/librte_eal/include/rte_common.h | 1 + 1 file changed, 1 insertion(+) diff --git a/

[dpdk-dev] [PATCH v6 3/9] common/mlx5: fix empty input style in glue wrappers

2020-07-16 Thread Parav Pandit
n't a prototype [-Werror=strict-prototypes] Fix them by adding void data type in empty argument list. Fixes: 34fa7c0268e7 ("net/mlx5: add drop action to Direct Verbs E-Switch") Fixes: 400d985eb586 ("net/mlx5: add VLAN push/pop DR commands to glue") Signed-off-by: Parav

[dpdk-dev] [PATCH v6 4/9] common/mlx5: change mlx5 class enum values as bits

2020-07-16 Thread Parav Pandit
mlx5 PCI Device supports multiple classes of devices such as net, vdpa, and/or regex. To support these multiple classes, change mlx5_class to a bitmap values so that if users asks to enable multiple of them, all supported classes can be parsed. Signed-off-by: Parav Pandit Acked-by: Matan Azrad

[dpdk-dev] [PATCH v6 0/9] Improve mlx5 PMD driver framework for multiple classes

2020-07-16 Thread Parav Pandit
driver probe if multiple classes register with DMA ops - Renamed function to parse_class_options - Migreate API from rte_driver to rte_pci_driver Parav Pandit (9): eal: introduce macros for getting value for bit eal: introduce RTE common initialization level common/mlx5: fix empty inp

[dpdk-dev] [PATCH v6 1/9] eal: introduce macros for getting value for bit

2020-07-16 Thread Parav Pandit
There are several drivers which duplicate bit generation macro. Introduce a generic bit macros so that such drivers avoid redefining same in multiple drivers. Signed-off-by: Parav Pandit Acked-by: Matan Azrad Acked-by: Morten Brørup --- Changelog: v4->v5: - Addressed comments from Mor

[dpdk-dev] [PATCH v5 5/9] common/mlx5: use common rte priority

2020-07-09 Thread Parav Pandit
) Information registered by these PMDs is used by mlx5_bus_pci PMD. This mlx5 class PMDs should not confused with rte_class. (d) Register mlx5 PCI bus PMD Signed-off-by: Parav Pandit Acked-by: Matan Azrad --- drivers/common/mlx5/mlx5_common.c | 2 +- drivers/net/mlx5/mlx5.c | 2 +- drivers/vdpa

[dpdk-dev] [PATCH v5 7/9] bus/mlx5_pci: register a PCI driver

2020-07-09 Thread Parav Pandit
Create a mlx5 bus driver framework for invoking drivers of multiple classes who have registered with the mlx5_pci bus driver. Validate user class arguments for supported class combinations. Signed-off-by: Parav Pandit Acked-by: Matan Azrad --- Changelog: v3->v4: - Fixed dma_map er

[dpdk-dev] [PATCH v5 8/9] bus/mlx5_pci: enable net and vDPA to use mlx5 PCI bus driver

2020-07-09 Thread Parav Pandit
Enable class driver to match with the mlx5 pci devices. Migrate mlx5 net PMD and vdpa PMD to start using mlx5 common class driver. Signed-off-by: Parav Pandit Acked-by: Matan Azrad --- Changelog: v2->v3: - Avoid static table v1->v2: - Migreate API from rte_driver to rte_pci_

[dpdk-dev] [PATCH v5 6/9] bus/mlx5_pci: add mlx5 PCI bus

2020-07-09 Thread Parav Pandit
Add mlx5 PCI bus which enables multiple mlx5 drivers to bind to single pci device. Signed-off-by: Parav Pandit Acked-by: Matan Azrad --- Changelog: v4->v5: - Merged maintainers update patch with this patch v2->v3: - Addressed comments from Thomas and Asaf - Moved pci_driver str

[dpdk-dev] [PATCH v5 9/9] common/mlx5: remove class checks from individual driver

2020-07-09 Thread Parav Pandit
Now that mlx5_pci bus does the check for enabled classes and performs probe(), remove() of associated classes, individual class driver doesn't need to check if other driver is enabled. Signed-off-by: Parav Pandit Acked-by: Matan Azrad --- Changelog: v2->v3: - Removed empty line v1->

[dpdk-dev] [PATCH v5 2/9] eal: introduce RTE common initialization level

2020-07-09 Thread Parav Pandit
which can be used for common initialization and RTE_PRIO_CLASS by mlx5 PMDs for class driver initialization. Signed-off-by: Parav Pandit Acked-by: Matan Azrad --- Changelog: v2->v3: - new patch --- lib/librte_eal/include/rte_common.h | 1 + 1 file changed, 1 insertion(+) diff --git a/

[dpdk-dev] [PATCH v5 1/9] eal: introduce macros for getting value for bit

2020-07-09 Thread Parav Pandit
There are several drivers which duplicate bit generation macro. Introduce a generic bit macros so that such drivers avoid redefining same in multiple drivers. Signed-off-by: Parav Pandit Acked-by: Matan Azrad Acked-by: Morten Brørup --- Changelog: v4->v5: - Addressed comments from Mor

[dpdk-dev] [PATCH v5 3/9] common/mlx5: fix empty input style in glue wrappers

2020-07-09 Thread Parav Pandit
n't a prototype [-Werror=strict-prototypes] Fix them by adding void data type in empty argument list. Fixes: 34fa7c0268e7 ("net/mlx5: add drop action to Direct Verbs E-Switch") Fixes: 400d985eb586 ("net/mlx5: add VLAN push/pop DR commands to glue") Signed-off-by: Parav

[dpdk-dev] [PATCH v5 0/9] Improve mlx5 PMD driver framework for multiple classes

2020-07-09 Thread Parav Pandit
- Renamed function to parse_class_options - Migreate API from rte_driver to rte_pci_driver Parav Pandit (9): eal: introduce macros for getting value for bit eal: introduce RTE common initialization level common/mlx5: fix empty input style in glue wrappers common/mlx5: change mlx5 class enum values as b

[dpdk-dev] [PATCH v5 4/9] common/mlx5: change mlx5 class enum values as bits

2020-07-09 Thread Parav Pandit
mlx5 PCI Device supports multiple classes of devices such as net, vdpa, and/or regex. To support these multiple classes, change mlx5_class to a bitmap values so that if users asks to enable multiple of them, all supported classes can be parsed. Signed-off-by: Parav Pandit Acked-by: Matan Azrad

Re: [dpdk-dev] [PATCH v4 01/10] eal: introduce macros for getting valuefor bit

2020-07-09 Thread Parav Pandit
> From: Morten Brørup > Sent: Thursday, July 9, 2020 12:46 PM > > > From: dev [mailto:dev-boun...@dpdk.org] On Behalf Of Parav Pandit > > Sent: Thursday, July 9, 2020 8:24 AM > > > > Hi Morten, > > > > > From: Morten Brørup > > > Sent:

Re: [dpdk-dev] [PATCH v4 01/10] eal: introduce macros for getting valuefor bit

2020-07-08 Thread Parav Pandit
Hi Morten, > From: Morten Brørup > Sent: Tuesday, July 7, 2020 6:11 PM > Adding Joyce Kong to this discussion as the rte_bitops maintainer. > > > From: Thomas Monjalon [mailto:tho...@monjalon.net] > > Sent: Tuesday, July 7, 2020 2:13 PM > > > > 07/07/

Re: [dpdk-dev] [PATCH v4 01/10] eal: introduce macros for getting valuefor bit

2020-07-07 Thread Parav Pandit
> From: Morten Brørup > Sent: Monday, July 6, 2020 4:24 PM > > > From: dev [mailto:dev-boun...@dpdk.org] On Behalf Of Parav Pandit > > Sent: Friday, July 3, 2020 3:47 PM > > > > There are several drivers which duplicate bit generation macro. > > Intr

  1   2   >