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 17EEFA0350; Fri, 5 Jun 2020 13:28:31 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 373BF1D5E2; Fri, 5 Jun 2020 13:28:30 +0200 (CEST) Received: from mga05.intel.com (mga05.intel.com [192.55.52.43]) by dpdk.org (Postfix) with ESMTP id D5FB71D5D7 for ; Fri, 5 Jun 2020 13:28:27 +0200 (CEST) IronPort-SDR: SJZt90Pk+p8SmV8eindLLI2GFgMibe/vExd2boZkGgzxeZH+oiVjt6k31t6XR3FVvh0++5WHxw bpFFyTPR2nMQ== X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga005.jf.intel.com ([10.7.209.41]) by fmsmga105.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 05 Jun 2020 04:28:26 -0700 IronPort-SDR: TnClSDY0g0w7YunTSylccU5xRkwCpZjFduNvb8LUScrIsyY2Ze71v/qOS936ySKj/IpJokGL9E ErqrM1Zf5ydw== X-IronPort-AV: E=Sophos;i="5.73,476,1583222400"; d="scan'208";a="445865022" Received: from bricha3-mobl.ger.corp.intel.com ([10.252.24.61]) by orsmga005-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-SHA; 05 Jun 2020 04:28:24 -0700 Date: Fri, 5 Jun 2020 12:28:20 +0100 From: Bruce Richardson To: =?iso-8859-1?Q?Ga=EBtan?= Rivet Cc: Stephen Hemminger , dev@dpdk.org Message-ID: <20200605112820.GD1552@bricha3-MOBL.ger.corp.intel.com> References: <20200604210200.25405-1-stephen@networkplumber.org> <20200604180409.4a2831c3@hermes.lan> <20200605104247.kilea5nfktlf7mlm@u256.net> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20200605104247.kilea5nfktlf7mlm@u256.net> Subject: Re: [dpdk-dev] [RFC] replace master/slave with primary/secondary 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 Fri, Jun 05, 2020 at 12:43:00PM +0200, Gaëtan Rivet wrote: > On 04/06/20 18:04 -0700, Stephen Hemminger wrote: > > I have a full patch that replaces the master/slave lcore > > naming (widely used in DPDK) with a better primary/secondary naming. > > > > For now this is just a trial balloon to see what the impact would > > look like. The change mostly automated so likely that things > > are broken. > > > > It is hard to break a change like this down, and still > > keep git bisection clean. > > > > It keeps rte_master_lcore_id and RTE_FOREACH_SLAVE as deprecated > > items so that user code can still be built but they will be motivated > > to change. > > > > Here is a sample of what it would look like: > > > > I think PRIMARY is a poor choice to describe the control thread. PRIMARY > is often used to designate the active element currently doing the work. > SECONDARY threads are also active threads doing equal dataplane work. > > Another issue I see with primary / secondary is the ambiguity with > multi-process in DPDK. Doc readers could get confused about where a > primary / secondary thread is executed. > > I think we could use instead DPDK-specific terminology. The lcore > organization is a little specific, with an lcore that does most init work > and spawns the others, but then runs the application like all others. > > I'd propose instead leader lcore - there is this idea that the leader > is still a member of the team and will participate in the work. > > Leader / worker? > No sure I like the term "Leader" for a thread, but "worker" is an ok name. How about "init thread" and "worker threads"? /Bruce