scsi: fnic: Fix use of uninitialized value in debug message

The oxid variable in fdls_process_abts_req() was only being initialized
inside the if (tport) block, but was being used in a debug print statement
after that block. If tport was NULL, oxid would remain uninitialized.  Move
the oxid initialization to happen at declaration using
FNIC_STD_GET_OX_ID(fchdr).

Fixes: f828af44b8 ("scsi: fnic: Add support for unsolicited requests and responses")
Closes: https://scan7.scan.coverity.com/#/project-view/52337/11354?selectedIssue=1602772
Signed-off-by: Dheeraj Reddy Jonnalagadda <dheeraj.linuxdev@gmail.com>
Link: https://lore.kernel.org/r/20250108050916.52721-1-dheeraj.linuxdev@gmail.com
Reviewed-by: Karan Tilak Kumar <kartilak@cisco.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
This commit is contained in:
Dheeraj Reddy Jonnalagadda 2025-01-08 10:39:16 +05:30 committed by Martin K. Petersen
parent 17789f8a5b
commit 8ccc5947f5

View File

@ -3900,7 +3900,7 @@ fdls_process_abts_req(struct fnic_iport_s *iport, struct fc_frame_header *fchdr)
uint8_t *frame;
struct fc_std_abts_ba_acc *pba_acc;
uint32_t nport_id;
uint16_t oxid;
uint16_t oxid = FNIC_STD_GET_OX_ID(fchdr);
struct fnic_tport_s *tport;
struct fnic *fnic = iport->fnic;
uint16_t frame_size = FNIC_ETH_FCOE_HDRS_OFFSET +
@ -3912,7 +3912,6 @@ fdls_process_abts_req(struct fnic_iport_s *iport, struct fc_frame_header *fchdr)
tport = fnic_find_tport_by_fcid(iport, nport_id);
if (tport) {
oxid = FNIC_STD_GET_OX_ID(fchdr);
if (tport->active_oxid == oxid) {
tport->flags |= FNIC_FDLS_TGT_ABORT_ISSUED;
fdls_free_oxid(iport, oxid, &tport->active_oxid);