From 6128fec9417313690057e55d9313f4148941b9da Mon Sep 17 00:00:00 2001 From: Karan Tilak Kumar Date: Fri, 24 Jul 2026 10:48:00 -0700 Subject: [PATCH] scsi: fnic: Use fnic_num for non-SCSI identifiers Use SCSI host numbers only for FCP initiator paths. Name NVMe-facing FDMI and debugfs entries with fnic_num, and record trace events with the driver instance number. Reviewed-by: Sesidhar Baddela Reviewed-by: Arulprabhu Ponnusamy Reviewed-by: Gian Carlo Boffa Reviewed-by: Arun Easi Reviewed-by: Hannes Reinecke Reviewed-by: Lee Duncan Signed-off-by: Karan Tilak Kumar Co-developed-by: Hannes Reinecke Link: https://patch.msgid.link/20260724174811.5118-3-kartilak@cisco.com Signed-off-by: Martin K. Petersen --- drivers/scsi/fnic/fdls_disc.c | 8 ++++++-- drivers/scsi/fnic/fnic_debugfs.c | 5 ++++- drivers/scsi/fnic/fnic_scsi.c | 2 +- 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/drivers/scsi/fnic/fdls_disc.c b/drivers/scsi/fnic/fdls_disc.c index 5880ca28a0ad..f665460ef62c 100644 --- a/drivers/scsi/fnic/fdls_disc.c +++ b/drivers/scsi/fnic/fdls_disc.c @@ -2083,8 +2083,12 @@ static void fdls_fdmi_register_pa(struct fnic_iport_s *iport) fnic_fdmi_attr_set(fdmi_attr, FNIC_FDMI_TYPE_MAX_FRAME_SIZE, FNIC_FDMI_MFS_LEN, data, &attr_off_bytes); - snprintf(tmp_data, FNIC_FDMI_OS_NAME_LEN - 1, "host%d", - fnic->host->host_no); + if (IS_FNIC_FCP_INITIATOR(fnic)) + snprintf(tmp_data, FNIC_FDMI_OS_NAME_LEN - 1, "host%d", + fnic->host->host_no); + else if (IS_FNIC_NVME_INITIATOR(fnic)) + snprintf(tmp_data, FNIC_FDMI_OS_NAME_LEN - 1, "nvfnic%d", + fnic->fnic_num); strscpy_pad(data, tmp_data, FNIC_FDMI_OS_NAME_LEN); fnic_fdmi_attr_set(fdmi_attr, FNIC_FDMI_TYPE_OS_NAME, FNIC_FDMI_OS_NAME_LEN, data, &attr_off_bytes); diff --git a/drivers/scsi/fnic/fnic_debugfs.c b/drivers/scsi/fnic/fnic_debugfs.c index ba86964fb45e..467fba29ea5f 100644 --- a/drivers/scsi/fnic/fnic_debugfs.c +++ b/drivers/scsi/fnic/fnic_debugfs.c @@ -681,7 +681,10 @@ int fnic_stats_debugfs_init(struct fnic *fnic) { char name[16]; - snprintf(name, sizeof(name), "host%d", fnic->host->host_no); + if (IS_FNIC_FCP_INITIATOR(fnic)) + snprintf(name, sizeof(name), "host%d", fnic->host->host_no); + else if (IS_FNIC_NVME_INITIATOR(fnic)) + snprintf(name, sizeof(name), "nvfnic%d", fnic->fnic_num); fnic->fnic_stats_debugfs_host = debugfs_create_dir(name, fnic_stats_debugfs_root); diff --git a/drivers/scsi/fnic/fnic_scsi.c b/drivers/scsi/fnic/fnic_scsi.c index 0759540f6675..b92260583c67 100644 --- a/drivers/scsi/fnic/fnic_scsi.c +++ b/drivers/scsi/fnic/fnic_scsi.c @@ -894,7 +894,7 @@ static inline void fnic_fcpio_ack_handler(struct fnic *fnic, spin_unlock_irqrestore(&fnic->wq_copy_lock[wq_index], flags); FNIC_TRACE(fnic_fcpio_ack_handler, - fnic->host->host_no, 0, 0, ox_id_tag[2], ox_id_tag[3], + fnic->fnic_num, 0, 0, ox_id_tag[2], ox_id_tag[3], ox_id_tag[4], ox_id_tag[5]); }