[dpdk-dev] [PATCH 0/7] eal/windows: do not expose POSIX symbols
Ranjit Menon
ranjit.menon at intel.com
Wed Mar 17 20:19:31 CET 2021
On 2/20/2021 3:29 PM, Dmitry Kozlyuk wrote:
> On Windows, rte_os.h contains a small POSIX compatibility set of
> functions and macros. Exposing it from EAL can break consumer own POSIX
> compatibility layer and is against standards in general.
>
> First define required wrappers, then fix POSIX dependencies in
> Windows-enabled libraries and drivers, then eliminate POSIX symbols from
> Windows EAL API. Commits are arranged so that they all compile and are
> limited in scope; patches 5, 6, 7 can be squashed if needed.
>
> No "Fixes" tags, because it's really an enhancement,
> preventing issues rather then solving direct ones.
>
> Dmitry Kozlyuk (7):
> eal: add wrappers for POSIX string functions
> eal: add macro for maximum path length
> eal: add sleep API
> eal: add asprintf() internal wrapper
> lib: remove POSIX dependencies
> drivers: remove POSIX dependencies
> eal/windows: do not expose POSIX symbols
>
> doc/guides/rel_notes/release_21_05.rst | 9 ++
> drivers/bus/pci/private.h | 2 +-
> drivers/bus/vdev/vdev.c | 4 +-
> drivers/bus/vdev/vdev_params.c | 3 +-
> drivers/common/mlx5/mlx5_common_pci.c | 4 +-
> drivers/net/i40e/i40e_ethdev.c | 56 +++++------
> lib/librte_cmdline/cmdline.c | 1 +
> lib/librte_eal/common/eal_common_config.c | 2 +-
> lib/librte_eal/common/eal_common_dev.c | 6 +-
> lib/librte_eal/common/eal_common_devargs.c | 7 +-
> lib/librte_eal/common/eal_common_errno.c | 4 +
> lib/librte_eal/common/eal_common_fbarray.c | 8 +-
> lib/librte_eal/common/eal_common_lcore.c | 2 +-
> lib/librte_eal/common/eal_common_log.c | 5 +-
> lib/librte_eal/common/eal_common_options.c | 42 ++++----
> lib/librte_eal/common/eal_common_timer.c | 5 +-
> lib/librte_eal/common/eal_common_trace.c | 2 +-
> lib/librte_eal/common/eal_common_trace_ctf.c | 4 +-
> .../common/eal_common_trace_utils.c | 13 +--
> lib/librte_eal/common/eal_filesystem.h | 8 +-
> lib/librte_eal/common/eal_hugepages.h | 2 +-
> lib/librte_eal/common/eal_internal_cfg.h | 2 +-
> lib/librte_eal/common/eal_private.h | 23 +++++
> lib/librte_eal/common/eal_trace.h | 2 +-
> lib/librte_eal/freebsd/include/rte_os.h | 6 +-
> lib/librte_eal/include/rte_string_fns.h | 42 ++++++++
> lib/librte_eal/include/rte_thread.h | 11 +++
> lib/librte_eal/linux/include/rte_os.h | 6 +-
> lib/librte_eal/rte_eal_exports.def | 2 +
> lib/librte_eal/unix/rte_thread.c | 6 ++
> lib/librte_eal/version.map | 3 +
> lib/librte_eal/windows/eal.c | 30 ++++++
> lib/librte_eal/windows/eal_thread.c | 9 +-
> lib/librte_eal/windows/include/dirent.h | 21 ++--
> lib/librte_eal/windows/include/rte_os.h | 99 ++-----------------
> lib/librte_ethdev/rte_class_eth.c | 2 +-
> lib/librte_ethdev/rte_ethdev.c | 2 +-
> lib/librte_kvargs/rte_kvargs.c | 17 ++--
> 38 files changed, 266 insertions(+), 206 deletions(-)
>
Acked-by: Ranjit Menon <ranjit.menon at intel.com>
More information about the dev
mailing list