2009-12-14 19:23:00

by Joe Perches

[permalink] [raw]
Subject: suspect & tests

A grep for possibly misused & tests
grep -rP --include=*.[ch] -n -e "[^\&]\&[\=]*\s*\!" *
shows some possible cases where && should
have been used instead:

arch/powerpc/platforms/pseries/lpar.c:309: if ((rflags & _PAGE_NO_CACHE) & !(rflags & _PAGE_WRITETHRU))
arch/arm/mach-mxc91231/clock.c:265: if (acs & !ads)
arch/arm/mach-s3c2440/mach-osiris-dvs.c:72: if (old_dvs & !new_dvs ||
arch/arm/mach-s3c2440/mach-osiris-dvs.c:73: cur_dvs & !new_dvs) {
arch/arm/mach-davinci/board-da850-evm.c:183: if (ui_card_detected & !HAS_MMC) {
drivers/scsi/libiscsi_tcp.c:423: if (conn->datadgst_en &
!(conn->session->tt->caps & CAP_DIGEST_OFFLOAD))
drivers/media/video/omap24xxcam-dma.c:509: if ((sglen < 0) || ((sglen > 0) & !sglist))
drivers/net/dm9000.c:615: else if (dm->wake_state & !opts)
drivers/net/myri10ge/myri10ge.c:2845: rdma_count += chop & !next_is_first;
fs/nilfs2/the_nilfs.c:516: nilfs->ns_prot_seq = le64_to_cpu(sbp[valid[1] & !swp]->s_last_seq);
sound/soc/codecs/stac9766.c:233: vra &= !0x04;


2009-12-15 13:11:37

by Clemens Ladisch

[permalink] [raw]
Subject: Re: suspect & tests

Joe Perches wrote:
> A grep for possibly misused & tests
> grep -rP --include=*.[ch] -n -e "[^\&]\&[\=]*\s*\!" *
> shows some possible cases where && should
> have been used instead:
> ...
> sound/soc/codecs/stac9766.c:233: vra &= !0x04;

This looks like ~ should have been used.