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 265F8A00C2; Thu, 23 Apr 2020 01:51:59 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 119C91D164; Thu, 23 Apr 2020 01:51:59 +0200 (CEST) Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by dpdk.org (Postfix) with ESMTP id AD3F21C2F9 for ; Thu, 23 Apr 2020 01:51:57 +0200 (CEST) IronPort-SDR: FYDS69yN3ZK9Zmrra7rinYbFH8D41k/AOZU2clTqx4Sds4gU3YvjZs4f6E3m3JT8/JsaKNR5Rm /atPQdh7mn4A== X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga005.fm.intel.com ([10.253.24.32]) by fmsmga107.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 22 Apr 2020 16:51:56 -0700 IronPort-SDR: Qcod3vTjxkwIHjUBUdBXtkclFauKrB2M9wwt7uDSQNERMYv92O6+2ArvhKYdfnpThRPi7FvYPE mwkpAkdyZFXg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.73,304,1583222400"; d="scan'208";a="456699695" Received: from rmenon-mobl.amr.corp.intel.com (HELO [10.255.228.246]) ([10.255.228.246]) by fmsmga005.fm.intel.com with ESMTP; 22 Apr 2020 16:51:56 -0700 To: talshn@mellanox.com, dev@dpdk.org Cc: thomas@monjalon.net, pallavi.kadam@intel.com, dmitry.kozliuk@gmail.com, david.marchand@redhat.com, grive@u256.net References: <20200422072747.15960-1-talshn@mellanox.com> <20200422072747.15960-2-talshn@mellanox.com> From: Ranjit Menon Message-ID: <1248d40a-741d-69ae-a149-4e5b98691f76@intel.com> Date: Wed, 22 Apr 2020 16:51:56 -0700 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:68.0) Gecko/20100101 Thunderbird/68.7.0 MIME-Version: 1.0 In-Reply-To: <20200422072747.15960-2-talshn@mellanox.com> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit Subject: Re: [dpdk-dev] [PATCH 1/7] eal: move OS common functions to single file 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" On 4/22/2020 12:27 AM, talshn@mellanox.com wrote: > From: Tal Shnaiderman > > Move common functions between Unix and Windows to eal_config.c. Like other files in common, we should call this eal_common_config.c > Those simple functions are getter functions for IOVA, configuration, Multi-process. > > Move rte_config and runtime_dir to be defined in a common file. > > Signed-off-by: Tal Shnaiderman > --- > lib/librte_eal/common/eal_config.c | 34 ++++++++++++++++++++++++++++++++++ > lib/librte_eal/common/eal_private.h | 11 +++++++++++ > lib/librte_eal/common/meson.build | 2 ++ > lib/librte_eal/freebsd/eal.c | 34 ---------------------------------- > lib/librte_eal/linux/eal.c | 33 --------------------------------- > lib/librte_eal/windows/eal.c | 36 ------------------------------------ > 6 files changed, 47 insertions(+), 103 deletions(-) > create mode 100644 lib/librte_eal/common/eal_config.c > > diff --git a/lib/librte_eal/common/eal_config.c b/lib/librte_eal/common/eal_config.c > new file mode 100644 > index 000000000..c28080a76 > --- /dev/null > +++ b/lib/librte_eal/common/eal_config.c > @@ -0,0 +1,34 @@ > +/* SPDX-License-Identifier: BSD-3-Clause > + * Copyright(c) 2020 Mellanox Technologies, Ltd > + */ > +#include > + > +#include > + > +/* platform-specific runtime dir */ > +static char runtime_dir[PATH_MAX]; > + > +const char * > +rte_eal_get_runtime_dir(void) > +{ > + return runtime_dir; > +} > + > +/* Return a pointer to the configuration structure */ > +struct rte_config * > +rte_eal_get_configuration(void) > +{ > + return &rte_config; > +} > + > +enum rte_iova_mode > +rte_eal_iova_mode(void) > +{ > + return rte_eal_get_configuration()->iova_mode; > +} > + > +enum rte_proc_type_t > +rte_eal_process_type(void) > +{ > + return rte_config.process_type; > +} > \ No newline at end of file > diff --git a/lib/librte_eal/common/eal_private.h b/lib/librte_eal/common/eal_private.h > index 735813d0c..dab9cac1d 100644 > --- a/lib/librte_eal/common/eal_private.h > +++ b/lib/librte_eal/common/eal_private.h > @@ -13,6 +13,8 @@ > #include > #include > > +#include > + > /** > * Structure storing internal configuration (per-lcore) > */ > @@ -60,6 +62,15 @@ struct rte_config { > struct rte_mem_config *mem_config; > } __rte_packed; > > + > +/* early configuration structure, when memory config is not mmapped */ > +static struct rte_mem_config early_mem_config; > + > +/* Address of global and public configuration */ > +static struct rte_config rte_config = { > + .mem_config = &early_mem_config, > +}; > + > /** > * Get the global configuration structure. > * > diff --git a/lib/librte_eal/common/meson.build b/lib/librte_eal/common/meson.build > index 6dcdcc890..f53a35d0e 100644 > --- a/lib/librte_eal/common/meson.build > +++ b/lib/librte_eal/common/meson.build > @@ -20,6 +20,7 @@ if is_windows > 'eal_common_options.c', > 'eal_common_tailqs.c', > 'eal_common_thread.c', > + 'eal_config.c', > 'malloc_elem.c', > 'malloc_heap.c', > 'rte_malloc.c', > @@ -52,6 +53,7 @@ sources += files( > 'eal_common_thread.c', > 'eal_common_timer.c', > 'eal_common_uuid.c', > + 'eal_common.c', Typo. But, better to rename to eal_common_config.c > 'hotplug_mp.c', > 'malloc_elem.c', > 'malloc_heap.c', ranjit m.