From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 8A611A0535; Tue, 4 Feb 2020 23:00:43 +0100 (CET) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 647551C21A; Tue, 4 Feb 2020 23:00:43 +0100 (CET) Received: from out5-smtp.messagingengine.com (out5-smtp.messagingengine.com [66.111.4.29]) by dpdk.org (Postfix) with ESMTP id 4809E1C216 for ; Tue, 4 Feb 2020 23:00:42 +0100 (CET) Received: from compute1.internal (compute1.nyi.internal [10.202.2.41]) by mailout.nyi.internal (Postfix) with ESMTP id D2EDD22136; Tue, 4 Feb 2020 17:00:41 -0500 (EST) Received: from mailfrontend2 ([10.202.2.163]) by compute1.internal (MEProxy); Tue, 04 Feb 2020 17:00:41 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=monjalon.net; h= from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding:content-type; s=mesmtp; bh=toKnMWYYd9kI/Ck9GOzALGKAfTaQrKhIFcfjyK3d+ls=; b=cjLxX+7Yl6a6 pWi0UPyvaC++MfnwlXqhLxnJzAr4exA+2OKwarGeoanEGXz/X4/NU1wynzNpBBh+ 9hRmiPWivmgsh4XvycKqT/FGW0BtbyO6LbToYA5mXm/IGDVBuvM8SEJsuNS5Mufw 2JsGSjLquKmQe1iUI41Yl2Q+nNTHb4k= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-transfer-encoding:content-type :date:from:in-reply-to:message-id:mime-version:references :subject:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender :x-sasl-enc; s=fm1; bh=toKnMWYYd9kI/Ck9GOzALGKAfTaQrKhIFcfjyK3d+ ls=; b=EDB0iw4yiOWFjsNFtyZaAY/G/rFws6IiI5/gxvmOolqbYlTWE21o+vive lS5PISMaYDj0zETNqWCdJohaJVJ7tVg5eZ1EjGPpq67Q99RxweMAvD7D/olX073F /Gi7xWqIcC8/Xhwn/drlUNebiWVLXmWtz8z6fiXmx3ohO+IVbs44O/+H/5lC1Ux6 zZnfKSmh2skeLfIdoJOu1pIhtsnNNFjReQ7Et1B6GxcuJhsqXoUf8FTAIl8lQEVC Ak+GWLSpQtjp22cBow7n+TTQypPfc92MFbXOL/UywW3KAu5+5jBl8JgjW3xFbdqh E1jVmItIOUIjsvKbGy20nbnwSqKLw== X-ME-Sender: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedugedrgeelgdduheduucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhephffvufffkfgjfhgggfgtsehtufertddttddvnecuhfhrohhmpefvhhhomhgr shcuofhonhhjrghlohhnuceothhhohhmrghssehmohhnjhgrlhhonhdrnhgvtheqnecukf hppeejjedrudefgedrvddtfedrudekgeenucevlhhushhtvghrufhiiigvpedtnecurfgr rhgrmhepmhgrihhlfhhrohhmpehthhhomhgrshesmhhonhhjrghlohhnrdhnvght X-ME-Proxy: Received: from xps.localnet (184.203.134.77.rev.sfr.net [77.134.203.184]) by mail.messagingengine.com (Postfix) with ESMTPA id 6A2CA3060A08; Tue, 4 Feb 2020 17:00:40 -0500 (EST) From: Thomas Monjalon To: Dmitry Kozlyuk Cc: dev@dpdk.org, Harini Ramakrishnan , Omar Cardona , Pallavi Kadam , Ranjit Menon , Dmitry Kozlyuk Date: Tue, 04 Feb 2020 23:00:39 +0100 Message-ID: <2019930.Icojqenx9y@xps> In-Reply-To: <20200131052421.33525-1-dmitry.kozliuk@gmail.com> References: <20200131052421.33525-1-dmitry.kozliuk@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="us-ascii" Subject: Re: [dpdk-dev] [PATCH] eal/windows: refine public interface X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 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" 31/01/2020 06:24, Dmitry Kozlyuk: > The goal of rte_os.h is to mitigate OS differences for EAL users. > In Windows EAL, rte_os.h did excessive things: That's an interesting point of view. The idea of rte_os.h was to hide OS-specifics, so the DPDK applications have no Windows-specific header to include for using DPDK. The secondary goal is to avoid Windows-specific includes in DPDK libs and drivers. I agree bloating rte_os.h is a concern. If you can achieve the initial goal (no specific include in apps, libs and drivers) while reducing rte_os.h, I think it is good. > 1. It included platform SDK headers (windows.h, etc). Those files are > huge, require specific inclusion order, and are generally unused by > the code including rte_os.h. Declarations from platform SDK may > break otherwise platform-independent code, e.g. min, max, ERROR. > > 2. It included pthread.h, which is clearly not always required. > > 3. It defined functions private to Windows EAL. > > Reorganize Windows EAL includes in the following way: > > 1. Create rte_windows.h to properly import Windows-specific facilities. > Primary users are bus drivers, tests, and external applications. > > 2. Remove platform SDK includes from rte_os.h to make it portable. This file is compiled only on Windows. What do you mean with "portable"? > Copy necessary definitions to avoid including those headers. > > 3. Remove pthread.h include from rte_os.h. > > 4. Move declarations private to Windows EAL into eal_windows.h. > > Fixes: 428eb983 ("eal: add OS specific header file") nit: blank line missing here > Signed-off-by: Dmitry Kozlyuk