On 01/24/2018 11:45 PM, James Smart wrote: > I/O conditions on the nvme target may have the driver submitting > to a full hardware wq. The hardware wq is a shared resource among > all nvme controllers. When the driver hit a full wq, it failed the > io posting back to the nvme-fc transport, which then escalated it > into errors. > > Correct by maintaining a sideband queue within the driver that is > added to when the WQ full condition is hit, and drained from as soon > as new WQ space opens up. > > Signed-off-by: Dick Kennedy <dick.kennedy@xxxxxxxxxxxx> > Signed-off-by: James Smart <james.smart@xxxxxxxxxxxx> > --- > drivers/scsi/lpfc/lpfc_crtn.h | 1 + > drivers/scsi/lpfc/lpfc_nvmet.c | 116 +++++++++++++++++++++++++++++++++++++++++ > drivers/scsi/lpfc/lpfc_nvmet.h | 1 + > drivers/scsi/lpfc/lpfc_sli.c | 3 ++ > drivers/scsi/lpfc/lpfc_sli4.h | 5 +- > 5 files changed, 125 insertions(+), 1 deletion(-) > Reviewed-by: Hannes Reinecke <hare@xxxxxxxx> Cheers, Hannes -- Dr. Hannes Reinecke Teamlead Storage & Networking hare@xxxxxxx +49 911 74053 688 SUSE LINUX GmbH, Maxfeldstr. 5, 90409 Nürnberg GF: F. Imendörffer, J. Smithard, J. Guild, D. Upmanyu, G. Norton HRB 21284 (AG Nürnberg)