scsi: qla2xxx: edif: Tear down session if keys have been removed
authorQuinn Tran <qutran@marvell.com>
Wed, 8 Jun 2022 11:58:44 +0000 (04:58 -0700)
committerMartin K. Petersen <martin.petersen@oracle.com>
Fri, 10 Jun 2022 17:04:04 +0000 (13:04 -0400)
If all keys for a session have been deleted, trigger a session teardown.

Link: https://lore.kernel.org/r/20220608115849.16693-6-njavali@marvell.com
Fixes: dd30706e73b7 ("scsi: qla2xxx: edif: Add key update")
Reviewed-by: Himanshu Madhani <himanshu.madhani@oracle.com>
Signed-off-by: Quinn Tran <qutran@marvell.com>
Signed-off-by: Nilesh Javali <njavali@marvell.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/scsi/qla2xxx/qla_def.h
drivers/scsi/qla2xxx/qla_isr.c

index 3e78bafa4011c678f74bc3f4750c9a3d075ea1e5..f064dcdbb9752434d47c421f3b886bd3db8f8896 100644 (file)
@@ -2158,6 +2158,11 @@ typedef struct {
 #define CS_IOCB_ERROR          0x31    /* Generic error for IOCB request
                                           failure */
 #define CS_REJECT_RECEIVED     0x4E    /* Reject received */
+#define CS_EDIF_AUTH_ERROR     0x63    /* decrypt error */
+#define CS_EDIF_PAD_LEN_ERROR  0x65    /* pad > frame size, not 4byte align */
+#define CS_EDIF_INV_REQ                0x66    /* invalid request */
+#define CS_EDIF_SPI_ERROR      0x67    /* rx frame unable to locate sa */
+#define CS_EDIF_HDR_ERROR      0x69    /* data frame != expected len */
 #define CS_BAD_PAYLOAD         0x80    /* Driver defined */
 #define CS_UNKNOWN             0x81    /* Driver defined */
 #define CS_RETRY               0x82    /* Driver defined */
index 21b31d6359c8a6b4c9bb36c58343fe7a071fc6ff..8e6831953e7c65c787a4f912f60c16961da7b435 100644 (file)
@@ -3426,6 +3426,7 @@ check_scsi_status:
        case CS_PORT_UNAVAILABLE:
        case CS_TIMEOUT:
        case CS_RESET:
+       case CS_EDIF_INV_REQ:
 
                /*
                 * We are going to have the fc class block the rport