Re: [PATCH -next] base: topology: fix unused variable compile error

From: Greg KH
Date: Mon Apr 25 2022 - 01:44:04 EST


On Mon, Apr 25, 2022 at 10:41:49AM +0800, Ren Zhijie wrote:
> compile error:
> drivers/base/topology.c: In function ‘topology_is_visible’:
> drivers/base/topology.c:158:17: error: unused variable ‘dev’ [-Werror=unused-variable]
> struct device *dev = kobj_to_dev(kobj);
> ^~~
> cc1: all warnings being treated as errors
>
> If CONFIG_SMP is N, the macro 'topology_ppin()'expands as follows.
> "topology_ppin(dev->id) -> boot_cpu_data.ppin"
> This cause an unused variable warning for 'dev' which used in the
> topology_is_visible().
>
> To fix build warning unused attribute added to the 'dev' variable.
>
> Reported-by: Hulk Robot <hulkci@xxxxxxxxxx>
> Fixes:aa63a74d4535("topology/sysfs: Hide PPIN on systems that do not support it.")
> Signed-off-by: Ren Zhijie <renzhijie2@xxxxxxxxxx>
> ---
> drivers/base/topology.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/base/topology.c b/drivers/base/topology.c
> index 706dbf8bf249..70962a4bcb1f 100644
> --- a/drivers/base/topology.c
> +++ b/drivers/base/topology.c
> @@ -155,7 +155,8 @@ static struct attribute *default_attrs[] = {
> static umode_t topology_is_visible(struct kobject *kobj,
> struct attribute *attr, int unused)
> {
> - struct device *dev = kobj_to_dev(kobj);
> + struct device *dev __maybe_unused;
>
> + dev = kobj_to_dev(kobj);
>
> if (attr == &dev_attr_ppin.attr && !topology_ppin(dev->id))
> return 0;
> --
> 2.17.1
>

Thanks for this, but I've already queued up the commit here:
https://lore.kernel.org/r/20220422062653.3899972-1-gregkh@xxxxxxxxxxxxxxxxxxx
which is simpler and smaller and it should show up in the next
linux-next release.

greg k-h