Re: [PATCH] staging: rtl8192u: bool tests don't need comparisons

From: Luis de Bethencourt
Date: Tue Jun 23 2015 - 10:14:01 EST


On Tue, Jun 23, 2015 at 03:59:41PM +0200, Frans Klaver wrote:
> On Tue, Jun 23, 2015 at 3:59 PM, Luis de Bethencourt
> <luis@xxxxxxxxxxxxxxxxx> wrote:
> > On Tue, Jun 23, 2015 at 03:37:20PM +0200, Frans Klaver wrote:
> >> On Tue, Jun 23, 2015 at 3:21 PM, Luis de Bethencourt
> >> <luis@xxxxxxxxxxxxxxxxx> wrote:
> >>
> >> >> > if (dm_digtable.dig_algorithm_switch) {
> >> >> > @@ -3062,7 +3062,8 @@ static void dm_dynamic_txpower(struct net_device *dev)
> >> >> > priv->bDynamicTxLowPower = false;
> >> >> > } else {
> >> >> > /* high power state check */
> >> >> > - if (priv->undecorated_smoothed_pwdb < txlowpower_threshold && priv->bDynamicTxHighPower == true)
> >> >> > + if (priv->undecorated_smoothed_pwdb <
> >> >> > + txlowpower_threshold && priv->bDynamicTxHighPower)
> >> >> > priv->bDynamicTxHighPower = false;
> >> >>
> >> >> Oh, this has a misleading air hanging over it. It focuses the eyes on
> >> >> "txlowpower_threshold && priv->bDynamicTxHighPower", while that
> >> >> probably isn't the intent.
> >> >>
> >> >> Frans
> >> >
> >> > I agree, and wasn't sure what the best way to deal with was.
> >> >
> >> > The following doesn't mislead but goes above 80 characters.
> >> > if (priv->undecorated_smoothed_pwdb < txlowpower_threshold &&
> >> > priv->bDynamicTxHighPower == true)
> >> >
> >> > It is better than the original but it doesn't completely fix it.
> >> >
> >> > If this is a better compromise I can update the patch.
> >>
> >> If we keep people's internal parsers working properly, I think having
> >> a line of three characters too long is a fair compromise. Besides
> >> that, there are a lot more lines of code in that file that need to be
> >> brought back to under 80 characters.
> >>
> >> If you really care about that line length, precede with a patch (or
> >> two) that changes those insanely long (local!) variable names, so that
> >> you can break up the line right away.
> >>
> >> Have fun,
> >> Frans
> >
> > Very true. There are a *lot* of massively long lines.
> >
> > This has been a learning experience. I wasn't sure how strict the rules for
> > submissions were.
>
> Well, as far as I know "Don't break internal parsers" wins over
> "Checkpatch complains". However, checkpatch usually does have a nose
> for smelly code (as does sparse, btw), so it pays to look around a bit
> if it complains. In the end the maintainer decides whether a patch
> passes the criteria.
>

Even if analyzers miss things and give false positives, they are interesting
tools to find interesting code to read and maybe double-check things before
submitting.

> > There are other things besides line lengths that I want to fix in
> > rtl8192u. Related to that, I just sent a 3rd version which includes fixes for
> > these bool comparisons for the rest of the files in drivers/staging/rtl8192u/
> >
> > Thanks so much for taking the time to review. Appreciated.
>
> No problem. Was waiting for a yocto build to finish anyway.
>
> Frans

Have fun with yocto!
Luis
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/