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 F0D40A0524; Sun, 21 Feb 2021 00:29:21 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 9360040683; Sun, 21 Feb 2021 00:29:20 +0100 (CET) Received: from mail-lj1-f175.google.com (mail-lj1-f175.google.com [209.85.208.175]) by mails.dpdk.org (Postfix) with ESMTP id 5E06A4013F for ; Sun, 21 Feb 2021 00:29:19 +0100 (CET) Received: by mail-lj1-f175.google.com with SMTP id r23so44148689ljh.1 for ; Sat, 20 Feb 2021 15:29:19 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=+dxNFTtR4XXSh0Xzov7ESLevYWmBC5Fcu3NiN3ivmnE=; b=YJBgb94ZZgOuvq7JdsYxrqTgjeywXyc6FBss7MctAgLnK7slW9iy2KMGY+kjSaVO5q 47fhGxVRxq9r7ciuE/gONYTQDah82sMs3V8QobftEDM3aYObMtTFlALUl/WwHYpoZpa5 Sqpmnw7LYIfPZj+Kib6jEjxvm00IKOFa30SbV0jIq+adCZyr1EsEwBhfoA49aJ+l8uFj eiLdw8mcLN0D+oBww4+nfEYyakqwzcEdcLvF/nk9aLitMACMp2YwFc80CN2l3siCibXL C0A+LTyfZEajWd2gSr6eH2OFs7twOYJ2/De5kOn6zBYcQUBHNDnck1V5vQPm9swikL5Z yB5Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=+dxNFTtR4XXSh0Xzov7ESLevYWmBC5Fcu3NiN3ivmnE=; b=UjNKqzpEdonc+bonZrdFfBMfzmsrsu4cYDmZT9K5rAleTMWzEBMRAzWmVzGNMsyTO3 n9yAG5SQIegE0R9PMSv/op530I9JHu9Vx/u1oxSlILlc0VaBonoPDQpyUOKU3KnplSyY x09sTBsmXldZ4TaQA5nbBrqS1aY4kjLQ8wJ6XUEzGreq2GFlW/eUAAspSu/MhELAgMun DnvKHyR5JD66q2wD/20SdtOFpqXVBlaa1rykOKr0vRmZVqdgonzm4PC1x0W7mHQdSFN2 MRp65gKzcr/L+zPAmDn/z3TLhK4lLorS5TuXD83mpBlixW8sErxm34qgWjqESKEC7Dnz PWoQ== X-Gm-Message-State: AOAM5320bZoOKc+pbV38JBgNsTv4yZXNUG9cFtfa025lPLXGHJO+DuvR sWiq1qNkZtI6Sy56uIdXbDiAwnM43gyFCg== X-Google-Smtp-Source: ABdhPJxrOv6TUqwQO6RZJP3lciuqUykhXvCYX/pfBzknhkkki9U+ss443N+MUR1U6nCYY0wpfzfaeQ== X-Received: by 2002:ac2:4c12:: with SMTP id t18mr4470676lfq.191.1613863758532; Sat, 20 Feb 2021 15:29:18 -0800 (PST) Received: from localhost.localdomain (broadband-37-110-65-23.ip.moscow.rt.ru. [37.110.65.23]) by smtp.gmail.com with ESMTPSA id f5sm1462931ljc.8.2021.02.20.15.29.17 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 20 Feb 2021 15:29:18 -0800 (PST) From: Dmitry Kozlyuk To: dev@dpdk.org Cc: Tyler Retzlaff , Nick Connolly , Dmitry Kozlyuk , Narcisa Ana Maria Vasile , Dmitry Malloy , Pallavi Kadam Date: Sun, 21 Feb 2021 02:29:03 +0300 Message-Id: <20210220232910.772-1-dmitry.kozliuk@gmail.com> X-Mailer: git-send-email 2.29.2 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: [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 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(-) -- 2.29.2