diff options
| author | Keith Busch <keith.busch@intel.com> | 2018-06-06 10:13:05 -0400 |
|---|---|---|
| committer | Jens Axboe <axboe@kernel.dk> | 2018-06-08 14:51:11 -0400 |
| commit | 397c699fb096e7a822990990c17c6b43e829cfc4 (patch) | |
| tree | 9c158c14be3e10688cddb9bdba2af52619df4860 | |
| parent | 0bc88192033a6e652e3fb1adfd6d1b66be33951e (diff) | |
nvme-pci: remove unnecessary completion doorbell check
The nvme pci driver never unmaps the doorbell registers while the requests
are active, so we can always safely update the completion queue head.
Signed-off-by: Keith Busch <keith.busch@intel.com>
Reviewed-by: Jens Axboe <axboe@kernel.dk>
Reviewed-by: Sagi Grimberg <sagi@grimberg.me>
Reviewed-by: Johannes Thumshirn <jthumshirn@suse.de>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
| -rw-r--r-- | drivers/nvme/host/pci.c | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/drivers/nvme/host/pci.c b/drivers/nvme/host/pci.c index a7bed8dccd61..4963a407e728 100644 --- a/drivers/nvme/host/pci.c +++ b/drivers/nvme/host/pci.c | |||
| @@ -920,11 +920,9 @@ static inline void nvme_ring_cq_doorbell(struct nvme_queue *nvmeq) | |||
| 920 | { | 920 | { |
| 921 | u16 head = nvmeq->cq_head; | 921 | u16 head = nvmeq->cq_head; |
| 922 | 922 | ||
| 923 | if (likely(nvmeq->cq_vector >= 0)) { | 923 | if (nvme_dbbuf_update_and_check_event(head, nvmeq->dbbuf_cq_db, |
| 924 | if (nvme_dbbuf_update_and_check_event(head, nvmeq->dbbuf_cq_db, | 924 | nvmeq->dbbuf_cq_ei)) |
| 925 | nvmeq->dbbuf_cq_ei)) | 925 | writel(head, nvmeq->q_db + nvmeq->dev->db_stride); |
| 926 | writel(head, nvmeq->q_db + nvmeq->dev->db_stride); | ||
| 927 | } | ||
| 928 | } | 926 | } |
| 929 | 927 | ||
| 930 | static inline void nvme_handle_cqe(struct nvme_queue *nvmeq, u16 idx) | 928 | static inline void nvme_handle_cqe(struct nvme_queue *nvmeq, u16 idx) |
