.. | .. |
---|
1490 | 1490 | */ |
---|
1491 | 1491 | SCSI_LOG_MLQUEUE(3, scmd_printk(KERN_INFO, cmd, |
---|
1492 | 1492 | "queuecommand : device blocked\n")); |
---|
| 1493 | + atomic_dec(&cmd->device->iorequest_cnt); |
---|
1493 | 1494 | return SCSI_MLQUEUE_DEVICE_BUSY; |
---|
1494 | 1495 | } |
---|
1495 | 1496 | |
---|
.. | .. |
---|
1522 | 1523 | trace_scsi_dispatch_cmd_start(cmd); |
---|
1523 | 1524 | rtn = host->hostt->queuecommand(host, cmd); |
---|
1524 | 1525 | if (rtn) { |
---|
| 1526 | + atomic_dec(&cmd->device->iorequest_cnt); |
---|
1525 | 1527 | trace_scsi_dispatch_cmd_error(cmd, rtn); |
---|
1526 | 1528 | if (rtn != SCSI_MLQUEUE_DEVICE_BUSY && |
---|
1527 | 1529 | rtn != SCSI_MLQUEUE_TARGET_BUSY) |
---|