From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <dev-bounces@dpdk.org>
Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124])
	by inbox.dpdk.org (Postfix) with ESMTP id 5732543034;
	Fri, 11 Aug 2023 15:00:03 +0200 (CEST)
Received: from mails.dpdk.org (localhost [127.0.0.1])
	by mails.dpdk.org (Postfix) with ESMTP id 3484B40F16;
	Fri, 11 Aug 2023 15:00:03 +0200 (CEST)
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.20])
 by mails.dpdk.org (Postfix) with ESMTP id 8627A40E03
 for <dev@dpdk.org>; Fri, 11 Aug 2023 15:00:01 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
 d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
 t=1691758801; x=1723294801;
 h=date:from:to:cc:subject:message-id:references:
 content-transfer-encoding:in-reply-to:mime-version;
 bh=LOQH8HDJQkAV0Eb0VhQOluuLVkA0/h3XOqrD2KsVxqE=;
 b=lOo7kEao08rGjEaOxw/10bIDef0l8kPrlvUBn4pHW1IWI7AHU8lKCs5N
 xWo20WvoF7okmC55NDuqi7jgFue4d04/lxwpBZZoHhGAJSODlOizxTs1a
 gZ5aXi17nqySluWdQ6Ur2kx2FagVPzaqPPFsn0rXIF0wmLir8zQYuqDDc
 bIAnT91L/NZvlhb9i4rsShqOQDxisTLLaH8anInUzexn0rDeYY1J27F8C
 qxcbVGVV5q6J0zMn1ij3f55kQiKpZl+/qAbei5cjcrWOwPUhV27TgSGDE
 9NAegb+z0a6x+7m+s5ZbmjaS99yPizkIDe2SzF+gkrgWOi7rRZzSMROIQ w==;
X-IronPort-AV: E=McAfee;i="6600,9927,10798"; a="361810634"
X-IronPort-AV: E=Sophos;i="6.01,165,1684825200"; d="scan'208";a="361810634"
Received: from orsmga006.jf.intel.com ([10.7.209.51])
 by orsmga101.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 11 Aug 2023 06:00:00 -0700
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10798"; a="709534134"
X-IronPort-AV: E=Sophos;i="6.01,165,1684825200"; d="scan'208";a="709534134"
Received: from fmsmsx603.amr.corp.intel.com ([10.18.126.83])
 by orsmga006.jf.intel.com with ESMTP; 11 Aug 2023 06:00:00 -0700
Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) by
 fmsmsx603.amr.corp.intel.com (10.18.126.83) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2507.27; Fri, 11 Aug 2023 06:00:00 -0700
Received: from FMSEDG603.ED.cps.intel.com (10.1.192.133) by
 fmsmsx610.amr.corp.intel.com (10.18.126.90) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2507.27 via Frontend Transport; Fri, 11 Aug 2023 06:00:00 -0700
Received: from NAM10-DM6-obe.outbound.protection.outlook.com (104.47.58.107)
 by edgegateway.intel.com (192.55.55.68) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.1.2507.27; Fri, 11 Aug 2023 05:59:59 -0700
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ERg9xlt3jjge1tx9DFZNcdRQxdcy36JSwJGK893iCXNKqBs3OZuuwdWI9MHL2gSSgYtT9TFlyKjIIi3UrApb861vEanEx73ySKKMlL5N3V5z2goDtdNu+vBnossOxljDPwD/LDH4reVh6hn0zpel9GghSW6+RR7YZblTyRbTkAOYPEuVtcvAJZxpjsEtgrBp80guMMIJBmc7pV6wRanZztboYnmn79B1U5X+6i84LMmNK2LgshkWbWhJB1ubpUi2rkqJ+5ZxnXgn0kP74eK1p05YnOC801qaTafjJ1lnOXBaLG9/TIL3Ejw7KtqT4oLAuZsQybXgfJ7J7cKKGQwqXw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; 
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=3+JCOCa6b1dpbNP1VHieEvtR+f2YY9asVNkULuzyy4k=;
 b=k8Zv8Ao91NHBNvKZbIISd8uXyzu6vmLdlDQ2AanlqDBUXX06cmHg2eMSIOBWzOz0aTEM5SzZGVm9NY9aoxPFlC10pzqt5G7hpREWlRCsfcayMVh8AYEiYxAOxB4F/05j48w5duBHJo+6atzQivt27Jaki0dTq55tns0qh3H6oTEYIKpbD/rGiulJxmFgw07mxQS2KVHs+1vcykvQF9I4KzndPrcXr64OwnQzHgq8HaRq8PKjIKmLgIGjZgJkQuWXHQvvxboLJg46YyZtVW2dNLYTQmsEXjakdGRbpv36At1Yo+NJ9nzrlQVlo2Q3selWffb57jbWKqg1GK5AVXygLg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com;
 dkim=pass header.d=intel.com; arc=none
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=intel.com;
Received: from DS0PR11MB7309.namprd11.prod.outlook.com (2603:10b6:8:13e::17)
 by PH7PR11MB7098.namprd11.prod.outlook.com (2603:10b6:510:20d::11) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6652.30; Fri, 11 Aug
 2023 12:59:58 +0000
Received: from DS0PR11MB7309.namprd11.prod.outlook.com
 ([fe80::9802:65f0:c441:780f]) by DS0PR11MB7309.namprd11.prod.outlook.com
 ([fe80::9802:65f0:c441:780f%7]) with mapi id 15.20.6652.029; Fri, 11 Aug 2023
 12:59:57 +0000
Date: Fri, 11 Aug 2023 13:59:50 +0100
From: Bruce Richardson <bruce.richardson@intel.com>
To: David Marchand <david.marchand@redhat.com>
CC: <dev@dpdk.org>, Thomas Monjalon <thomas@monjalon.net>, Morten
 =?iso-8859-1?Q?Br=F8rup?= <mb@smartsharesystems.com>
Subject: Re: [PATCH v8 0/3] Split logging functionality out of EAL
Message-ID: <ZNYwxqQ9jDS+7Tf0@bricha3-MOBL.ger.corp.intel.com>
References: <20220829151901.376754-1-bruce.richardson@intel.com>
 <20230809133553.1396119-1-bruce.richardson@intel.com>
 <CAJFAV8zc0=7ybpaZozPgA=WboXgMjTwT45vgtNs8Q59g-eAZpQ@mail.gmail.com>
Content-Type: text/plain; charset="utf-8"
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <CAJFAV8zc0=7ybpaZozPgA=WboXgMjTwT45vgtNs8Q59g-eAZpQ@mail.gmail.com>
X-ClientProxiedBy: DB7PR05CA0015.eurprd05.prod.outlook.com
 (2603:10a6:10:36::28) To DS0PR11MB7309.namprd11.prod.outlook.com
 (2603:10b6:8:13e::17)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DS0PR11MB7309:EE_|PH7PR11MB7098:EE_
X-MS-Office365-Filtering-Correlation-Id: df09cbb4-0035-40b1-ea39-08db9a6add6d
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 3/JVJCdh3H61iYapF3nfR6a1VKXYAaI+VnrP7+LDtucsJ3uEOGjC4iH63YSzC7gqyP/VblPA//fS+xHu6F9phXQycbZbYOIoB7oNmkxPcnhq4vbpnVkIXrC2ubC8L/dtWfvlrGiuSa4x6fpehHl2PFqkLasIHibiPShItX0Ha8EGAFekw61iPFx2bObdKBONae1ihMMrv3gv7glHdwo7D/vvBRQVv1b4Lroq375e3/aX0mbB/8BRWXQg1Mr97r0b4fh8E9iGAmPPFOYlYGSvQ+j1Ubj5XoYy3U/dPwiPY0b4lPz0u7furtzT4+kQ4S6bH3ByWAEBoGYhUd1J07k+YLSg+vmS46ojc+l0bGfW4QXqrdedmJNcdMhRFSGp+whUqvPglF53HKjaw6Vyimeq3q9NVf+wLR8IHuueKIZ4YIdp5/LK0PIihd2QpG4Q5GDE/zsZgTfvJCD7H9PwLjQYlNTH6jt6RMT/R4xb99D+ZhOVO2cOWlgThACAGxsXBYpOqbBax06F9Y4fxvlV2wUJBC8PqoF8oLApaOIcBHJ8MhIGqq8pLnoC9nEYGQUTy5o+Ztf34mv2hEhMMZFTpR2pXi7Q502UvAizuXx3YnFECFk=
X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;
 IPV:NLI; SFV:NSPM; H:DS0PR11MB7309.namprd11.prod.outlook.com; PTR:; CAT:NONE;
 SFS:(13230028)(396003)(376002)(39860400002)(366004)(346002)(136003)(451199021)(1800799006)(186006)(316002)(82960400001)(4326008)(66476007)(66556008)(6916009)(66946007)(38100700002)(41300700001)(54906003)(8676002)(8936002)(5660300002)(6512007)(44832011)(86362001)(26005)(6506007)(6666004)(2906002)(478600001)(53546011)(6486002)(67856001);
 DIR:OUT; SFP:1102; 
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?SmwwbE1ZUmxrL0NmVlArbE1nOEY4YlFFRkkwOE9ZaWVuRE9sYnBSakgyLzZp?=
 =?utf-8?B?VUpFS3RGc1RaeDkzSm02UFFXMEF0VlZOVW9QeGgrTlVhTDZ1clpNTVh1ZWVO?=
 =?utf-8?B?cDI1UmxUdm9hZW1SdEQyOS8rbDJrUFNEajViRVlxQXk1b3NPK3ZSUEk5bW45?=
 =?utf-8?B?Q3hmdFhqN2ozNVdUWHFoMVVNQ0ttOU0vZHNOOVkrRGRRa0pTZFVmVFg2aTJr?=
 =?utf-8?B?YkNOQ0RJTHA1TElQQjZ0NDE5WWZkSTRlN3dGbk5KVHNxaVhhWkZCRmxpTDhV?=
 =?utf-8?B?L3pHODhsRE5MN2kvNG1oaG1uVXpHbDlTbVloYlNNMlg2WmZrUy9WM1dWMUl5?=
 =?utf-8?B?VCtobEFEQkxWd3hFY1ZqQWtBaXkxSWxwRHVkLzMyWUhyd2h3MDRPbSttUWoy?=
 =?utf-8?B?QjRsbzdYWVNqT0pLcEJGTDZRaW1uTzhjVXczekgwR3pkYUdQSHR0RmErSmpD?=
 =?utf-8?B?ME5LWmNjUENEdGNLR0s4VDJsaUZTUklpZHUvTHBXOFBGdTR6RHcxNE85UzRM?=
 =?utf-8?B?d0lRazlkMWcxNXc5MWgrb2JXQzM1Vlo0dVhmVVEyRmQrM1JhSnlReDlwM1lI?=
 =?utf-8?B?Z1gvN05RRnRNbldLazNNMWlmSUNrbEM5TjBWNnhZMTh3SG1JaFRNTFh4bXdw?=
 =?utf-8?B?bHF3dTZFTEUvYVZ2MHp0RmpyRXR6ZE5IcWJPQ3FacHdqZWRZaGFKdWFVNkda?=
 =?utf-8?B?TVVSNGpKaHFycEdSVUFMK1lVRWgzY2phaDZxRk5aQ3lZaFB2WWtMN3ZyQ3o1?=
 =?utf-8?B?MmVzYVIxNjZWQ2Q1Z1Mzd2lIV3pEbzdydmlUNXZCYnVqaWZMR3FxRjNwN0ZX?=
 =?utf-8?B?T3F6VVlwZStQN1JGbEZ4Ui81c09weldFSmVGOXBzUlR3U1RXalhFS0txVWk2?=
 =?utf-8?B?Yjh6MnJKek1FK2Z1akhDRW1aN04vT2ozV25xQk05SFRSTjFlaWtxY29VV1BC?=
 =?utf-8?B?N3lodk1QY0dXRnhad1JrVjZ1ZVExNENFK3c5NGFTdkNLUUJic0NtOFBpNVFE?=
 =?utf-8?B?WElVQVhUQUVpTG02ZkFGQUlXTk5UUStaVzYzcVNFL1pvVW81VmdLNTFFajRG?=
 =?utf-8?B?RHplS2tjbDVhWTRTK21mZmQ2N0wrZ2x3V2gxVUJ2NEdnYVNobUl0SVFzM0V0?=
 =?utf-8?B?NDl2VTRES3RKbVFLMnhtd2FGK1ZzNUhzdWFvdjRWS1lybGIwVWVnNlRVa2tI?=
 =?utf-8?B?RG5FTC9NNjRoSGJjaHVleE1ISzl2Q2x3NG45THVjZGVqRDZ2MWU0bkJ5RG5a?=
 =?utf-8?B?UmpuQmFVR0pKRlhOQlgzMWJnaXZIc1IyZDhVWENSOGM1aVVxNkorbmpTRHRl?=
 =?utf-8?B?dktRMDc5MU91dVBmODlrYVgweEs5UXlIYmpTOHRuQjNONUFJNEI5SmhSbnQ4?=
 =?utf-8?B?K0RrdHlZR0YvTWNGa0Q4QXZ4R01oWHhTRUh4eVByanJPU3h1OSt2SHhpNzNT?=
 =?utf-8?B?clhDRU5FZmhGbDVTUGtSUk5nckNPQWFRSWxjZWlTdldrN1IwdlBwUEtRUjdZ?=
 =?utf-8?B?TG1ONlBaU2VINHpiQ3REb2V5TmkwcFJ0M2xXcVFkME0rU2VMSmZ2TmxDeXow?=
 =?utf-8?B?ZktCcmdhN2Z3L0pHNmFYd2VMOWFRY3BpeDFkanVxZG1DUEFqQk8wQ25scDJk?=
 =?utf-8?B?WTY1eW84bThrYnR2QUN0VnVsTFQxSnVwQ09kdTZPZzlkSUVIV09NQncwa2pr?=
 =?utf-8?B?VVNUaDBidlU2SmMySHljWlRrbHRoSmw5YXJjRE5KNEt1UDZrd084b3JibjdF?=
 =?utf-8?B?RXdkaERuc09iY0tqMkVTRDlGRTYxTXRiekFIVDlpMk5tRkVvUSsyQWEwR3lt?=
 =?utf-8?B?dm1ackRQUG9PbTZCM1FCeXAxS2c3NWhpWTF5M0xrbWE0YWtBbGpsbmp3blEw?=
 =?utf-8?B?ekxmMDRTYjdZbzZ5Y2pDRmNqcFR3M3I0UXUwU0pFZU1OL1VwZkw0dTdvNnBk?=
 =?utf-8?B?aFpXYVoyYXIvVTNHZi80cC90eUFIOVFjVlB1VWJPV1JqS0pmb3hEZm9tWWRS?=
 =?utf-8?B?RG91YjU1UEt1ampIZmxzdWFDQ3BzaW9PbHluQWNKMFpFUnJYOXdyb0pwL0dr?=
 =?utf-8?B?OFpGNGFlZTV3TUVFbVRqdmlzWFFFSk91WDJyejZPbzFNRWF3TVh3bWI3ZUlx?=
 =?utf-8?B?b2w2bjE4cStiUm45WWxvV3F3clJYZnlodlBCdkxkNCtXYTNKbGhJZVE5dnN6?=
 =?utf-8?B?Rnc9PQ==?=
X-MS-Exchange-CrossTenant-Network-Message-Id: df09cbb4-0035-40b1-ea39-08db9a6add6d
X-MS-Exchange-CrossTenant-AuthSource: DS0PR11MB7309.namprd11.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Aug 2023 12:59:57.6586 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 46c98d88-e344-4ed4-8496-4ed7712e255d
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 6OJCQyowkq1ZTJXmmOgYRV0ICDDUA0xVc+YPU9QfX1Wy+loxk7Y0fiBfhn2AZlSeuaqOX2vjclT3RDKz+4kW32lew1h9WKU5sb099UJRWBM=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR11MB7098
X-OriginatorOrg: intel.com
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: DPDK patches and discussions <dev.dpdk.org>
List-Unsubscribe: <https://mails.dpdk.org/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://mails.dpdk.org/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <https://mails.dpdk.org/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=subscribe>
Errors-To: dev-bounces@dpdk.org

On Fri, Aug 11, 2023 at 02:46:13PM +0200, David Marchand wrote:
> On Wed, Aug 9, 2023 at 3:36 PM Bruce Richardson
> <bruce.richardson@intel.com> wrote:
> >
> > There is a general desire to reduce the size and scope of EAL. To this
> > end, this patchset makes a (very) small step in that direction by taking
> > the logging functionality out of EAL and putting it into its own library
> > that can be built and maintained separately.
> >
> > As with the first RFC for this, the main obstacle is the "fnmatch"
> > function which is needed by both EAL and the new log function when
> > building on windows. While the function cannot stay in EAL - or we would
> > have a circular dependency, moving it to a new library or just putting
> > it in the log library have the disadvantages that it then "leaks" into
> > the public namespace without an rte_prefix, which could cause issues.
> > Since only a single function is involved, subsequent versions take a
> > different approach to v1, and just moves the offending function to be a
> > static function in a header file. This allows use by multiple libs
> > without conflicting names or making it public.
> >
> > The other complication, as explained in v1 RFC was that of multiple
> > implementations for different OS's. This is solved here in the same
> > way as v1, by including the OS in the name and having meson pick the
> > correct file for each build. Since only one file is involved, there
> > seemed little need for replicating EAL's separate subdirectories
> > per-OS.
> 
> Series applied, thanks Bruce for this first step.
> 
> As mentionned during the maintainers weekly call yesterday, this is
> only a first "easy" step but, thinking of next steps, more splitting
> may not be that easy.
> 

I took a look after doing this patchset to try and find more easy to
extract parts, but did not find many. The EAL is pretty intertwined now.
As I look at it, there are really two ways to try and dis-entangle it - 
bottoms-up or top-down. This patchset is an example of the former, taking a
logical set of related APIs and pulling them out into a separate library
that EAL can depend upon. There may be some other API-sets like this we can
pull out, but in my search I didn't find any.

The other tops-down approach may be worth looking at too. We can try and
take the top-level EAL init function and separate it out into a separate
initialization library (which may be called "EAL" with the rest being
called something else). I have not tried this approach to see how it goes,
but pulling out the init may allow further dis-entangling of other parts of
EAL.

/Bruce