* [PATCH] scsi: fnic: Fix built-in NVMe/FC build
@ 2026-08-10 11:06 Karan Tilak Kumar
2026-08-11 1:26 ` Martin K. Petersen (Oracle)
0 siblings, 1 reply; 2+ messages in thread
From: Karan Tilak Kumar @ 2026-08-10 11:06 UTC (permalink / raw)
To: sebaddel
Cc: arulponn, djhawar, gcboffa, mkai2, satishkh, aeasi,
martin.petersen, linux-scsi, linux-kernel, jmeneghi, revers,
adakopou, lduncan, Karan Tilak Kumar, kernel test robot
The fnic NVMe/FC code is guarded with IS_ENABLED(CONFIG_NVME_FC).
That also evaluates true when NVME_FC is built as a module.
When fnic is built into vmlinux and NVME_FC=m, fnic_nvme.o still
references the NVMe/FC transport helpers even though those helpers are
not reachable from built-in code. The final vmlinux link then fails with
undefined nvme_fc_* symbols.
Use IS_REACHABLE(CONFIG_NVME_FC) for the fnic NVMe/FC implementation and
prototypes so built-in fnic uses the disabled stubs unless the NVMe/FC
transport is reachable.
Reported-by: kernel test robot <lkp@intel.com>
Closes: https://lore.kernel.org/oe-kbuild-all/202608092246.XZe7Hlrt-lkp@intel.com/
Reviewed-by: Sesidhar Baddela <sebaddel@cisco.com>
Reviewed-by: Arulprabhu Ponnusamy <arulponn@cisco.com>
Reviewed-by: Gian Carlo Boffa <gcboffa@cisco.com>
Reviewed-by: Arun Easi <aeasi@cisco.com>
Signed-off-by: Karan Tilak Kumar <kartilak@cisco.com>
---
drivers/scsi/fnic/fnic_nvme.c | 2 +-
drivers/scsi/fnic/fnic_nvme.h | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/scsi/fnic/fnic_nvme.c b/drivers/scsi/fnic/fnic_nvme.c
index 8794360f2adf..b237948dcafd 100644
--- a/drivers/scsi/fnic/fnic_nvme.c
+++ b/drivers/scsi/fnic/fnic_nvme.c
@@ -22,7 +22,7 @@
#include "fnic_trace.h"
#include "fdls_fc.h"
-#if IS_ENABLED(CONFIG_NVME_FC)
+#if IS_REACHABLE(CONFIG_NVME_FC)
static bool nvfnic_ls_req_cleanup(struct fnic_iport_s *iport,
struct nvmefc_ls_req *lsreq,
diff --git a/drivers/scsi/fnic/fnic_nvme.h b/drivers/scsi/fnic/fnic_nvme.h
index 5e897908337c..c05908b68e36 100644
--- a/drivers/scsi/fnic/fnic_nvme.h
+++ b/drivers/scsi/fnic/fnic_nvme.h
@@ -61,7 +61,7 @@ struct nvfnic_ls_req {
unsigned int flags;
};
-#if IS_ENABLED(CONFIG_NVME_FC)
+#if IS_REACHABLE(CONFIG_NVME_FC)
int nvfnic_nvme_io_done_handler(void *arg);
struct fnic_io_req *nvfnic_find_io_req_by_tag(struct fnic *fnic, uint16_t tag);
void nvfnic_reset_fcpio_tag_pool(struct fnic_iport_s *iport);
--
2.47.1
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [PATCH] scsi: fnic: Fix built-in NVMe/FC build
2026-08-10 11:06 [PATCH] scsi: fnic: Fix built-in NVMe/FC build Karan Tilak Kumar
@ 2026-08-11 1:26 ` Martin K. Petersen (Oracle)
0 siblings, 0 replies; 2+ messages in thread
From: Martin K. Petersen (Oracle) @ 2026-08-11 1:26 UTC (permalink / raw)
To: Karan Tilak Kumar
Cc: sebaddel, arulponn, djhawar, gcboffa, mkai2, satishkh, aeasi,
martin.petersen, linux-scsi, linux-kernel, jmeneghi, revers,
adakopou, lduncan, kernel test robot
Karan,
> The fnic NVMe/FC code is guarded with IS_ENABLED(CONFIG_NVME_FC).
> That also evaluates true when NVME_FC is built as a module.
Applied to 7.3/scsi-staging, thanks!
--
Martin K. Petersen
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2026-08-11 1:26 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-08-10 11:06 [PATCH] scsi: fnic: Fix built-in NVMe/FC build Karan Tilak Kumar
2026-08-11 1:26 ` Martin K. Petersen (Oracle)
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®