[dpdk-dev] [PATCH v2 2/2] bus/vdev: build on Windows

2020-07-07 Thread talshn
From: Tal Shnaiderman current support will build vdev with empty MP functions currently unsupported for Windows. Signed-off-by: Tal Shnaiderman --- drivers/bus/vdev/meson.build | 6 -- lib/librte_eal/rte_eal_exports.def | 5 + 2 files changed, 5 insertions(+), 6 deletions(-) dif

[dpdk-dev] [PATCH v2 1/2] eal/windows: add needed calls to detect vdev PMD

2020-07-07 Thread talshn
From: Tal Shnaiderman Add needed function calls in rte_eal_init to detect vdev PMD. eal_option_device_parse() rte_service_init() rte_bus_probe() Signed-off-by: Tal Shnaiderman --- lib/librte_eal/common/meson.build | 1 + lib/librte_eal/windows/eal.c | 20 2 files ch

[dpdk-dev] [PATCH v2 0/2] Windows bus/vdev support

2020-07-07 Thread talshn
From: Tal Shnaiderman This patchset implements the EAL functions needed for probing PMDs using vdev on Windows. --- v2: Added missing exports and includes (NarcisaV) --- Tal Shnaiderman (2): eal/windows: add needed calls to detect vdev PMD bus/vdev: build on Windows drivers/bus/vdev/meso

[dpdk-dev] [PATCH] eal: fix Windows build

2020-04-21 Thread talshn
From: Tal Shnaiderman Windows headers pthread.h and fnmatch.h uses rte_common types The error is: error: unknown type name '__rte_unused' The fix adds the missing includes. Bugzilla ID: 458 Fixes: f2fc83b40f06 ("replace unused attributes") Signed-off-by: Tal Shnaiderman --- Depends-on: patch

[dpdk-dev] [PATCH 0/7] Windows bus/pci support

2020-04-22 Thread talshn
From: Tal Shnaiderman This patchset implements the EAL and PCI functions needed for probing PMDs using RTE_KDRV_NONE on Windows. Depends-on: series-9374 ("Windows basic memory management") Tal Shnaiderman (7): eal: move OS common functions to single file pci: build on Windows eal: add fu

[dpdk-dev] [PATCH 1/7] eal: move OS common functions to single file

2020-04-22 Thread talshn
From: Tal Shnaiderman Move common functions between Unix and Windows to eal_config.c. Those simple functions are getter functions for IOVA, configuration, Multi-process. Move rte_config and runtime_dir to be defined in a common file. Signed-off-by: Tal Shnaiderman --- lib/librte_eal/common/e

[dpdk-dev] [PATCH 2/7] pci: build on Windows

2020-04-22 Thread talshn
From: Tal Shnaiderman Changing all of PCIs Unix memory mapping to the new memory allocation API wrapper. Added off_t in Windows header file as a supported type since it is needed by PCI. Signed-off-by: Tal Shnaiderman --- lib/librte_eal/windows/include/rte_os.h | 1 + lib/librte_pci/rte_pci.

[dpdk-dev] [PATCH 5/7] drivers: fix incorrect meson import folder for Windows

2020-04-22 Thread talshn
From: Tal Shnaiderman import library (/IMPLIB) in meson.build should use the 'drivers' and not 'libs' folder. The error is: fatal error LNK1149: output filename matches input filename. The fix uses the correct folder. Fixes: 5ed3766981 ("drivers: process shared link dependencies as for libs")

[dpdk-dev] [PATCH 3/7] eal: add function finding integer in a string

2020-04-22 Thread talshn
From: Tal Shnaiderman Addition of a function to skip leading chars which are not part of the numeric base and return the number in the needed base. This is needed to call strtoul correctly and will be used by bus/PCI to get the BDF from a PCI output. Signed-off-by: Tal Shnaiderman --- lib/lib

[dpdk-dev] [PATCH 7/7] bus/pci: support Windows with bifurcated drivers

2020-04-22 Thread talshn
From: Tal Shnaiderman Uses SetupAPI.h functions to scan PCI tree. Uses DEVPKEY_Device_Numa_Node to get the PCI Numa node. scanning currently supports types RTE_KDRV_NONE. Signed-off-by: Tal Shnaiderman --- drivers/bus/pci/windows/pci.c| 342 ++- lib/libr

[dpdk-dev] [PATCH 4/7] drivers: ignore pmdinfogen generation for Windows

2020-04-22 Thread talshn
From: Tal Shnaiderman pmdinfogen generation is currently unsupported for Windows. The relevant part in meson.build is skipped. Signed-off-by: Tal Shnaiderman --- drivers/meson.build | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/meson.build b/drivers/meson.build

[dpdk-dev] [PATCH 6/7] bus/pci: introduce Windows support with stubs

2020-04-22 Thread talshn
From: Tal Shnaiderman Addition of stub eal and bus/pci functions to compile bus/pci for Windows. Signed-off-by: Tal Shnaiderman --- drivers/baseband/meson.build | 4 + drivers/bus/ifpga/meson.build | 6 ++ drivers/bus/pci/meson.build| 14 ++- drivers/bus/pci/pci_common.

[dpdk-dev] [PATCH v2 1/7] eal: move OS common functions to single file

2020-04-28 Thread talshn
From: Tal Shnaiderman Move common functions between Unix and Windows to eal_common_config.c. Those simple functions are getter functions for IOVA, configuration, Multi-process. Move rte_config and runtime_dir to be defined in a common file. Signed-off-by: Tal Shnaiderman --- lib/librte_eal/c

[dpdk-dev] [PATCH v2 5/7] drivers: fix incorrect meson import folder for Windows

2020-04-28 Thread talshn
From: Tal Shnaiderman import library (/IMPLIB) in meson.build should use the 'drivers' and not 'libs' folder. The error is: fatal error LNK1149: output filename matches input filename. The fix uses the correct folder. Fixes: 5ed3766981 ("drivers: process shared link dependencies as for libs")

[dpdk-dev] [PATCH v2 3/7] eal: add function finding integer in a string

2020-04-28 Thread talshn
From: Tal Shnaiderman Addition of a function to skip leading chars which are not part of the numeric base and return the number in the needed base. This is needed to call strtoul correctly and will be used by bus/PCI to get the BDF from a PCI output. Signed-off-by: Tal Shnaiderman --- lib/lib

[dpdk-dev] [PATCH v2 6/7] bus/pci: introduce Windows support with stubs

2020-04-28 Thread talshn
From: Tal Shnaiderman Addition of stub eal and bus/pci functions to compile bus/pci for Windows. Signed-off-by: Tal Shnaiderman --- drivers/baseband/meson.build | 4 + drivers/bus/ifpga/meson.build | 6 ++ drivers/bus/pci/meson.build| 14 ++- drivers/bus/pci/pci_common.

[dpdk-dev] [PATCH v2 0/7] Windows bus/pci support

2020-04-28 Thread talshn
From: Tal Shnaiderman This patchset implements the EAL and PCI functions needed for probing PMDs using RTE_KDRV_NONE on Windows. Depends-on: series-9374 ("Windows basic memory management") v2: * fix style issues. * fix error handing flow in pci.c * change eal_config.c t

[dpdk-dev] [PATCH v2 2/7] pci: build on Windows

2020-04-28 Thread talshn
From: Tal Shnaiderman Changing all of PCIs Unix memory mapping to the new memory allocation API wrapper. Added off_t in Windows header file as a supported type since it is needed by PCI. Signed-off-by: Tal Shnaiderman --- lib/librte_eal/windows/include/rte_os.h | 1 + lib/librte_pci/rte_pci.

[dpdk-dev] [PATCH v2 4/7] drivers: ignore pmdinfogen generation for Windows

2020-04-28 Thread talshn
From: Tal Shnaiderman pmdinfogen generation is currently unsupported for Windows. The relevant part in meson.build is skipped. Signed-off-by: Tal Shnaiderman --- drivers/meson.build | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/meson.build b/drivers/meson.build

[dpdk-dev] [PATCH v2 7/7] bus/pci: support Windows with bifurcated drivers

2020-04-28 Thread talshn
From: Tal Shnaiderman Uses SetupAPI.h functions to scan PCI tree. Uses DEVPKEY_Device_Numa_Node to get the PCI Numa node. scanning currently supports types RTE_KDRV_NONE. Signed-off-by: Tal Shnaiderman --- drivers/bus/pci/windows/pci.c| 342 ++- lib/libr

[dpdk-dev] [PATCH v3 1/7] eal: move OS common functions to single file

2020-05-07 Thread talshn
From: Tal Shnaiderman Move common functions between Unix and Windows to eal_common_config.c. Those simple functions are getter functions for IOVA, configuration, Multi-process. Move rte_config and runtime_dir to be defined in a common file. Signed-off-by: Tal Shnaiderman --- lib/librte_eal/c

[dpdk-dev] [PATCH v3 5/7] drivers: fix incorrect meson import folder for Windows

2020-05-07 Thread talshn
From: Tal Shnaiderman import library (/IMPLIB) in meson.build should use the 'drivers' and not 'libs' folder. The error is: fatal error LNK1149: output filename matches input filename. The fix uses the correct folder. Fixes: 5ed3766981 ("drivers: process shared link dependencies as for libs")

[dpdk-dev] [PATCH v3 3/7] pci: build on Windows

2020-05-07 Thread talshn
From: Tal Shnaiderman Added off_t in Windows header file as a supported type since it is needed by PCI. Signed-off-by: Tal Shnaiderman --- lib/librte_eal/windows/include/rte_os.h | 1 + lib/meson.build | 5 - 2 files changed, 5 insertions(+), 1 deletion(-) diff --g

[dpdk-dev] [PATCH v3 7/7] bus/pci: support Windows with bifurcated drivers

2020-05-07 Thread talshn
From: Tal Shnaiderman Uses SetupAPI.h functions to scan PCI tree. Uses DEVPKEY_Device_Numa_Node to get the PCI NUMA node. Uses SPDRP_BUSNUMBER and SPDRP_BUSNUMBER to get the BDF. scanning currently supports types RTE_KDRV_NONE. Signed-off-by: Tal Shnaiderman --- drivers/bus/pci/windows/pci.c

[dpdk-dev] [PATCH v3 4/7] drivers: ignore pmdinfogen generation for Windows

2020-05-07 Thread talshn
From: Tal Shnaiderman pmdinfogen generation is currently unsupported for Windows. The relevant part in meson.build is skipped. Signed-off-by: Tal Shnaiderman --- drivers/meson.build | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/meson.build b/drivers/meson.build

[dpdk-dev] [PATCH v3 2/7] pci: use OS generic memory mapping functions

2020-05-07 Thread talshn
From: Tal Shnaiderman Changing all of PCIs Unix memory mapping to the new memory allocation API wrapper. Change all of PCI mapping function usage in bus/pci to support the new API. Signed-off-by: Tal Shnaiderman --- drivers/bus/pci/bsd/pci.c| 2 +- drivers/bus/pci/linux/pci_uio.c |

[dpdk-dev] [PATCH v3 0/7] Windows bus/pci support

2020-05-07 Thread talshn
From: Tal Shnaiderman This patchset implements the EAL and PCI functions needed for probing PMDs using RTE_KDRV_NONE on Windows. Depends-on: series-9713 ("Windows basic memory management") v3: * Changes in BDF and hardware ids retrieval(DmitryK). * Apply new generic MM to all p

[dpdk-dev] [PATCH v3 6/7] bus/pci: introduce Windows support with stubs

2020-05-07 Thread talshn
From: Tal Shnaiderman Addition of stub eal and bus/pci functions to compile bus/pci for Windows. Signed-off-by: Tal Shnaiderman --- drivers/baseband/meson.build | 4 + drivers/bus/ifpga/meson.build | 6 ++ drivers/bus/pci/meson.build| 14 ++- drivers/bus/pci/pci_common.

[dpdk-dev] [PATCH v4 3/8] pci: build on Windows

2020-05-19 Thread talshn
From: Tal Shnaiderman Added in Windows header file includes to include off_t type since it is needed by PCI. export per_lcore__rte_errno from eal since it is needed by PCI. Signed-off-by: Tal Shnaiderman --- lib/librte_eal/rte_eal_exports.def | 1 + lib/librte_eal/rte_eal_version.map

[dpdk-dev] [PATCH v4 7/8] bus/pci: introduce Windows support with stubs

2020-05-19 Thread talshn
From: Tal Shnaiderman Addition of stub eal and bus/pci functions to compile bus/pci for Windows. Signed-off-by: Tal Shnaiderman --- drivers/baseband/meson.build | 4 + drivers/bus/ifpga/meson.build | 6 ++ drivers/bus/pci/meson.build| 14 ++- drivers/bus/pci/pci_common.

[dpdk-dev] [PATCH v4 1/8] eal: move OS common functions to single file

2020-05-19 Thread talshn
From: Tal Shnaiderman Move common functions between Unix and Windows to eal_common_config.c. Those simple functions are getter functions for IOVA, configuration, Multi-process. Move rte_config and runtime_dir to be defined in a common file. Signed-off-by: Tal Shnaiderman --- lib/librte_eal/c

[dpdk-dev] [PATCH v4 0/8] Windows bus/pci support

2020-05-19 Thread talshn
From: Tal Shnaiderman This patchset implements the EAL and PCI functions needed for probing PMDs using RTE_KDRV_NONE on Windows. Depends-on: series-9713 ("Windows basic memory management") v4: * Fixed various warnings and naming conventions(DmitryK). * Fixed broken mingw-64 bui

[dpdk-dev] [PATCH v4 4/8] pci: fix format warning on Windows

2020-05-19 Thread talshn
From: Tal Shnaiderman the struct rte_pci_addr defines domain as uint32_t variable however the PCI_PRI_FMT macro used for logging the struct sets the format of domain to uint16_t. The mismatch causes the following warning messages in Windows clang build: format specifies type 'unsigned short' bu

[dpdk-dev] [PATCH v4 2/8] pci: use OS generic memory mapping functions

2020-05-19 Thread talshn
From: Tal Shnaiderman Changing all of PCIs Unix memory mapping to the new memory allocation API wrapper. Change all of PCI mapping function usage in bus/pci to support the new API. Signed-off-by: Tal Shnaiderman --- drivers/bus/pci/bsd/pci.c| 2 +- drivers/bus/pci/linux/pci_uio.c |

[dpdk-dev] [PATCH v4 5/8] drivers: ignore pmdinfogen generation for Windows

2020-05-19 Thread talshn
From: Tal Shnaiderman pmdinfogen generation is currently unsupported for Windows. The relevant part in meson.build is skipped. Signed-off-by: Tal Shnaiderman --- drivers/meson.build | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/meson.build b/drivers/meson.build

[dpdk-dev] [PATCH v4 8/8] bus/pci: support Windows with bifurcated drivers

2020-05-19 Thread talshn
From: Tal Shnaiderman Uses SetupAPI.h functions to scan PCI tree. Uses DEVPKEY_Device_Numa_Node to get the PCI NUMA node. Uses SPDRP_BUSNUMBER and SPDRP_BUSNUMBER to get the BDF. scanning currently supports types RTE_KDRV_NONE. Signed-off-by: Tal Shnaiderman --- drivers/bus/pci/windows/pci.c

[dpdk-dev] [PATCH v4 6/8] drivers: fix incorrect meson import folder for Windows

2020-05-19 Thread talshn
From: Tal Shnaiderman import library (/IMPLIB) in meson.build should use the 'drivers' and not 'libs' folder. The error is: fatal error LNK1149: output filename matches input filename. The fix uses the correct folder. Fixes: 5ed3766981 ("drivers: process shared link dependencies as for libs")

[dpdk-dev] [PATCH] mbuf: align rte_mbuf for Windows

2020-05-19 Thread talshn
From: Tal Shnaiderman Using uint32_t type bit-fields in Windows will pads the 'L2/L3/L4 and tunnel information' union with additional bits. This padding causes rte_mbuf size misalignment and the total size increases to 3 cache-lines. Changed packet_type bit-fields types from uint32_t to uint8_t

[dpdk-dev] [PATCH 0/4] Support librte_mbuf on Windows

2020-06-01 Thread talshn
From: Tal Shnaiderman This patchset enables compilation and build of librte_mbuf on Windows. Depends-on: series-10276 ("build mempool on Windows") Depends-on: series-10156 ("Windows bus/pci support") Tal Shnaiderman (4): eal: move OS common config code to single file eal: set byteorder in W

[dpdk-dev] [PATCH 1/4] eal: move OS common config code to single file

2020-06-01 Thread talshn
From: Tal Shnaiderman Move common struct rte_config and function rte_eal_mbuf_user_pool_ops to eal_config. Signed-off-by: Tal Shnaiderman --- lib/librte_eal/common/eal_common_config.c | 11 +++ lib/librte_eal/freebsd/eal.c | 10 -- lib/librte_eal/linux/eal.c

[dpdk-dev] [PATCH 3/4] eal: export needed functions for mbuf

2020-06-01 Thread talshn
From: Tal Shnaiderman Export needed eal functions used by the lib. Signed-off-by: Tal Shnaiderman --- lib/librte_eal/common/meson.build | 1 + lib/librte_eal/rte_eal_exports.def | 3 +++ lib/librte_eal/rte_eal_version.map | 1 + 3 files changed, 5 insertions(+) diff --git a/lib/librte_eal/co

[dpdk-dev] [PATCH 4/4] mbuf: build on Windows

2020-06-01 Thread talshn
From: Tal Shnaiderman Build the lib for Windows. Signed-off-by: Tal Shnaiderman --- lib/meson.build | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/lib/meson.build b/lib/meson.build index 5486628625..e1a729da8a 100644 --- a/lib/meson.build +++ b/lib/meson.build @@ -40,8 +

[dpdk-dev] [PATCH 2/4] eal: set byteorder in Windows to little endian

2020-06-01 Thread talshn
From: Tal Shnaiderman Set the endianness in Windows to RTE_LITTLE_ENDIAN as support for Windows is limited to x86 architecture for now. Signed-off-by: Tal Shnaiderman --- lib/librte_eal/include/generic/rte_byteorder.h | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/lib/l

[dpdk-dev] [PATCH 0/2] Support EAL debug functions on Windows

2020-06-07 Thread talshn
From: Tal Shnaiderman This patchset adds support for the EAL debug function on Windows by implementing backtracing in rte_dump_stack and cleanup calls in rte_eal_cleanup. Additionally, the functions rte_exit, __rte_panic and rte_dump_registers were moved to a common file to avoid code duplicatio

[dpdk-dev] [PATCH 1/2] eal: move OS common debug functions to single file

2020-06-07 Thread talshn
From: Tal Shnaiderman Move common functions between Unix and Windows to eal_common_debug.c. Those functions are rte_exit, __rte_panic and rte_dump_registers which has the same implementation on Unix and Windows. Signed-off-by: Tal Shnaiderman --- lib/librte_eal/common/eal_common_debug.c | 56

[dpdk-dev] [PATCH 2/2] eal/windows: support debug calls

2020-06-07 Thread talshn
From: Tal Shnaiderman Support the debug functions in eal_common_debug.c for Windows. Implementation of rte_dump_stack to get a backtrace similarly to Unix and of rte_eal_cleanup in eal.c. Signed-off-by: Tal Shnaiderman --- config/meson.build | 1 + lib/librte_eal/common/meson

[dpdk-dev] [PATCH v2 1/2] eal: move OS common debug functions to single file

2020-06-08 Thread talshn
From: Tal Shnaiderman Move common functions between Unix and Windows to eal_common_debug.c. Those functions are rte_exit, __rte_panic and rte_dump_registers which has the same implementation on Unix and Windows. Signed-off-by: Tal Shnaiderman --- lib/librte_eal/common/eal_common_debug.c | 58

[dpdk-dev] [PATCH v2 2/2] eal/windows: support debug calls

2020-06-08 Thread talshn
From: Tal Shnaiderman Support the debug functions in eal_common_debug.c for Windows. Implementation of rte_dump_stack to get a backtrace similarly to Unix and of rte_eal_cleanup in eal.c. Signed-off-by: Tal Shnaiderman --- config/meson.build | 1 + lib/librte_eal/common/meson

[dpdk-dev] [PATCH v2 0/2] Support EAL debug functions on Windows

2020-06-08 Thread talshn
From: Tal Shnaiderman This patchset adds support for the EAL debug function on Windows by implementing backtracing in rte_dump_stack and cleanup calls in rte_eal_cleanup. Additionally, the functions rte_exit, __rte_panic and rte_dump_registers were moved to a common file to avoid code duplicatio

[dpdk-dev] [PATCH v5 4/8] pci: fix format warning on Windows

2020-06-09 Thread talshn
From: Tal Shnaiderman the struct rte_pci_addr defines domain as uint32_t variable however the PCI_PRI_FMT macro used for logging the struct sets the format of domain to uint16_t. The mismatch causes the following warning messages in Windows clang build: format specifies type 'unsigned short' bu

[dpdk-dev] [PATCH v5 0/8] Windows bus/pci support

2020-06-09 Thread talshn
From: Tal Shnaiderman This patchset implements the EAL and PCI functions needed for probing PMDs using RTE_KDRV_NONE on Windows. --- Depends-on: series-10336 ("Windows basic memory management") v5: * Adjust mem-mapping functions to changes in latest memory management patchset.

[dpdk-dev] [PATCH v5 2/8] pci: use OS generic memory mapping functions

2020-06-09 Thread talshn
From: Tal Shnaiderman Changing all of PCIs Unix memory mapping to the new memory allocation API wrapper. Change all of PCI mapping function usage in bus/pci to support the new API. Signed-off-by: Tal Shnaiderman --- drivers/bus/pci/bsd/pci.c| 2 +- drivers/bus/pci/linux/pci_uio.c |

[dpdk-dev] [PATCH v5 1/8] eal: move OS common functions to single file

2020-06-09 Thread talshn
From: Tal Shnaiderman Move common functions between Unix and Windows to eal_common_config.c. Those simple functions are getter functions for IOVA, configuration, Multi-process. Move rte_config and runtime_dir to be defined in a common file. Signed-off-by: Tal Shnaiderman --- lib/librte_eal/c

[dpdk-dev] [PATCH v5 6/8] drivers: fix incorrect meson import folder for Windows

2020-06-09 Thread talshn
From: Tal Shnaiderman import library (/IMPLIB) in meson.build should use the 'drivers' and not 'libs' folder. The error is: fatal error LNK1149: output filename matches input filename. The fix uses the correct folder. Fixes: 5ed3766981 ("drivers: process shared link dependencies as for libs")

[dpdk-dev] [PATCH v5 5/8] drivers: ignore pmdinfogen generation for Windows

2020-06-09 Thread talshn
From: Tal Shnaiderman pmdinfogen generation is currently unsupported for Windows. The relevant part in meson.build is skipped. Signed-off-by: Tal Shnaiderman --- drivers/meson.build | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/meson.build b/drivers/meson.build

[dpdk-dev] [PATCH v5 3/8] pci: build on Windows

2020-06-09 Thread talshn
From: Tal Shnaiderman Added in Windows header file includes to include off_t type since it is needed by PCI. export per_lcore__rte_errno from eal since it is needed by PCI. Signed-off-by: Tal Shnaiderman --- lib/librte_eal/rte_eal_exports.def | 1 + lib/librte_eal/rte_eal_version.map

[dpdk-dev] [PATCH v5 8/8] bus/pci: support Windows with bifurcated drivers

2020-06-09 Thread talshn
From: Tal Shnaiderman Uses SetupAPI.h functions to scan PCI tree. Uses DEVPKEY_Device_Numa_Node to get the PCI NUMA node. Uses SPDRP_BUSNUMBER and SPDRP_BUSNUMBER to get the BDF. scanning currently supports types RTE_KDRV_NONE. Signed-off-by: Tal Shnaiderman --- drivers/bus/pci/windows/pci.c

[dpdk-dev] [PATCH v5 7/8] bus/pci: introduce Windows support with stubs

2020-06-09 Thread talshn
From: Tal Shnaiderman Addition of stub eal and bus/pci functions to compile bus/pci for Windows. Signed-off-by: Tal Shnaiderman --- drivers/baseband/meson.build | 4 + drivers/bus/ifpga/meson.build | 6 ++ drivers/bus/pci/meson.build| 14 ++- drivers/bus/pci/pci_common.

[dpdk-dev] [PATCH v6 1/9] eal: move OS common functions to single file

2020-06-18 Thread talshn
From: Tal Shnaiderman Move common functions between Unix and Windows to eal_common_config.c. Those functions are getter functions for IOVA, configuration, Multi-process. Move rte_config, internal_config, early_mem_config and runtime_dir to be defined in a common file. Signed-off-by: Tal Shnaid

[dpdk-dev] [PATCH v6 3/9] pci: build on Windows

2020-06-18 Thread talshn
From: Tal Shnaiderman Added in rte_pci header file to include off_t type since it is missing for Windows. Signed-off-by: Tal Shnaiderman --- lib/librte_eal/rte_eal_exports.def | 1 + lib/librte_pci/rte_pci.h | 1 + lib/meson.build| 5 - 3 files changed, 6 ins

[dpdk-dev] [PATCH v6 4/9] pci: fix format warning on Windows

2020-06-18 Thread talshn
From: Tal Shnaiderman the struct rte_pci_addr defines domain as uint32_t variable however the PCI_PRI_FMT macro used for logging the struct sets the format of domain to uint16_t. The mismatch causes the following warning messages in Windows clang build: format specifies type 'unsigned short' bu

[dpdk-dev] [PATCH v6 2/9] pci: use OS generic memory mapping functions

2020-06-18 Thread talshn
From: Tal Shnaiderman Changing all of PCIs Unix memory mapping to the new memory allocation API wrapper. Change all of PCI mapping function usage in bus/pci to support the new API. Signed-off-by: Tal Shnaiderman --- drivers/bus/pci/bsd/pci.c| 2 +- drivers/bus/pci/linux/pci_uio.c |

[dpdk-dev] [PATCH v6 0/9] Windows bus/pci support

2020-06-18 Thread talshn
From: Tal Shnaiderman This patchset implements the EAL and PCI functions needed for probing PMDs using RTE_KDRV_NONE on Windows. --- v6: * Fix duplication of exported functions for mingw by modifying the version.map in build (new commit) * Fix comments and move additional funct

[dpdk-dev] [PATCH v6 5/9] drivers: ignore pmdinfogen generation for Windows

2020-06-18 Thread talshn
From: Tal Shnaiderman pmdinfogen generation is currently unsupported for Windows. The relevant part in meson.build is skipped. Signed-off-by: Tal Shnaiderman --- drivers/meson.build | 27 ++- 1 file changed, 14 insertions(+), 13 deletions(-) diff --git a/drivers/meson.

[dpdk-dev] [PATCH v6 6/9] drivers: fix incorrect meson import folder for Windows

2020-06-18 Thread talshn
From: Tal Shnaiderman import library (/IMPLIB) in meson.build should use the 'drivers' and not 'libs' folder. The error is: fatal error LNK1149: output filename matches input filename. The fix uses the correct folder. Fixes: 5ed3766981 ("drivers: process shared link dependencies as for libs")

[dpdk-dev] [PATCH v6 9/9] build: generate version.map file for MingW on Windows

2020-06-18 Thread talshn
From: Tal Shnaiderman The MingW build for Windows has special cases where exported function contain additional prefix: __emutls_v.per_lcore__* To avoid adding those prefixed functions to the version.map file the map_to_def.py script was modified to create a map file for Mingw with the needed ch

[dpdk-dev] [PATCH v6 8/9] bus/pci: support Windows with bifurcated drivers

2020-06-18 Thread talshn
From: Tal Shnaiderman Uses SetupAPI.h functions to scan PCI tree. Uses DEVPKEY_Device_Numa_Node to get the PCI NUMA node. Uses SPDRP_BUSNUMBER and SPDRP_BUSNUMBER to get the BDF. scanning currently supports types RTE_KDRV_NONE. Signed-off-by: Tal Shnaiderman --- drivers/bus/pci/windows/pci.c

[dpdk-dev] [PATCH v6 7/9] bus/pci: introduce Windows support with stubs

2020-06-18 Thread talshn
From: Tal Shnaiderman Addition of stub eal and bus/pci functions to compile bus/pci for Windows. Signed-off-by: Tal Shnaiderman --- drivers/baseband/meson.build | 4 + drivers/bus/ifpga/meson.build | 6 ++ drivers/bus/pci/meson.build| 14 ++- drivers/bus/pci/pci_common.

[dpdk-dev] [PATCH v7 0/9] Windows bus/pci support

2020-06-21 Thread talshn
From: Tal Shnaiderman This patchset implements the EAL and PCI functions needed for probing PMDs using RTE_KDRV_NONE on Windows. --- v7: * Remove Unneeded code from MinGW mapping script (DmitryK) * Fix error flow issues in pci.c (DmitryK) * Fix Unix build errors followin

[dpdk-dev] [PATCH v7 6/9] drivers: fix incorrect meson import folder for Windows

2020-06-21 Thread talshn
From: Tal Shnaiderman import library (/IMPLIB) in meson.build should use the 'drivers' and not 'libs' folder. The error is: fatal error LNK1149: output filename matches input filename. The fix uses the correct folder. Fixes: 5ed3766981 ("drivers: process shared link dependencies as for libs")

[dpdk-dev] [PATCH v7 8/9] bus/pci: support Windows with bifurcated drivers

2020-06-21 Thread talshn
From: Tal Shnaiderman Uses SetupAPI.h functions to scan PCI tree. Uses DEVPKEY_Device_Numa_Node to get the PCI NUMA node. Uses SPDRP_BUSNUMBER and SPDRP_BUSNUMBER to get the BDF. scanning currently supports types RTE_KDRV_NONE. Signed-off-by: Tal Shnaiderman --- drivers/bus/pci/windows/pci.c

[dpdk-dev] [PATCH v7 2/9] pci: use OS generic memory mapping functions

2020-06-21 Thread talshn
From: Tal Shnaiderman Changing all of PCIs Unix memory mapping to the new memory allocation API wrapper. Change all of PCI mapping function usage in bus/pci to support the new API. Signed-off-by: Tal Shnaiderman --- drivers/bus/pci/bsd/pci.c | 2 +- drivers/bus/pci/linux/pci_uio.c

[dpdk-dev] [PATCH v7 1/9] eal: move OS common functions to single file

2020-06-21 Thread talshn
From: Tal Shnaiderman Move common functions between Unix and Windows to eal_common_config.c. Those functions are getter functions for IOVA, configuration, Multi-process. Move rte_config, internal_config, early_mem_config and runtime_dir to be defined in a common file. Signed-off-by: Tal Shnaid

[dpdk-dev] [PATCH v7 7/9] bus/pci: introduce Windows support with stubs

2020-06-21 Thread talshn
From: Tal Shnaiderman Addition of stub eal and bus/pci functions to compile bus/pci for Windows. Signed-off-by: Tal Shnaiderman --- drivers/baseband/meson.build | 4 + drivers/bus/ifpga/meson.build | 6 ++ drivers/bus/pci/meson.build| 14 ++- drivers/bus/pci/pci_common.

[dpdk-dev] [PATCH v7 4/9] pci: fix format warning on Windows

2020-06-21 Thread talshn
From: Tal Shnaiderman the struct rte_pci_addr defines domain as uint32_t variable however the PCI_PRI_FMT macro used for logging the struct sets the format of domain to uint16_t. The mismatch causes the following warning messages in Windows clang build: format specifies type 'unsigned short' bu

[dpdk-dev] [PATCH v7 5/9] drivers: ignore pmdinfogen generation for Windows

2020-06-21 Thread talshn
From: Tal Shnaiderman pmdinfogen generation is currently unsupported for Windows. The relevant part in meson.build is skipped. Signed-off-by: Tal Shnaiderman --- drivers/meson.build | 27 ++- 1 file changed, 14 insertions(+), 13 deletions(-) diff --git a/drivers/meson.

[dpdk-dev] [PATCH v7 3/9] pci: build on Windows

2020-06-21 Thread talshn
From: Tal Shnaiderman Added in rte_pci header file to include off_t type since it is missing for Windows. Signed-off-by: Tal Shnaiderman --- lib/librte_eal/rte_eal_exports.def | 1 + lib/librte_pci/rte_pci.h | 1 + lib/meson.build| 5 - 3 files changed, 6 ins

[dpdk-dev] [PATCH v7 9/9] build: generate version.map file for MinGW on Windows

2020-06-21 Thread talshn
From: Tal Shnaiderman The MinGW build for Windows has special cases where exported function contain additional prefix: __emutls_v.per_lcore__* To avoid adding those prefixed functions to the version.map file the map_to_def.py script was modified to create a map file for MinGW with the needed ch

[dpdk-dev] [PATCH v8 0/9] Windows bus/pci support

2020-06-22 Thread talshn
From: Tal Shnaiderman This patchset implements the EAL and PCI functions needed for probing PMDs using RTE_KDRV_NONE on Windows. --- v8: * Move internal_config to static inside eal_common_config.c and use getters for all external uses. * Fix duplicated export line (FadyB)

[dpdk-dev] [PATCH v8 5/9] drivers: ignore pmdinfogen generation for Windows

2020-06-22 Thread talshn
From: Tal Shnaiderman pmdinfogen generation is currently unsupported for Windows. The relevant part in meson.build is skipped. Signed-off-by: Tal Shnaiderman --- drivers/meson.build | 27 ++- 1 file changed, 14 insertions(+), 13 deletions(-) diff --git a/drivers/meson.

[dpdk-dev] [PATCH v8 3/9] pci: build on Windows

2020-06-22 Thread talshn
From: Tal Shnaiderman Added in rte_pci header file to include off_t type since it is missing for Windows. Signed-off-by: Tal Shnaiderman --- lib/librte_eal/rte_eal_exports.def | 1 + lib/librte_pci/rte_pci.h | 1 + lib/meson.build| 5 - 3 files changed, 6 ins

[dpdk-dev] [PATCH v8 7/9] bus/pci: introduce Windows support with stubs

2020-06-22 Thread talshn
From: Tal Shnaiderman Addition of stub eal and bus/pci functions to compile bus/pci for Windows. Signed-off-by: Tal Shnaiderman --- drivers/baseband/meson.build | 4 + drivers/bus/ifpga/meson.build | 6 ++ drivers/bus/pci/meson.build| 14 ++- drivers/bus/pci/pci_common.

[dpdk-dev] [PATCH v8 8/9] bus/pci: support Windows with bifurcated drivers

2020-06-22 Thread talshn
From: Tal Shnaiderman Uses SetupAPI.h functions to scan PCI tree. Uses DEVPKEY_Device_Numa_Node to get the PCI NUMA node. Uses SPDRP_BUSNUMBER and SPDRP_BUSNUMBER to get the BDF. scanning currently supports types RTE_KDRV_NONE. Signed-off-by: Tal Shnaiderman --- drivers/bus/pci/windows/pci.c

[dpdk-dev] [PATCH v8 6/9] drivers: fix incorrect meson import folder for Windows

2020-06-22 Thread talshn
From: Tal Shnaiderman import library (/IMPLIB) in meson.build should use the 'drivers' and not 'libs' folder. The error is: fatal error LNK1149: output filename matches input filename. The fix uses the correct folder. Fixes: 5ed3766981 ("drivers: process shared link dependencies as for libs")

[dpdk-dev] [PATCH v8 9/9] build: generate version.map file for MinGW on Windows

2020-06-22 Thread talshn
From: Tal Shnaiderman The MinGW build for Windows has special cases where exported function contain additional prefix: __emutls_v.per_lcore__* To avoid adding those prefixed functions to the version.map file the map_to_def.py script was modified to create a map file for MinGW with the needed ch

[dpdk-dev] [PATCH v8 2/9] pci: use OS generic memory mapping functions

2020-06-22 Thread talshn
From: Tal Shnaiderman Changing all of PCIs Unix memory mapping to the new memory allocation API wrapper. Change all of PCI mapping function usage in bus/pci to support the new API. Signed-off-by: Tal Shnaiderman --- drivers/bus/pci/bsd/pci.c | 2 +- drivers/bus/pci/linux/pci_uio.c

[dpdk-dev] [PATCH v8 4/9] pci: fix format warning on Windows

2020-06-22 Thread talshn
From: Tal Shnaiderman the struct rte_pci_addr defines domain as uint32_t variable however the PCI_PRI_FMT macro used for logging the struct sets the format of domain to uint16_t. The mismatch causes the following warning messages in Windows clang build: format specifies type 'unsigned short' bu

[dpdk-dev] [PATCH v8 1/9] eal: move OS common functions to single file

2020-06-22 Thread talshn
From: Tal Shnaiderman Move common functions between Unix and Windows to eal_common_config.c. Those functions are getter functions for IOVA, configuration, Multi-process. Move rte_config, internal_config, early_mem_config and runtime_dir to be defined in the common file with getter functions. R

[dpdk-dev] [PATCH v3 1/2] eal: move OS common debug functions to single file

2020-06-23 Thread talshn
From: Tal Shnaiderman Move common functions between Unix and Windows to eal_common_debug.c. Those functions are rte_exit, __rte_panic and rte_dump_registers which has the same implementation on Unix and Windows. Signed-off-by: Tal Shnaiderman --- lib/librte_eal/common/eal_common_debug.c | 59

[dpdk-dev] [PATCH v3 2/2] eal/windows: support debug calls

2020-06-23 Thread talshn
From: Tal Shnaiderman Support the debug functions in eal_common_debug.c for Windows. Implementation of rte_dump_stack to get a backtrace similarly to Unix and of rte_eal_cleanup in eal.c. Signed-off-by: Tal Shnaiderman --- config/meson.build | 1 + lib/librte_eal/common/meson

[dpdk-dev] [PATCH v3 0/2] Support EAL debug functions on Windows

2020-06-23 Thread talshn
From: Tal Shnaiderman This patchset adds support for the EAL debug function on Windows by implementing backtracing in rte_dump_stack and cleanup calls in rte_eal_cleanup. Additionally, the functions rte_exit, __rte_panic and rte_dump_registers were moved to a common file to avoid code duplicat

[dpdk-dev] [PATCH v9 03/10] pci: use OS generic memory mapping functions

2020-06-24 Thread talshn
From: Tal Shnaiderman Changing all of PCIs Unix memory mapping to the new memory allocation API wrapper. Change all of PCI mapping function usage in bus/pci to support the new API. Signed-off-by: Tal Shnaiderman --- drivers/bus/pci/bsd/pci.c | 2 +- drivers/bus/pci/linux/pci_uio.c

[dpdk-dev] [PATCH v9 00/10] Windows bus/pci support

2020-06-24 Thread talshn
From: Tal Shnaiderman This patchset implements the EAL and PCI functions needed for probing PMDs using RTE_KDRV_NONE on Windows. --- v9: * Split the patch of common OS file to config and options patches (ThomasM). * Remove rte_ prefixes from new functions as they are eal intern

[dpdk-dev] [PATCH v9 10/10] build: generate version.map file for MinGW on Windows

2020-06-24 Thread talshn
From: Tal Shnaiderman The MinGW build for Windows has special cases where exported function contain additional prefix: __emutls_v.per_lcore__* To avoid adding those prefixed functions to the version.map file the map_to_def.py script was modified to create a map file for MinGW with the needed ch

[dpdk-dev] [PATCH v9 09/10] bus/pci: support Windows with bifurcated drivers

2020-06-24 Thread talshn
From: Tal Shnaiderman Uses SetupAPI.h functions to scan PCI tree. Uses DEVPKEY_Device_Numa_Node to get the PCI NUMA node. Uses SPDRP_BUSNUMBER and SPDRP_BUSNUMBER to get the BDF. scanning currently supports types RTE_KDRV_NONE. Signed-off-by: Tal Shnaiderman --- drivers/bus/pci/windows/pci.c

[dpdk-dev] [PATCH v9 07/10] drivers: fix incorrect meson import folder for Windows

2020-06-24 Thread talshn
From: Tal Shnaiderman import library (/IMPLIB) in meson.build should use the 'drivers' and not 'libs' folder. The error is: fatal error LNK1149: output filename matches input filename. The fix uses the correct folder. Fixes: 5ed3766981 ("drivers: process shared link dependencies as for libs")

[dpdk-dev] [PATCH v9 08/10] bus/pci: introduce Windows support with stubs

2020-06-24 Thread talshn
From: Tal Shnaiderman Addition of stub eal and bus/pci functions to compile bus/pci for Windows. Signed-off-by: Tal Shnaiderman --- drivers/baseband/meson.build | 4 + drivers/bus/ifpga/meson.build | 6 ++ drivers/bus/pci/meson.build| 14 ++- drivers/bus/pci/pci_common.

[dpdk-dev] [PATCH v9 06/10] drivers: ignore pmdinfogen generation for Windows

2020-06-24 Thread talshn
From: Tal Shnaiderman pmdinfogen generation is currently unsupported for Windows. The relevant part in meson.build is skipped. Signed-off-by: Tal Shnaiderman --- drivers/meson.build | 27 ++- 1 file changed, 14 insertions(+), 13 deletions(-) diff --git a/drivers/meson.

[dpdk-dev] [PATCH v9 04/10] pci: build on Windows

2020-06-24 Thread talshn
From: Tal Shnaiderman Added in rte_pci header file to include off_t type since it is missing for Windows. Signed-off-by: Tal Shnaiderman --- lib/librte_eal/rte_eal_exports.def | 1 + lib/librte_pci/rte_pci.h | 1 + lib/meson.build| 5 - 3 files changed, 6 ins

[dpdk-dev] [PATCH v9 05/10] pci: fix format warning on Windows

2020-06-24 Thread talshn
From: Tal Shnaiderman the struct rte_pci_addr defines domain as uint32_t variable however the PCI_PRI_FMT macro used for logging the struct sets the format of domain to uint16_t. The mismatch causes the following warning messages in Windows clang build: format specifies type 'unsigned short' bu

  1   2   >