Re: [PATCH] coresight: cti-sysfs: Mark coresight_cti_reg_store() as __maybe_unused
From: James Clark
Date: Fri Sep 02 2022 - 09:44:06 EST
On 01/09/2022 20:50, Nathan Chancellor wrote:
> When building without CONFIG_CORESIGHT_CTI_INTEGRATION_REGS, there is a
> warning about coresight_cti_reg_store() being unused in the file:
>
> drivers/hwtracing/coresight/coresight-cti-sysfs.c:184:16: warning: 'coresight_cti_reg_store' defined but not used [-Wunused-function]
> 184 | static ssize_t coresight_cti_reg_store(struct device *dev,
> | ^~~~~~~~~~~~~~~~~~~~~~~
>
> This is expected as coresight_cti_reg_store() is only used in the
> coresight_cti_reg_rw macro, which is only used in a block guarded by
> CONFIG_CORESIGHT_CTI_INTEGRATION_REGS. Mark coresight_cti_reg_store() as
> __maybe_unused to clearly indicate that the function may be unused
> depending on the configuration.
It would also be possible to fix this by wrapping the definitions in
#ifdef CONFIG_CORESIGHT_CTI_INTEGRATION_REGS. That way the maybe_unused
isn't needed and it's a bit cleaner.
Either way, thanks for the fix.
Reviewed-by: James Clark <james.clark@xxxxxxx>
>
> Fixes: fbca79e55429 ("coresight: cti-sysfs: Re-use same functions for similar sysfs register accessors")
> Signed-off-by: Nathan Chancellor <nathan@xxxxxxxxxx>
> ---
> drivers/hwtracing/coresight/coresight-cti-sysfs.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/hwtracing/coresight/coresight-cti-sysfs.c b/drivers/hwtracing/coresight/coresight-cti-sysfs.c
> index 478b8d38b744..6d59c815ecf5 100644
> --- a/drivers/hwtracing/coresight/coresight-cti-sysfs.c
> +++ b/drivers/hwtracing/coresight/coresight-cti-sysfs.c
> @@ -181,9 +181,9 @@ static ssize_t coresight_cti_reg_show(struct device *dev,
> }
>
> /* Write registers with power check only (no enable check). */
> -static ssize_t coresight_cti_reg_store(struct device *dev,
> - struct device_attribute *attr,
> - const char *buf, size_t size)
> +static __maybe_unused ssize_t coresight_cti_reg_store(struct device *dev,
> + struct device_attribute *attr,
> + const char *buf, size_t size)
> {
> struct cti_drvdata *drvdata = dev_get_drvdata(dev->parent);
> struct cs_off_attribute *cti_attr = container_of(attr, struct cs_off_attribute, attr);
>
> base-commit: 0a98181f805058773961c5ab3172ecf1bf1ed0e1