Tejun Heo wrote:
Robert Hancock wrote:
Tejun Heo wrote:
..
Yes, it should likely do something with these return values. Though
theoretically it shouldn't fail, since the DMA mask is either 32-bit,
which shouldn't fail, or one that was successfully set before. Also I
don't think the SCSI layer actually checks the slave_config return
value.. sigh.
Then please at least add WARN_ON() && another reason why allocating /
deallocating resources from ->slave_config isn't such a good idea.
..
The entire point of "slave_configure" is to provide a point for the LLD
to do per-device data structure allocation/init.
And yes, SCSI does check the return code. Whether the code around that check
is buggy or not is another question, but it's always worked for me.
if (sdev->host->hostt->slave_configure) {
int ret = sdev->host->hostt->slave_configure(sdev);
if (ret) {
/*
* if LLDD reports slave not present, don't clutter
* console with alloc failure messages
*/
if (ret != -ENXIO) {
sdev_printk(KERN_ERR, sdev,
"failed to configure device\n");
}
return SCSI_SCAN_NO_RESPONSE;
}
}
Cheers
-
To unsubscribe from this list: send the line "unsubscribe linux-ide" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html