[dpdk-dev] [PATCH v9 02/10] eal: move OS common options functions

2020-06-24 Thread talshn
From: Tal Shnaiderman Move common functions between Unix and Windows to eal_common_options.c. Those functions are getter functions for rte_application_usage_hook. Signed-off-by: Tal Shnaiderman --- lib/librte_eal/common/eal_common_options.c | 23 +++ lib/librte_eal/common/

[dpdk-dev] [PATCH v9 01/10] eal: move OS common config objects

2020-06-24 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 2/2] bus/vdev: Windows support

2020-06-24 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 | 4 2 files changed, 4 insertions(+), 6 deletions(-) diff

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

2020-06-24 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 | 19 +++ 2 files cha

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

2020-06-24 Thread talshn
From: Tal Shnaiderman This patchset implements the EAL functions needed for probing PMDs using vdev on Windows. --- Depends-on: series-10579 ("Windows bus/pci support") --- Tal Shnaiderman (2): eal/windows: Add needed calls to detect vdev PMD bus/vdev: Windows support drivers/bus/vdev/me

[dpdk-dev] [PATCH v2 1/3] eal: correct OS headers in rte_byteorder.h

2020-06-25 Thread talshn
From: Tal Shnaiderman Inclusion of the endian.h header is set only for Linux OS. Windows endlessness will be determined by the predefined __BYTE_ORDER__ macro. Signed-off-by: Tal Shnaiderman --- lib/librte_eal/include/generic/rte_byteorder.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(

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

2020-06-25 Thread talshn
From: Tal Shnaiderman This patchset enables compilation and build of librte_mbuf on Windows. --- Depends-on: series-10550 ("build mempool on Windows") v2: * Remove unneeded endianness macro check (ThomasM) * Fix export list name order (ThomasM) * Remove __emutls_v.* MinGW export as it is no lo

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

2020-06-25 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 +++ 2 files changed, 4 insertions(+) diff --git a/lib/librte_eal/common/meson.build b/lib/librte_eal/common/

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

2020-06-25 Thread talshn
From: Tal Shnaiderman Build the lib for Windows. Signed-off-by: Tal Shnaiderman --- lib/meson.build | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/meson.build b/lib/meson.build index a9a5be0e5e..dcee2e68ec 100644 --- a/lib/meson.build +++ b/lib/meson.build @@ -39,8

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

2020-06-29 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 v10 00/10] Windows bus/pci support

2020-06-29 Thread talshn
From: Tal Shnaiderman This patchset implements the EAL and PCI functions needed for probing PMDs using RTE_KDRV_NONE on Windows. --- v10: * replace strncpy with strlcpy (ThomasM) * Fix indent and style issues with new variables (ThomasM) * Remove the remap function and u

[dpdk-dev] [PATCH v10 01/10] eal: move OS common config objects

2020-06-29 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 v10 04/10] pci: build on Windows

2020-06-29 Thread talshn
From: Tal Shnaiderman Added in rte_pci header file to include off_t type since it is missing for Windows. Define the implementation of the Linux function rte_pci_get_sysfs_path in pci_common.c for Linux OS only as it is unneeded for other OSs and to avoid the warning on deprecated call to geten

[dpdk-dev] [PATCH v10 02/10] eal: move OS common options functions

2020-06-29 Thread talshn
From: Tal Shnaiderman Move common functions between Unix and Windows to eal_common_options.c. Those functions are getter functions for rte_application_usage_hook. Signed-off-by: Tal Shnaiderman --- lib/librte_eal/common/eal_common_options.c | 23 +++ lib/librte_eal/common/

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

2020-06-29 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 v10 07/10] drivers: fix incorrect meson import folder for Windows

2020-06-29 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") C

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

2020-06-29 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 v10 08/10] bus/pci: introduce Windows support with stubs

2020-06-29 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 v10 10/10] build: generate version.map file for MinGW on Windows

2020-06-29 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 v10 09/10] bus/pci: support Windows with bifurcated drivers

2020-06-29 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

<    1   2