diff options
Diffstat (limited to 'drivers/scsi/scsi_transport_fc.c')
-rw-r--r-- | drivers/scsi/scsi_transport_fc.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/scsi/scsi_transport_fc.c b/drivers/scsi/scsi_transport_fc.c index 1d5b72173dd8..6cfffc88022a 100644 --- a/drivers/scsi/scsi_transport_fc.c +++ b/drivers/scsi/scsi_transport_fc.c | |||
@@ -27,6 +27,7 @@ | |||
27 | */ | 27 | */ |
28 | #include <linux/module.h> | 28 | #include <linux/module.h> |
29 | #include <linux/init.h> | 29 | #include <linux/init.h> |
30 | #include <linux/slab.h> | ||
30 | #include <linux/delay.h> | 31 | #include <linux/delay.h> |
31 | #include <scsi/scsi_device.h> | 32 | #include <scsi/scsi_device.h> |
32 | #include <scsi/scsi_host.h> | 33 | #include <scsi/scsi_host.h> |
@@ -3852,7 +3853,7 @@ fc_bsg_request_handler(struct request_queue *q, struct Scsi_Host *shost, | |||
3852 | if (rport && (rport->port_state != FC_PORTSTATE_ONLINE)) { | 3853 | if (rport && (rport->port_state != FC_PORTSTATE_ONLINE)) { |
3853 | req->errors = -ENXIO; | 3854 | req->errors = -ENXIO; |
3854 | spin_unlock_irq(q->queue_lock); | 3855 | spin_unlock_irq(q->queue_lock); |
3855 | blk_end_request(req, -ENXIO, blk_rq_bytes(req)); | 3856 | blk_end_request_all(req, -ENXIO); |
3856 | spin_lock_irq(q->queue_lock); | 3857 | spin_lock_irq(q->queue_lock); |
3857 | continue; | 3858 | continue; |
3858 | } | 3859 | } |
@@ -3862,7 +3863,7 @@ fc_bsg_request_handler(struct request_queue *q, struct Scsi_Host *shost, | |||
3862 | ret = fc_req_to_bsgjob(shost, rport, req); | 3863 | ret = fc_req_to_bsgjob(shost, rport, req); |
3863 | if (ret) { | 3864 | if (ret) { |
3864 | req->errors = ret; | 3865 | req->errors = ret; |
3865 | blk_end_request(req, ret, blk_rq_bytes(req)); | 3866 | blk_end_request_all(req, ret); |
3866 | spin_lock_irq(q->queue_lock); | 3867 | spin_lock_irq(q->queue_lock); |
3867 | continue; | 3868 | continue; |
3868 | } | 3869 | } |