linux_dsm_epyc7002/drivers/scsi/cxlflash
Uma Krishnan 07a191f762 scsi: cxlflash: Fix vlun resize failure in the shrink path
The ioctl DK_CAPI_VLUN_RESIZE can fail if the allocated vlun size is
reduced from almost maximum capacity and then increased again.

The shrink_lxt() routine is currently using the SISL_ASTATUS_MASK to
mask the higher 48 bits of the lxt entry. This is unnecessary and
incorrect as it uses a mask designed for the asynchronous interrupt
status register.  When the 4 port support was added to cxlflash, the
SISL_ASTATUS_MASK was updated to reflect the status bits for all 4
ports. This change indirectly affected the shrink_lxt() code path.

To extract the base, simply shift the bits without masking.

Fixes: 5651807232 ("scsi: cxlflash: SISlite updates to support 4 ports")
Signed-off-by: Uma Krishnan <ukrishn@linux.vnet.ibm.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
2017-08-25 18:24:04 -04:00
..
common.h scsi: cxlflash: Remove zeroing of private command data 2017-06-26 15:01:13 -04:00
Kconfig scsi: cxlflash: Select IRQ_POLL 2017-05-08 22:09:21 -04:00
lunmgt.c scsi: cxlflash: Remove port configuration assumptions 2017-04-13 22:55:41 -04:00
main.c scsi: cxlflash: Remove unnecessary existence check 2017-08-25 18:23:06 -04:00
main.h scsi: cxlflash: Support AFU debug 2017-06-26 15:01:12 -04:00
Makefile cxlflash: Virtual LUN support 2015-08-26 18:05:39 -07:00
sislite.h scsi: cxlflash: Support WS16 unmap 2017-06-26 15:01:13 -04:00
superpipe.c scsi: cxlflash: Avoid double mutex unlock 2017-08-25 18:23:34 -04:00
superpipe.h scsi: cxlflash: Fix warnings/errors 2017-04-13 22:55:41 -04:00
vlun.c scsi: cxlflash: Fix vlun resize failure in the shrink path 2017-08-25 18:24:04 -04:00
vlun.h scsi: cxlflash: Fix warnings/errors 2017-04-13 22:55:41 -04:00