linux_dsm_epyc7002/drivers/scsi/cxlflash
Matthew R. Ochs e63a8d886d scsi: cxlflash: Use local mutex for AFU serialization
AFUs can only process a single AFU command at a time. This is enforced with
a global mutex situated within the AFU send routine. As this mutex has a
global scope, it has the potential to unnecessarily block commands destined
for other AFUs.

Instead of using a global mutex, transition the mutex to be per-AFU. This
will allow commands to only be blocked by siblings of the same AFU.

Signed-off-by: Matthew R. Ochs <mrochs@linux.vnet.ibm.com>
Signed-off-by: Uma Krishnan <ukrishn@linux.vnet.ibm.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
2018-05-18 11:22:10 -04:00
..
backend.h scsi: cxlflash: Introduce object handle fop 2018-04-18 19:32:50 -04:00
common.h scsi: cxlflash: Use local mutex for AFU serialization 2018-05-18 11:22:10 -04:00
cxl_hw.c scsi: cxlflash: Introduce object handle fop 2018-04-18 19:32:50 -04:00
Kconfig scsi: cxlflash: Introduce OCXL backend 2018-04-18 19:32:47 -04:00
lunmgt.c scsi: cxlflash: Remove port configuration assumptions 2017-04-13 22:55:41 -04:00
main.c scsi: cxlflash: Use local mutex for AFU serialization 2018-05-18 11:22:10 -04:00
main.h scsi: cxlflash: Enable OCXL operations 2018-04-18 19:32:50 -04:00
Makefile scsi: cxlflash: Introduce OCXL backend 2018-04-18 19:32:47 -04:00
ocxl_hw.c scsi: cxlflash: Support AFU reset 2018-04-18 19:32:50 -04:00
ocxl_hw.h scsi: cxlflash: Register for translation errors 2018-04-18 19:32:50 -04:00
sislite.h scsi: cxlflash: Update synchronous interrupt status bits 2018-04-18 19:32:50 -04:00
superpipe.c scsi: cxlflash: Acquire semaphore before invoking ioctl services 2018-05-18 11:22:10 -04:00
superpipe.h scsi: cxlflash: Remove embedded CXL work structures 2018-01-10 23:24:57 -05:00
vlun.c scsi: cxlflash: Use derived maximum write same length 2017-10-31 12:28:02 -04:00
vlun.h scsi: cxlflash: Fix warnings/errors 2017-04-13 22:55:41 -04:00