Merge branch 'for-jens-3.19' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen into for-3.19/drivers

Konrad writes:

These are two fixes for Xen blkfront. They harden how it deals with
broken backends.
diff --git a/drivers/block/nvme-core.c b/drivers/block/nvme-core.c
index bcbdf83..2cc2cee 100644
--- a/drivers/block/nvme-core.c
+++ b/drivers/block/nvme-core.c
@@ -875,8 +875,8 @@
 	struct request *req;
 
 	req = blk_mq_alloc_request(dev->admin_q, WRITE, GFP_KERNEL, false);
-	if (!req)
-		return -ENOMEM;
+	if (IS_ERR(req))
+		return PTR_ERR(req);
 	res = nvme_submit_sync_cmd(req, cmd, result, timeout);
 	blk_mq_free_request(req);
 	return res;
@@ -896,8 +896,8 @@
 
 	req = blk_mq_alloc_request(ns->queue, WRITE, (GFP_KERNEL|__GFP_WAIT),
 									false);
-	if (!req)
-		return -ENOMEM;
+	if (IS_ERR(req))
+		return PTR_ERR(req);
 	res = nvme_submit_sync_cmd(req, cmd, result, NVME_IO_TIMEOUT);
 	blk_mq_free_request(req);
 	return res;
@@ -1053,7 +1053,7 @@
 		dev_warn(nvmeq->q_dmadev,
 				"Could not abort I/O %d QID %d",
 				req->tag, nvmeq->qid);
-		blk_mq_free_request(req);
+		blk_mq_free_request(abort_req);
 	}
 }
 
@@ -1691,8 +1691,8 @@
 
 		req = blk_mq_alloc_request(ns->queue, WRITE,
 						(GFP_KERNEL|__GFP_WAIT), false);
-		if (!req)
-			status = -ENOMEM;
+		if (IS_ERR(req))
+			status = PTR_ERR(req);
 		else {
 			status = nvme_submit_sync_cmd(req, &c, &cmd.result,
 								timeout);