Boaz Harrosh, on 11/02/2010 05:23 PM wrote: [...] >> + * Some pseudo SCSI HBAs do not fill in sector_size >> + * correctly. (See ide-scsi.c) So go ahead and setup sane >> + * values. >> + */ >> + if (!sd->sector_size) { >> + switch (sd->type) { >> + case TYPE_DISK: >> + sd->sector_size = 512; >> + break; >> + case TYPE_ROM: >> + sd->sector_size = 2048; >> + break; >> + case TYPE_TAPE: /* The Tape may not be in the drive */ >> + break; >> + case TYPE_MEDIUM_CHANGER: /* Control CDBs only */ >> + break; >> + default: >> + printk(KERN_ERR "Unable to set sector_size for %d\n", >> + sd->type); >> + return NULL; > > What about sector-less devices? OSD, Scanners, printers ... [...] >> + /* >> + * For TYPE_TAPE, attempt to determine blocksize with MODE_SENSE. >> + */ >> + if (sd->type == TYPE_TAPE) { > > Just as a future note: > One of the things I'm missing from LIO is the notion of SCSI_TYPE or SCSI > class. So things like this can be done in a plugin manner as per TYPE > Like in the Kernel we have the ULDs for that. This is exactly how it is done in SCST. Also SCST well handles sector-less devices. Vlad -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html