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.
Fixes: fbca79e55429 ("coresight: cti-sysfs: Re-use same functions for similar sysfs register accessors")
Signed-off-by: Nathan Chancellor <[email protected]>
---
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
--
2.37.3
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 <[email protected]>
>
> Fixes: fbca79e55429 ("coresight: cti-sysfs: Re-use same functions for similar sysfs register accessors")
> Signed-off-by: Nathan Chancellor <[email protected]>
> ---
> 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
On Fri, Sep 02, 2022 at 02:03:07PM +0100, James Clark wrote:
>
>
> 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.
Right, I do not have a preference either. I only did this way first
because most maintainers do not like ifdef's in .c files. I am happy to
change the solution if you all prefer!
> Either way, thanks for the fix.
>
> Reviewed-by: James Clark <[email protected]>
Thanks for the review!
Cheers,
Nathan
> > Fixes: fbca79e55429 ("coresight: cti-sysfs: Re-use same functions for similar sysfs register accessors")
> > Signed-off-by: Nathan Chancellor <[email protected]>
> > ---
> > 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
On Thu, Sep 01, 2022 at 12:50:55PM -0700, 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.
>
> Fixes: fbca79e55429 ("coresight: cti-sysfs: Re-use same functions for similar sysfs register accessors")
> Signed-off-by: Nathan Chancellor <[email protected]>
> ---
> 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)
> {
Applied.
Thanks,
Mathieu
> 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
> --
> 2.37.3
>