audk/MdeModulePkg/Bus/Pci/NvmExpressDxe
Sean Brogan 7607174192 MdeModulePkg/NvmExpressDxe: Fix wrong queue size for async IO queues
REF:https://bugzilla.tianocore.org/show_bug.cgi?id=2118

When a packet is queued/completed for the asynchronous IO queue, the logic
to roll over to the front of the queue doesn't account for actual size of
the IO Submission/Completion queue.

This causes a device to hang due to doorbell being outside of visible
queue. An example would be if an NVMe drive only supported a queue size of
128 while the driver supports 256.

Cc: Jian J Wang <jian.j.wang@intel.com>
Signed-off-by: Sean Brogan <sean.brogan@microsoft.com>
Signed-off-by: Hao A Wu <hao.a.wu@intel.com>
Acked-by: Ray Ni <ray.ni@intel.com>
2019-11-20 02:47:19 +00:00
..
ComponentName.c
NvmExpress.c MdeModulePkg/NvmExpressDxe: Fix wrong queue size for async IO queues 2019-11-20 02:47:19 +00:00
NvmExpress.h
NvmExpressBlockIo.c
NvmExpressBlockIo.h
NvmExpressDiskInfo.c
NvmExpressDiskInfo.h
NvmExpressDxe.inf
NvmExpressDxe.uni
NvmExpressDxeExtra.uni
NvmExpressHci.c
NvmExpressHci.h
NvmExpressPassthru.c MdeModulePkg/NvmExpressDxe: Fix wrong queue size for async IO queues 2019-11-20 02:47:19 +00:00