On Thu, Aug 26, 2010 at 1:23 PM, Edgar E. Iglesias <edgar.igles...@gmail.com> wrote: > On Sat, Aug 21, 2010 at 09:42:51AM +0000, Blue Swirl wrote: >> Combining bitwise AND and logical NOT is suspicious. >> >> Fixed by this Coccinelle script: >> // From http://article.gmane.org/gmane.linux.kernel/646367 >> @@ expression E1,E2; @@ >> ( >> !E1 & !E2 >> | >> - !E1 & E2 >> + !(E1 & E2) >> ) >> >> Signed-off-by: Blue Swirl <blauwir...@gmail.com> >> --- >> >> Maybe the middle hunk should be fixed this way instead: >> - } else if ((rw == 1) & !matching->d) { >> + } else if ((rw == 1) && !matching->d) { >> >> --- >> hw/etraxfs_eth.c | 2 +- >> target-sh4/helper.c | 4 ++-- >> 2 files changed, 3 insertions(+), 3 deletions(-) >> >> diff --git a/hw/etraxfs_eth.c b/hw/etraxfs_eth.c >> index b897c9c..ade96f1 100644 >> --- a/hw/etraxfs_eth.c >> +++ b/hw/etraxfs_eth.c >> @@ -464,7 +464,7 @@ static int eth_match_groupaddr(struct fs_eth *eth, >> const unsigned char *sa) >> >> /* First bit on the wire of a MAC address signals multicast or >> physical address. */ >> - if (!m_individual && !sa[0] & 1) >> + if (!m_individual && !(sa[0] & 1)) >> return 0; > > > Yep, the etrax part is a bug and your patch looks OK to me. > > Thanks > > Acked-by: Edgar E. Iglesias <edgar.igles...@gmail.com>
Thanks for the review, I applied this part of the patch.