#include <asm/semaphore.h>
#include <scsi/scsi.h>
+#include <scsi/scsi_cmnd.h>
#include <scsi/scsi_device.h>
#include <scsi/scsi_driver.h>
#include <scsi/scsi_devinfo.h>
#include <scsi/scsi_host.h>
-#include <scsi/scsi_request.h>
#include <scsi/scsi_transport.h>
#include <scsi/scsi_eh.h>
put_device(&sdev->sdev_gendev);
}
+#ifdef CONFIG_SCSI_LOGGING
/**
* scsi_inq_str - print INQUIRY data from min to max index,
* strip trailing whitespace
* @first: Offset of string into inq
* @end: Index after last character in inq
*/
-static unsigned char* scsi_inq_str(unsigned char* buf, unsigned char *inq,
+static unsigned char *scsi_inq_str(unsigned char *buf, unsigned char *inq,
unsigned first, unsigned end)
{
unsigned term = 0, idx;
- for (idx = 0; idx+first < end && idx+first < inq[4]+5; ++idx) {
- if (inq[idx+first] > 0x20) {
+
+ for (idx = 0; idx + first < end && idx + first < inq[4] + 5; idx++) {
+ if (inq[idx+first] > ' ') {
buf[idx] = inq[idx+first];
term = idx+1;
} else {
buf[term] = 0;
return buf;
}
+#endif
/**
* scsi_probe_and_add_lun - probe a LUN, if a LUN is found add it
" peripheral qualifier of 3, device not"
" added\n"))
if (lun == 0) {
- unsigned char vend[9], mod[17];
- SCSI_LOG_SCAN_BUS(1, sdev_printk(KERN_INFO, sdev,
+ SCSI_LOG_SCAN_BUS(1, {
+ unsigned char vend[9];
+ unsigned char mod[17];
+
+ sdev_printk(KERN_INFO, sdev,
"scsi scan: consider passing scsi_mod."
"dev_flags=%s:%s:0x240 or 0x800240\n",
scsi_inq_str(vend, result, 8, 16),
- scsi_inq_str(mod, result, 16, 32)));
+ scsi_inq_str(mod, result, 16, 32));
+ });
}
res = SCSI_SCAN_TARGET_PRESENT;
__FUNCTION__, channel, id, lun));
if (((channel != SCAN_WILD_CARD) && (channel > shost->max_channel)) ||
- ((id != SCAN_WILD_CARD) && (id > shost->max_id)) ||
+ ((id != SCAN_WILD_CARD) && (id >= shost->max_id)) ||
((lun != SCAN_WILD_CARD) && (lun > shost->max_lun)))
return -EINVAL;