All of lore.kernel.org
 help / color / mirror / Atom feed
From: Bruce Richardson <bruce.richardson@intel.com>
To: "Ananyev, Konstantin" <konstantin.ananyev@intel.com>
Cc: "dev@dpdk.org" <dev@dpdk.org>
Subject: Re: [PATCH] ixgbe: change logging for ixgbe tx code path selection
Date: Tue, 27 Oct 2015 12:37:01 +0000	[thread overview]
Message-ID: <20151027123701.GA9264@bricha3-MOBL3> (raw)
In-Reply-To: <2601191342CEEE43887BDE71AB97725836AB5666@irsmsx105.ger.corp.intel.com>

On Tue, Oct 27, 2015 at 12:12:39PM +0000, Ananyev, Konstantin wrote:
> 
> 
> > -----Original Message-----
> > From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Bruce Richardson
> > Sent: Tuesday, October 27, 2015 11:50 AM
> > To: Traynor, Kevin
> > Cc: dev@dpdk.org
> > Subject: Re: [dpdk-dev] [PATCH] ixgbe: change logging for ixgbe tx code path selection
> > 
> > On Tue, Oct 27, 2015 at 11:41:08AM +0000, Kevin Traynor wrote:
> > > Simple and vector are different tx code paths. If vector
> > > is selected, change logging from:
> > > PMD: ixgbe_set_tx_function(): Using simple tx code path
> > > PMD: ixgbe_set_tx_function(): Vector tx enabled.
> > >
> > > to:
> > > PMD: ixgbe_set_tx_function(): Using vector tx code path
> > >
> > > or, if simple selected:
> > > PMD: ixgbe_set_tx_function(): Using simple tx code path
> > >
> > > The dangling else in the #ifdef makes readability difficult,
> > > so resolving in way that seems most readable.
> > >
> > > Signed-off-by: Kevin Traynor <kevin.traynor@intel.com>
> > > ---
> > >  drivers/net/ixgbe/ixgbe_rxtx.c |    8 +++++---
> > >  1 files changed, 5 insertions(+), 3 deletions(-)
> > >
> > > diff --git a/drivers/net/ixgbe/ixgbe_rxtx.c b/drivers/net/ixgbe/ixgbe_rxtx.c
> > > index a598a72..11d7feb 100644
> > > --- a/drivers/net/ixgbe/ixgbe_rxtx.c
> > > +++ b/drivers/net/ixgbe/ixgbe_rxtx.c
> > > @@ -1963,16 +1963,18 @@ ixgbe_set_tx_function(struct rte_eth_dev *dev, struct ixgbe_tx_queue *txq)
> > >  	/* Use a simple Tx queue (no offloads, no multi segs) if possible */
> > >  	if (((txq->txq_flags & IXGBE_SIMPLE_FLAGS) == IXGBE_SIMPLE_FLAGS)
> > >  			&& (txq->tx_rs_thresh >= RTE_PMD_IXGBE_TX_MAX_BURST)) {
> > > -		PMD_INIT_LOG(DEBUG, "Using simple tx code path");
> > >  #ifdef RTE_IXGBE_INC_VECTOR
> > >  		if (txq->tx_rs_thresh <= RTE_IXGBE_TX_MAX_FREE_BUF_SZ &&
> > >  				(rte_eal_process_type() != RTE_PROC_PRIMARY ||
> > >  					ixgbe_txq_vec_setup(txq) == 0)) {
> > > -			PMD_INIT_LOG(DEBUG, "Vector tx enabled.");
> > > +			PMD_INIT_LOG(DEBUG, "Using vector tx code path");
> > >  			dev->tx_pkt_burst = ixgbe_xmit_pkts_vec;
> > >  		} else
> > >  #endif
> > > -		dev->tx_pkt_burst = ixgbe_xmit_pkts_simple;
> > > +		{
> > > +			PMD_INIT_LOG(DEBUG, "Using simple tx code path");
> > > +			dev->tx_pkt_burst = ixgbe_xmit_pkts_simple;
> > > +		}
> > >  	} else {
> > >  		PMD_INIT_LOG(DEBUG, "Using full-featured tx code path");
> > >  		PMD_INIT_LOG(DEBUG,
> > > --
> > > 1.7.4.1
> > >
> > Hi Kevin,
> > 
> > can I suggest a slight alternative here that might help make things easier.
> > Instead of printing the message as we pick the code path, why not have a "logmsg"
> > pointer variable that is assigned in the code, and then print out the log path
> > at the end.
> > 
> > This would have a number of advantages:
> > 1. there are no issues with changing our mind, so we can assign one path type,
> > and then later change it to something different without cluttering up the debug
> > output with the history of our code's flow.
> > 2. it means that you don't have a problem with smaller else legs as you can
> > easily do multiple assignments in the one line using a comma as:
> > 	dev->tx_pkt_burst = ixgbe_xmit_pkts_simple, logmsg = "Using simple ...";
> 
> While I like approach with logmsg, please avoid commas here.
> It will make this peace of code even more hard to read (at least for me).
> Konstantin 
> 

Sure, it's a matter of taste. I'd much prefer a single line with commas to the
awkwardness above trying to manage braces around an ifdef. I'll leave it to 
Kevin to see what he comes up with. :-)

/Bruce

  reply	other threads:[~2015-10-27 12:37 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-10-27 11:41 [PATCH] ixgbe: change logging for ixgbe tx code path selection Kevin Traynor
2015-10-27 11:50 ` Bruce Richardson
2015-10-27 12:12   ` Ananyev, Konstantin
2015-10-27 12:37     ` Bruce Richardson [this message]
2015-10-27 17:31     ` Traynor, Kevin
2015-10-28 10:54       ` Bruce Richardson
2015-10-27 13:56 ` Mcnamara, John

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=20151027123701.GA9264@bricha3-MOBL3 \
    --to=bruce.richardson@intel.com \
    --cc=dev@dpdk.org \
    --cc=konstantin.ananyev@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.