From 2c7f1e80528ce1034e9233dda16edbb283132b34 Mon Sep 17 00:00:00 2001 From: Jeff Skirvin Date: Wed, 16 Mar 2011 09:41:59 -0700 Subject: [PATCH] --- yaml --- r: 254375 b: refs/heads/master c: c4b9e24c4be67aeed44cd46ef5ea92948d02a426 h: refs/heads/master i: 254373: 1d26464491708558f50ff78a428cedb76ee9d332 254371: c7a52233d375dcb2fcffdc281337c37eaf52a4bc 254367: 1375e7eb959521d8226b7bcd32967d806b08538f v: v3 --- [refs] | 2 +- trunk/drivers/scsi/isci/request.c | 34 +++++++++++++++---------------- 2 files changed, 18 insertions(+), 18 deletions(-) diff --git a/[refs] b/[refs] index d1558e03d578..f37964d675a7 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 1077a574103177bff22b7cdd155d960f46ac1e8f +refs/heads/master: c4b9e24c4be67aeed44cd46ef5ea92948d02a426 diff --git a/trunk/drivers/scsi/isci/request.c b/trunk/drivers/scsi/isci/request.c index 015643104311..eba8e0b3c873 100644 --- a/trunk/drivers/scsi/isci/request.c +++ b/trunk/drivers/scsi/isci/request.c @@ -449,26 +449,11 @@ int isci_request_execute( list_add(&request->dev_node, &isci_device->reqs_in_process); - if (status == - SCI_FAILURE_REMOTE_DEVICE_RESET_REQUIRED) { - /* Signal libsas that we need the SCSI error - * handler thread to work on this I/O and that - * we want a device reset. - */ - isci_request_signal_device_reset(request); - - /* Change the status, since we are holding - * the I/O until it is managed by the SCSI - * error handler. - */ - status = SCI_SUCCESS; - } - else + if (status == SCI_SUCCESS) { /* Save the tag for possible task mgmt later. */ request->io_tag = scic_io_request_get_io_tag( request->sci_request_handle); - - + } } else dev_warn(&isci_host->pdev->dev, "%s: failed request start\n", @@ -476,6 +461,21 @@ int isci_request_execute( spin_unlock_irqrestore(&isci_host->scic_lock, flags); + if (status == + SCI_FAILURE_REMOTE_DEVICE_RESET_REQUIRED) { + /* Signal libsas that we need the SCSI error + * handler thread to work on this I/O and that + * we want a device reset. + */ + isci_request_signal_device_reset(request); + + /* Change the status, since we are holding + * the I/O until it is managed by the SCSI + * error handler. + */ + status = SCI_SUCCESS; + } + } else dev_warn(&isci_host->pdev->dev, "%s: request_construct failed - status = 0x%x\n",