[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date: Tue, 5 May 2009 10:38:10 +0200
From: Mikael Pettersson <mikpe@...uu.se>
To: Geert Uytterhoeven <geert@...ux-m68k.org>
Cc: scsi <linux-scsi@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Subject: Re: drivers/scsi/st.c:2967: warning: suggest parentheses around operand
of '!' or change '|' to '||' or '!' to '~'
Geert Uytterhoeven writes:
> drivers/scsi/st.c:2967: warning: suggest parentheses around operand of
> '!' or change '|' to '||' or '!' to '~'
>
> if (cmdstatp->sense_hdr.sense_key == ILLEGAL_REQUEST &&
> !(STp->use_pf & PF_TESTED)) {
> /* Try the other possible state of Page Format if not
> already tried */
> STp->use_pf = !STp->use_pf | PF_TESTED;
> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> st_release_request(SRpnt);
> SRpnt = NULL;
> return st_int_ioctl(STp, cmd_in, arg);
> }
>
> Looks indeed incorrect to me...
I noticed that too yesterday. I believe the intention is
STp->use_pf = (!STp->use_pf) | PF_TESTED;
which in this case (PF_TESTED is clear) is the same as
STp->use_pf = (STp->use_pf ^ USE_PF) | PF_TESTED;
which matches the comment, or
STp->use_pf ^= (USE_PF | PF_TESTED);
if you want to micro-optimize.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists