DPDK patches and discussions
 help / color / mirror / Atom feed
From: "Dumitrescu, Cristian" <cristian.dumitrescu@intel.com>
To: "Dumitrescu, Cristian" <cristian.dumitrescu@intel.com>,
	"Dewar, Alan" <ad759e@intl.att.com>,
	"'alangordondewar@gmail.com'" <alangordondewar@gmail.com>
Cc: "'dev@dpdk.org'" <dev@dpdk.org>,
	'Alan Dewar' <alan.dewar@att.com>,
	"Kantecki, Tomasz" <tomasz.kantecki@intel.com>,
	"Singh, Jasvinder" <jasvinder.singh@intel.com>
Subject: Re: [dpdk-dev] [PATCH v5] sched: make RED scaling configurable
Date: Fri, 12 Jan 2018 11:52:27 +0000	[thread overview]
Message-ID: <3EB4FA525960D640B5BDFFD6A3D891267BAFC364@IRSMSX108.ger.corp.intel.com> (raw)
In-Reply-To: <3EB4FA525960D640B5BDFFD6A3D891267BAFC25A@IRSMSX108.ger.corp.intel.com>



> -----Original Message-----
> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Dumitrescu,
> Cristian
> Sent: Friday, January 12, 2018 11:09 AM
> To: Dewar, Alan <ad759e@intl.att.com>; 'alangordondewar@gmail.com'
> <alangordondewar@gmail.com>
> Cc: 'dev@dpdk.org' <dev@dpdk.org>; 'Alan Dewar' <alan.dewar@att.com>;
> Kantecki, Tomasz <tomasz.kantecki@intel.com>; Singh, Jasvinder
> <jasvinder.singh@intel.com>
> Subject: Re: [dpdk-dev] [PATCH v5] sched: make RED scaling configurable
> 
> ...<snip>
> 
> > > > diff --git a/lib/librte_sched/rte_red.c b/lib/librte_sched/rte_red.c
> > > > +int
> > > > +rte_red_set_scaling(uint16_t max_red_queue_length) {
> > > > +	int8_t count;
> > > > +
> > > > +	if (rte_red_init_done)
> > > > +		/**
> > > > +		 * Can't change the scaling once the red table has been
> > > > +		 * computed.
> > > > +		 */
> > > > +		return -1;
> > >
> > > Is there a reason why we cannot simply reset the scaling here?
> >
> > Actually we could, but I was originally thinking that you might be happier
> > keeping with a one-time RED initialization function, but then had to
> > introduce the rte_reset_red_scaling function for the unit-tests. I'm happy
> to
> > do RED reinitialization here, if you are.
> >
> 
> Hi Alan,
> 
> What is the intention of the new rte_red_set_scaling() function?
> 	1. Is it to be called only once, before any RED object gets created?
> 	2. Is it possible to call it post-init, but in this case any RED object
> already created are not impacted (they continue to work)?
> 
> If the answer is 2, then yes, we could simply drop the __rte_red_reset() and
> do the RED globals reset as part of the rte_red_set_scaling() function
> transparently.
> 
> If the answer is 1, then we probably need to keep your approach: we need a
> global rte_red_init_done flag, and rte_red_set_scaling() could only be called
> at init time before any red objects are created.
> 
> I probably need to spend more time assessing all the code implications.
> 
> Regards,
> Cristian

Hi Alan,

After talking to Tomasz, we agreed that 2. Is not an option, as any previously created red object will be broken.

So 1. Is the right answer, therefore this function can be called only once and only before any red objects are created. So, IMO we should do this:
-when rte_red_init_done is true, we need to return error
-when rte_red_init_done is false, we need to perform red initialization and set this flag

Agree?

Please also add a comment in the Doxygen description of rte_red_set_caling() in the rte_red.h file, stating that this function can be called only once and only before any red objects are created.

Regards,
Cristian

  reply	other threads:[~2018-01-12 11:52 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <1507022514-21831-1>
2018-01-08 15:27 ` alangordondewar
2018-01-11 13:11   ` Dumitrescu, Cristian
2018-01-12  9:38     ` Dewar, Alan
2018-01-12 11:09       ` Dumitrescu, Cristian
2018-01-12 11:52         ` Dumitrescu, Cristian [this message]
2018-01-15 15:36           ` Dewar, Alan
2018-01-16 11:56             ` Dumitrescu, Cristian
2018-01-12 10:44     ` Dewar, Alan
2018-01-12 11:43       ` Dumitrescu, Cristian
2018-01-15 16:16   ` [dpdk-dev] [PATCH v6] " alangordondewar
2018-01-15 16:52     ` Stephen Hemminger
2018-01-16 15:50       ` Alan Dewar
2018-01-16 15:57         ` Alan Dewar
2018-01-16 16:44           ` Dumitrescu, Cristian
2018-01-16 16:07     ` [dpdk-dev] [PATCH v7] " alangordondewar
2019-04-05 15:36       ` Ferruh Yigit
2019-04-05 15:36         ` Ferruh Yigit
2019-04-08  8:24         ` Alan Dewar
2019-04-08  8:24           ` Alan Dewar
2019-04-08  8:53           ` Thomas Monjalon
2019-04-08  8:53             ` Thomas Monjalon
2019-04-08 13:29             ` Dumitrescu, Cristian
2019-04-08 13:29               ` Dumitrescu, Cristian
2020-07-06 23:09               ` Thomas Monjalon

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=3EB4FA525960D640B5BDFFD6A3D891267BAFC364@IRSMSX108.ger.corp.intel.com \
    --to=cristian.dumitrescu@intel.com \
    --cc=ad759e@intl.att.com \
    --cc=alan.dewar@att.com \
    --cc=alangordondewar@gmail.com \
    --cc=dev@dpdk.org \
    --cc=jasvinder.singh@intel.com \
    --cc=tomasz.kantecki@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).