*
  * Safe to use from interrupt context
  */
-static int __nvme_submit_cmd(struct nvme_queue *nvmeq, struct nvme_command *cmd)
+static void __nvme_submit_cmd(struct nvme_queue *nvmeq,
+                                               struct nvme_command *cmd)
 {
        u16 tail = nvmeq->sq_tail;
 
                tail = 0;
        writel(tail, nvmeq->q_db);
        nvmeq->sq_tail = tail;
-
-       return 0;
 }
 
-static int nvme_submit_cmd(struct nvme_queue *nvmeq, struct nvme_command *cmd)
+static void nvme_submit_cmd(struct nvme_queue *nvmeq, struct nvme_command *cmd)
 {
        unsigned long flags;
-       int ret;
        spin_lock_irqsave(&nvmeq->q_lock, flags);
-       ret = __nvme_submit_cmd(nvmeq, cmd);
+       __nvme_submit_cmd(nvmeq, cmd);
        spin_unlock_irqrestore(&nvmeq->q_lock, flags);
-       return ret;
 }
 
 static __le64 **iod_list(struct nvme_iod *iod)
        c.common.command_id = req->tag;
 
        blk_mq_free_request(req);
-       return __nvme_submit_cmd(nvmeq, &c);
+       __nvme_submit_cmd(nvmeq, &c);
+       return 0;
 }
 
 static int nvme_submit_admin_async_cmd(struct nvme_dev *dev,
 
        cmd->common.command_id = req->tag;
 
-       return nvme_submit_cmd(nvmeq, cmd);
+       nvme_submit_cmd(nvmeq, cmd);
+       return 0;
 }
 
 static int adapter_delete_queue(struct nvme_dev *dev, u8 opcode, u16 id)
 
        dev_warn(nvmeq->q_dmadev, "Aborting I/O %d QID %d\n", req->tag,
                                                        nvmeq->qid);
-       if (nvme_submit_cmd(dev->queues[0], &cmd) < 0) {
-               dev_warn(nvmeq->q_dmadev,
-                               "Could not abort I/O %d QID %d",
-                               req->tag, nvmeq->qid);
-               blk_mq_free_request(abort_req);
-       }
+       nvme_submit_cmd(dev->queues[0], &cmd);
 }
 
 static void nvme_cancel_queue_ios(struct request *req, void *data, bool reserved)