WSL2-Linux-Kernel/drivers/nvme/host
Bijan Mottahedeh 9515743bfb nvme-pci: Hold cq_poll_lock while completing CQEs
Completions need to consumed in the same order the controller submitted
them, otherwise future completion entries may overwrite ones we haven't
handled yet. Hold the nvme queue's poll lock while completing new CQEs to
prevent another thread from freeing command tags for reuse out-of-order.

Fixes: dabcefab45 ("nvme: provide optimized poll function for separate poll queues")
Signed-off-by: Bijan Mottahedeh <bijan.mottahedeh@oracle.com>
Reviewed-by: Sagi Grimberg <sagi@grimberg.me>
Reviewed-by: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Keith Busch <kbusch@kernel.org>
2020-02-28 01:32:14 +09:00
..
Kconfig block: Allow t10-pi to be modular 2020-01-06 20:59:04 -07:00
Makefile nvme: Add hardware monitoring support 2019-11-12 01:57:35 +09:00
core.c nvme: Fix uninitialized-variable warning 2020-02-20 01:40:57 +09:00
fabrics.c nvme-fabrics: allow discovery subsystems accept a kato 2019-09-12 08:50:46 -07:00
fabrics.h nvme: Remove ADMIN_ONLY state 2019-10-14 23:21:44 +09:00
fault_inject.c nvme: enable to inject errors into admin commands 2019-06-21 11:15:50 +02:00
fc.c nvme-fc: fix double-free scenarios on hw queues 2019-11-27 03:00:13 +09:00
hwmon.c nvme: hwmon: switch to use <linux/units.h> helpers 2020-01-31 10:30:40 -08:00
lightnvm.c lightnvm: move metadata mapping to lower level driver 2019-08-06 08:20:10 -06:00
multipath.c nvme-multipath: Fix memory leak with ana_log_buf 2020-02-21 23:52:25 +09:00
nvme.h nvme-rdma: Avoid preallocating big SGL for data 2019-11-27 02:13:45 +09:00
pci.c nvme-pci: Hold cq_poll_lock while completing CQEs 2020-02-28 01:32:14 +09:00
rdma.c nvme: prevent warning triggered by nvme_stop_keep_alive 2020-02-14 10:12:04 -07:00
tcp.c nvme: prevent warning triggered by nvme_stop_keep_alive 2020-02-14 10:12:04 -07:00
trace.c nvme: trace: parse Get LBA Status command in detail 2019-08-29 12:55:01 -07:00
trace.h nvme-trace: print result and status in hex format 2019-06-21 11:12:37 +02:00