aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/scsi.c
diff options
context:
space:
mode:
authorGrant Likely <grant.likely@secretlab.ca>2010-05-22 02:36:56 -0400
committerGrant Likely <grant.likely@secretlab.ca>2010-05-22 02:36:56 -0400
commitcf9b59e9d3e008591d1f54830f570982bb307a0d (patch)
tree113478ce8fd8c832ba726ffdf59b82cb46356476 /drivers/scsi/scsi.c
parent44504b2bebf8b5823c59484e73096a7d6574471d (diff)
parentf4b87dee923342505e1ddba8d34ce9de33e75050 (diff)
Merge remote branch 'origin' into secretlab/next-devicetree
Merging in current state of Linus' tree to deal with merge conflicts and build failures in vio.c after merge. Conflicts: drivers/i2c/busses/i2c-cpm.c drivers/i2c/busses/i2c-mpc.c drivers/net/gianfar.c Also fixed up one line in arch/powerpc/kernel/vio.c to use the correct node pointer. Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
Diffstat (limited to 'drivers/scsi/scsi.c')
-rw-r--r--drivers/scsi/scsi.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/scsi/scsi.c b/drivers/scsi/scsi.c
index 1c08f6164658..ad0ed212db4a 100644
--- a/drivers/scsi/scsi.c
+++ b/drivers/scsi/scsi.c
@@ -67,6 +67,9 @@
67#include "scsi_priv.h" 67#include "scsi_priv.h"
68#include "scsi_logging.h" 68#include "scsi_logging.h"
69 69
70#define CREATE_TRACE_POINTS
71#include <trace/events/scsi.h>
72
70static void scsi_done(struct scsi_cmnd *cmd); 73static void scsi_done(struct scsi_cmnd *cmd);
71 74
72/* 75/*
@@ -747,10 +750,12 @@ int scsi_dispatch_cmd(struct scsi_cmnd *cmd)
747 cmd->result = (DID_NO_CONNECT << 16); 750 cmd->result = (DID_NO_CONNECT << 16);
748 scsi_done(cmd); 751 scsi_done(cmd);
749 } else { 752 } else {
753 trace_scsi_dispatch_cmd_start(cmd);
750 rtn = host->hostt->queuecommand(cmd, scsi_done); 754 rtn = host->hostt->queuecommand(cmd, scsi_done);
751 } 755 }
752 spin_unlock_irqrestore(host->host_lock, flags); 756 spin_unlock_irqrestore(host->host_lock, flags);
753 if (rtn) { 757 if (rtn) {
758 trace_scsi_dispatch_cmd_error(cmd, rtn);
754 if (rtn != SCSI_MLQUEUE_DEVICE_BUSY && 759 if (rtn != SCSI_MLQUEUE_DEVICE_BUSY &&
755 rtn != SCSI_MLQUEUE_TARGET_BUSY) 760 rtn != SCSI_MLQUEUE_TARGET_BUSY)
756 rtn = SCSI_MLQUEUE_HOST_BUSY; 761 rtn = SCSI_MLQUEUE_HOST_BUSY;
@@ -781,6 +786,7 @@ int scsi_dispatch_cmd(struct scsi_cmnd *cmd)
781 */ 786 */
782static void scsi_done(struct scsi_cmnd *cmd) 787static void scsi_done(struct scsi_cmnd *cmd)
783{ 788{
789 trace_scsi_dispatch_cmd_done(cmd);
784 blk_complete_request(cmd->request); 790 blk_complete_request(cmd->request);
785} 791}
786 792