[dpdk-dev] [PATCH v4 5/9] app/procinfo: add support for show tm

Stephen Hemminger stephen at networkplumber.org
Fri Nov 23 18:22:15 CET 2018


On Fri, 23 Nov 2018 15:05:07 +0000
"Varghese, Vipin" <vipin.varghese at intel.com> wrote:

> > > > > > >  
> > > > > > > >  
> > > > > > > > > +			if ((ret) | (!is_leaf))
> > > > > > > > > +  
> > > > > > > >
> > > > > > > > Is the operator here should be || ?
> > > > > > > >
> > > > > > > >  
> > > > > > >
> > > > > > > Check is done for 'if either ret is not 0 or if it ret is 0
> > > > > > > but not leaf' we skip leaf details print. If 'ret is 0 and is leaf'
> > > > > > > we skip continue to print  
> > > > > > leaf details.
> > > > > >
> > > > > > IMO, using logical operator over bitwise operator is good here
> > > > > > in if statement  
> > > > > .  
> > > > > > Like below.?
> > > > > >
> > > > > > If (ret || (is_leaf == 0 ))  
> > > > >
> > > > > Thanks for the information, if the logic is correct do I need to
> > > > > change for v6
> > > > >  
> > > >
> > > > OK in v6, but you can wait to hear more comments from others if any
> > > > before sending v6 .  
> > >
> > > Ok thanks Reshma, but can you tell me how the earlier logic fails and
> > > runs slow compared to logical or?  
> > 
> > Not about faster or slower.  
> 
> Now I see, I was wondering the suggestion was for improvement for performance.
> 
> > 
> > Logical operators are commonly used in decision making in C programming.
> > Bitwise operators are used in C programming to perform bit-level operations.
> >   
> 
> Agreed
> 
> > Since , above if condition is for decision making here logical || operator will fit
> > , so I am suggesting to use that.
> >   
> 
> But bitwise OR is not wrong right?
> 
> > We  don't need to do any bitwise manipulation in if condition to make the
> > decision, so bitwise | operator is not needed  
> 
> We can correct this in next patch set not v6 if this is only change for 'show tm'

It could be that compiler might optimize logical into bitwise operation
to avoid cost of conditional branch (if there are no side effects).



More information about the dev mailing list