- corrected the error code in i2o_scsi_reply to return the correct error
code DID_BUS_BUSY if bus is busy (original from Alan Cox)
Signed-off-by: Markus Lidel <Markus.Lidel@shadowconnect.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
if (msg->u.head[0] & (1 << 13)) {
struct i2o_message *pmsg; /* preserved message */
u32 pm;
+ int err = DID_ERROR;
pm = le32_to_cpu(&msg->body[3]);
if (msg->body[0] & (1 << 18))
printk(KERN_ERR "Path State.\n");
if (msg->body[0] & (1 << 18))
+ {
printk(KERN_ERR "Congestion.\n");
+ err = DID_BUS_BUSY;
+ }
printk(KERN_DEBUG "Failing message is %p.\n", pmsg);
if (!cmd)
return 1;
- cmd->result = DID_ERROR << 16;
+ cmd->result = err << 16;
cmd->scsi_done(cmd);
/* Now flush the message by making it a NOP */