From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 4752CA0561; Wed, 17 Mar 2021 20:19:35 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 07B3E140E59; Wed, 17 Mar 2021 20:19:35 +0100 (CET) Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by mails.dpdk.org (Postfix) with ESMTP id A7770140E54 for ; Wed, 17 Mar 2021 20:19:33 +0100 (CET) IronPort-SDR: a8fHxj9t/GWNzUR7LdNVfORGUqEN/pFRlrx0abYBQFHJAM215h3EGegjkcHwrgfTA6vgYKlEk5 lkYV4FWzjhGg== X-IronPort-AV: E=McAfee;i="6000,8403,9926"; a="250889265" X-IronPort-AV: E=Sophos;i="5.81,257,1610438400"; d="scan'208";a="250889265" Received: from orsmga008.jf.intel.com ([10.7.209.65]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 17 Mar 2021 12:19:32 -0700 IronPort-SDR: HoKuh0pVktTwnqFN219Yaw0Jc+YnUHkM901mxqe0N6QyvMpcqbvN+alz7L87xYeMQkT89xEK/X UiCjf6GP9FQw== X-IronPort-AV: E=Sophos;i="5.81,257,1610438400"; d="scan'208";a="412774959" Received: from rmenon-desk.amr.corp.intel.com (HELO [10.166.30.253]) ([10.166.30.253]) by orsmga008-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 17 Mar 2021 12:19:32 -0700 To: Dmitry Kozlyuk , dev@dpdk.org Cc: Tyler Retzlaff , Nick Connolly , Narcisa Ana Maria Vasile , Dmitry Malloy , Pallavi Kadam References: <20210220232910.772-1-dmitry.kozliuk@gmail.com> From: Ranjit Menon Message-ID: <1a2ee5dd-4933-b911-1ce3-ccf57084235e@intel.com> Date: Wed, 17 Mar 2021 12:19:31 -0700 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:68.0) Gecko/20100101 Thunderbird/68.12.1 MIME-Version: 1.0 In-Reply-To: <20210220232910.772-1-dmitry.kozliuk@gmail.com> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Content-Language: en-US Subject: Re: [dpdk-dev] [PATCH 0/7] eal/windows: do not expose POSIX symbols X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" 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