[PATCH -next] scsi: qla2xxx: Fix build error implicit-function-declaration

From: Ren Zhijie
Date: Sun Sep 18 2022 - 23:12:07 EST


If CONFIG_TRACING is not set,
make ARCH=x86_64 CROSS_COMPILE=x86_64-linux-gnu-,
will be failed, like this:

drivers/scsi/qla2xxx/qla_os.c: In function ‘qla_trace_init’:
drivers/scsi/qla2xxx/qla_os.c:2854:18: error: implicit declaration of function ‘trace_array_get_by_name’; did you mean ‘trace_array_set_clr_event’? [-Werror=implicit-function-declaration]
qla_trc_array = trace_array_get_by_name("qla2xxx");
^~~~~~~~~~~~~~~~~~~~~~~
trace_array_set_clr_event
drivers/scsi/qla2xxx/qla_os.c:2854:16: error: assignment makes pointer from integer without a cast [-Werror=int-conversion]
qla_trc_array = trace_array_get_by_name("qla2xxx");
^
drivers/scsi/qla2xxx/qla_os.c: In function ‘qla_trace_uninit’:
drivers/scsi/qla2xxx/qla_os.c:2869:2: error: implicit declaration of function ‘trace_array_put’; did you mean ‘trace_seq_putc’? [-Werror=implicit-function-declaration]
trace_array_put(qla_trc_array);
^~~~~~~~~~~~~~~
trace_seq_putc
cc1: all warnings being treated as errors

To fix this error, wrap up all the relevant code with CONFIG_TRACING.

Fixes: 8bfc149ba24c ("scsi: qla2xxx: Enhance driver tracing with separate tunable and more")
Signed-off-by: Ren Zhijie <renzhijie2@xxxxxxxxxx>
---
drivers/scsi/qla2xxx/qla_os.c | 11 ++++++++++-
1 file changed, 10 insertions(+), 1 deletion(-)

diff --git a/drivers/scsi/qla2xxx/qla_os.c b/drivers/scsi/qla2xxx/qla_os.c
index 2c85f3cce726..e445105ee16d 100644
--- a/drivers/scsi/qla2xxx/qla_os.c
+++ b/drivers/scsi/qla2xxx/qla_os.c
@@ -37,7 +37,9 @@ static int apidev_major;
*/
struct kmem_cache *srb_cachep;

+#ifdef CONFIG_TRACING
static struct trace_array *qla_trc_array;
+#endif

int ql2xfulldump_on_mpifail;
module_param(ql2xfulldump_on_mpifail, int, S_IRUGO | S_IWUSR);
@@ -2848,6 +2850,7 @@ static void qla2x00_iocb_work_fn(struct work_struct *work)
spin_unlock_irqrestore(&vha->work_lock, flags);
}

+#ifdef CONFIG_TRACING
static void
qla_trace_init(void)
{
@@ -2868,7 +2871,7 @@ qla_trace_uninit(void)
return;
trace_array_put(qla_trc_array);
}
-
+#endif
/*
* PCI driver interface
*/
@@ -8209,7 +8212,9 @@ qla2x00_module_init(void)
BUILD_BUG_ON(sizeof(sw_info_t) != 32);
BUILD_BUG_ON(sizeof(target_id_t) != 2);

+#ifdef CONFIG_TRACING
qla_trace_init();
+#endif

/* Allocate cache for SRBs. */
srb_cachep = kmem_cache_create("qla2xxx_srbs", sizeof(srb_t), 0,
@@ -8290,7 +8295,9 @@ qla2x00_module_init(void)
destroy_cache:
kmem_cache_destroy(srb_cachep);

+#ifdef CONFIG_TRACING
qla_trace_uninit();
+#endif
return ret;
}

@@ -8309,7 +8316,9 @@ qla2x00_module_exit(void)
fc_release_transport(qla2xxx_transport_template);
qlt_exit();
kmem_cache_destroy(srb_cachep);
+#ifdef CONFIG_TRACING
qla_trace_uninit();
+#endif
}

module_init(qla2x00_module_init);
--
2.17.1