diff mbox series

[-next] hwmon: (amd_energy) Fix build error

Message ID 20200527130241.58468-1-yuehaibing@huawei.com (mailing list archive)
State Rejected
Headers show
Series [-next] hwmon: (amd_energy) Fix build error | expand

Commit Message

Yue Haibing May 27, 2020, 1:02 p.m. UTC
If CONFIG_NEED_MULTIPLE_NODES is n, building fails:

drivers/hwmon/amd_energy.c: In function ‘amd_energy_read’:
./include/asm-generic/topology.h:51:36: error: void value not ignored as it ought to be
     #define cpumask_of_node(node) ((void)node, cpu_online_mask)
./include/linux/cpumask.h:618:72: note: in definition of macro ‘cpumask_first_and’
 #define cpumask_first_and(src1p, src2p) cpumask_next_and(-1, (src1p), (src2p))
                                                                        ^~~~~
drivers/hwmon/amd_energy.c:194:6: note: in expansion of macro ‘cpumask_of_node’
      cpumask_of_node
      ^~~~~~~~~~~~~~~
./include/asm-generic/topology.h:51:46: warning: left-hand operand of comma expression has no effect [-Wunused-value]
     #define cpumask_of_node(node) ((void)node, cpu_online_mask)
                                              ^
./include/linux/cpumask.h:618:72: note: in definition of macro ‘cpumask_first_and’
 #define cpumask_first_and(src1p, src2p) cpumask_next_and(-1, (src1p), (src2p))
                                                                        ^~~~~
drivers/hwmon/amd_energy.c:194:6: note: in expansion of macro ‘cpumask_of_node’
      cpumask_of_node
      ^~~~~~~~~~~~~~~

Fixes: 8abee9566b7e ("hwmon: Add amd_energy driver to report energy counters")
Signed-off-by: YueHaibing <yuehaibing@huawei.com>
---
 drivers/hwmon/amd_energy.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Guenter Roeck May 27, 2020, 1:22 p.m. UTC | #1
On 5/27/20 6:02 AM, YueHaibing wrote:
> If CONFIG_NEED_MULTIPLE_NODES is n, building fails:
> 
> drivers/hwmon/amd_energy.c: In function ‘amd_energy_read’:
> ./include/asm-generic/topology.h:51:36: error: void value not ignored as it ought to be
>      #define cpumask_of_node(node) ((void)node, cpu_online_mask)
> ./include/linux/cpumask.h:618:72: note: in definition of macro ‘cpumask_first_and’
>  #define cpumask_first_and(src1p, src2p) cpumask_next_and(-1, (src1p), (src2p))
>                                                                         ^~~~~
> drivers/hwmon/amd_energy.c:194:6: note: in expansion of macro ‘cpumask_of_node’
>       cpumask_of_node
>       ^~~~~~~~~~~~~~~
> ./include/asm-generic/topology.h:51:46: warning: left-hand operand of comma expression has no effect [-Wunused-value]
>      #define cpumask_of_node(node) ((void)node, cpu_online_mask)
>                                               ^
> ./include/linux/cpumask.h:618:72: note: in definition of macro ‘cpumask_first_and’
>  #define cpumask_first_and(src1p, src2p) cpumask_next_and(-1, (src1p), (src2p))
>                                                                         ^~~~~
> drivers/hwmon/amd_energy.c:194:6: note: in expansion of macro ‘cpumask_of_node’
>       cpumask_of_node
>       ^~~~~~~~~~~~~~~
> 
> Fixes: 8abee9566b7e ("hwmon: Add amd_energy driver to report energy counters")
> Signed-off-by: YueHaibing <yuehaibing@huawei.com>
> ---
>  drivers/hwmon/amd_energy.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/hwmon/amd_energy.c b/drivers/hwmon/amd_energy.c
> index bc8b643a37d5..9d5cd3057866 100644
> --- a/drivers/hwmon/amd_energy.c
> +++ b/drivers/hwmon/amd_energy.c
> @@ -192,7 +192,7 @@ static int amd_energy_read(struct device *dev,
>  	if (channel >= data->nr_cpus) {
>  		cpu = cpumask_first_and(cpu_online_mask,
>  					cpumask_of_node
> -					(channel - data->nr_cpus));
> +					((channel - data->nr_cpus)));

Wrong fix. The correct fix is to fix the macro, not its caller.
A patch to fix the macro has been submitted.

Guenter


>  		amd_add_delta(data, channel, cpu, val, false);
>  	} else {
>  		cpu = channel;
>
Yue Haibing May 28, 2020, 1:10 a.m. UTC | #2
On 2020/5/27 21:22, Guenter Roeck wrote:
> On 5/27/20 6:02 AM, YueHaibing wrote:
>> If CONFIG_NEED_MULTIPLE_NODES is n, building fails:
>>
>> drivers/hwmon/amd_energy.c: In function ‘amd_energy_read’:
>> ./include/asm-generic/topology.h:51:36: error: void value not ignored as it ought to be
>>      #define cpumask_of_node(node) ((void)node, cpu_online_mask)
>> ./include/linux/cpumask.h:618:72: note: in definition of macro ‘cpumask_first_and’
>>  #define cpumask_first_and(src1p, src2p) cpumask_next_and(-1, (src1p), (src2p))
>>                                                                         ^~~~~
>> drivers/hwmon/amd_energy.c:194:6: note: in expansion of macro ‘cpumask_of_node’
>>       cpumask_of_node
>>       ^~~~~~~~~~~~~~~
>> ./include/asm-generic/topology.h:51:46: warning: left-hand operand of comma expression has no effect [-Wunused-value]
>>      #define cpumask_of_node(node) ((void)node, cpu_online_mask)
>>                                               ^
>> ./include/linux/cpumask.h:618:72: note: in definition of macro ‘cpumask_first_and’
>>  #define cpumask_first_and(src1p, src2p) cpumask_next_and(-1, (src1p), (src2p))
>>                                                                         ^~~~~
>> drivers/hwmon/amd_energy.c:194:6: note: in expansion of macro ‘cpumask_of_node’
>>       cpumask_of_node
>>       ^~~~~~~~~~~~~~~
>>
>> Fixes: 8abee9566b7e ("hwmon: Add amd_energy driver to report energy counters")
>> Signed-off-by: YueHaibing <yuehaibing@huawei.com>
>> ---
>>  drivers/hwmon/amd_energy.c | 2 +-
>>  1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/drivers/hwmon/amd_energy.c b/drivers/hwmon/amd_energy.c
>> index bc8b643a37d5..9d5cd3057866 100644
>> --- a/drivers/hwmon/amd_energy.c
>> +++ b/drivers/hwmon/amd_energy.c
>> @@ -192,7 +192,7 @@ static int amd_energy_read(struct device *dev,
>>  	if (channel >= data->nr_cpus) {
>>  		cpu = cpumask_first_and(cpu_online_mask,
>>  					cpumask_of_node
>> -					(channel - data->nr_cpus));
>> +					((channel - data->nr_cpus)));
> 
> Wrong fix. The correct fix is to fix the macro, not its caller.
> A patch to fix the macro has been submitted.
> 
Thanks, missing that.

> Guenter
> 
> 
>>  		amd_add_delta(data, channel, cpu, val, false);
>>  	} else {
>>  		cpu = channel;
>>
> 
> 
>
diff mbox series

Patch

diff --git a/drivers/hwmon/amd_energy.c b/drivers/hwmon/amd_energy.c
index bc8b643a37d5..9d5cd3057866 100644
--- a/drivers/hwmon/amd_energy.c
+++ b/drivers/hwmon/amd_energy.c
@@ -192,7 +192,7 @@  static int amd_energy_read(struct device *dev,
 	if (channel >= data->nr_cpus) {
 		cpu = cpumask_first_and(cpu_online_mask,
 					cpumask_of_node
-					(channel - data->nr_cpus));
+					((channel - data->nr_cpus)));
 		amd_add_delta(data, channel, cpu, val, false);
 	} else {
 		cpu = channel;