Message ID | 1497006351-75751-2-git-send-email-brad.figg@canonical.com |
---|---|
State | New |
Headers | show |
diff --git a/drivers/scsi/sg.c b/drivers/scsi/sg.c index 1f65e32..0d512d4 100644 --- a/drivers/scsi/sg.c +++ b/drivers/scsi/sg.c @@ -766,8 +766,13 @@ sg_common_write(Sg_fd * sfp, Sg_request * srp, return k; /* probably out of space --> ENOMEM */ } if (sdp->detached) { - if (srp->bio) - blk_end_request_all(srp->rq, -EIO); + if (srp->bio) { + if (srp->rq->cmd != srp->rq->__cmd) + kfree(srp->rq->cmd); + + blk_end_request_all(srp->rq, -EIO); + srp->rq = NULL; + } sg_finish_rem_req(srp); return -ENODEV; }