mirror of https://github.com/torvalds/linux.git
Smatch generates a warning:
drivers/scsi/scsi_lib.c:1656 scsi_mq_done() warn: test_bit() takes a bit number
The problem is that SCMD_STATE_COMPLETE is supposed to be bit number 0
and not a mask like "(1 << 0)". It is used like this:
if (test_and_set_bit(SCMD_STATE_COMPLETE, &scmd->state))
The test_and_set_bit() has a shift built in so it's a double left shift
and uses bit number 1 instead of number 0. This bug is harmless because
it's done consistently and it doesn't clash with any other flags.
Fixes:
|
||
|---|---|---|
| .. | ||
| fc | ||
| fc_encode.h | ||
| fc_frame.h | ||
| fcoe_sysfs.h | ||
| iscsi_if.h | ||
| iscsi_proto.h | ||
| iser.h | ||
| libfc.h | ||
| libfcoe.h | ||
| libiscsi.h | ||
| libiscsi_tcp.h | ||
| libsas.h | ||
| osd_attributes.h | ||
| osd_initiator.h | ||
| osd_ore.h | ||
| osd_protocol.h | ||
| osd_sec.h | ||
| osd_sense.h | ||
| osd_types.h | ||
| sas.h | ||
| sas_ata.h | ||
| scsi.h | ||
| scsi_bsg_iscsi.h | ||
| scsi_cmnd.h | ||
| scsi_common.h | ||
| scsi_dbg.h | ||
| scsi_device.h | ||
| scsi_devinfo.h | ||
| scsi_dh.h | ||
| scsi_driver.h | ||
| scsi_eh.h | ||
| scsi_host.h | ||
| scsi_ioctl.h | ||
| scsi_proto.h | ||
| scsi_request.h | ||
| scsi_tcq.h | ||
| scsi_transport.h | ||
| scsi_transport_fc.h | ||
| scsi_transport_iscsi.h | ||
| scsi_transport_sas.h | ||
| scsi_transport_spi.h | ||
| scsi_transport_srp.h | ||
| scsicam.h | ||
| sg.h | ||
| srp.h | ||
| viosrp.h | ||