diff mbox series

iio: bmi323: mark bmi323_ext_reg_savestate as maybe unused

Message ID 20241012083701.2189663-1-suhui@nfschina.com (mailing list archive)
State New
Headers show
Series iio: bmi323: mark bmi323_ext_reg_savestate as maybe unused | expand

Commit Message

Su Hui Oct. 12, 2024, 8:37 a.m. UTC
When running 'make CC=clang drivers/iio/imu/bmi323/bmi323_core.o', there
is a clang warning as follows:

drivers/iio/imu/bmi323/bmi323_core.c:133:27: error:
variable 'bmi323_ext_reg_savestate' is not needed and will not be emitted
[-Werror,-Wunneeded-internal-declaration]
  133 | static const unsigned int bmi323_ext_reg_savestate[] = {
      |                           ^~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.

Mark bmi323_ext_reg_savestate as __maybe_unused to silent this warning.

Fixes: 16531118ba63 ("iio: bmi323: peripheral in lowest power state on suspend")
Signed-off-by: Su Hui <suhui@nfschina.com>
---
 drivers/iio/imu/bmi323/bmi323_core.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Julia Lawall Oct. 12, 2024, 9:11 a.m. UTC | #1
On Sat, 12 Oct 2024, Su Hui wrote:

> When running 'make CC=clang drivers/iio/imu/bmi323/bmi323_core.o', there
> is a clang warning as follows:
>
> drivers/iio/imu/bmi323/bmi323_core.c:133:27: error:
> variable 'bmi323_ext_reg_savestate' is not needed and will not be emitted
> [-Werror,-Wunneeded-internal-declaration]
>   133 | static const unsigned int bmi323_ext_reg_savestate[] = {
>       |                           ^~~~~~~~~~~~~~~~~~~~~~~~
> 1 error generated.
>
> Mark bmi323_ext_reg_savestate as __maybe_unused to silent this warning.

Why might it be unused?

julia

>
> Fixes: 16531118ba63 ("iio: bmi323: peripheral in lowest power state on suspend")
> Signed-off-by: Su Hui <suhui@nfschina.com>
> ---
>  drivers/iio/imu/bmi323/bmi323_core.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/iio/imu/bmi323/bmi323_core.c b/drivers/iio/imu/bmi323/bmi323_core.c
> index beda8d2de53f..1167984809c5 100644
> --- a/drivers/iio/imu/bmi323/bmi323_core.c
> +++ b/drivers/iio/imu/bmi323/bmi323_core.c
> @@ -130,7 +130,7 @@ static const unsigned int bmi323_reg_savestate[] = {
>  	BMI323_FIFO_CONF_REG
>  };
>
> -static const unsigned int bmi323_ext_reg_savestate[] = {
> +static const unsigned int bmi323_ext_reg_savestate[] __maybe_unused = {
>  	BMI323_GEN_SET1_REG,
>  	BMI323_TAP1_REG,
>  	BMI323_TAP2_REG,
> --
> 2.30.2
>
>
>
Javier Carrasco Oct. 12, 2024, 10:08 a.m. UTC | #2
On 12/10/2024 11:11, Julia Lawall wrote:
> 
> 
> On Sat, 12 Oct 2024, Su Hui wrote:
> 
>> When running 'make CC=clang drivers/iio/imu/bmi323/bmi323_core.o', there
>> is a clang warning as follows:
>>
>> drivers/iio/imu/bmi323/bmi323_core.c:133:27: error:
>> variable 'bmi323_ext_reg_savestate' is not needed and will not be emitted
>> [-Werror,-Wunneeded-internal-declaration]
>>   133 | static const unsigned int bmi323_ext_reg_savestate[] = {
>>       |                           ^~~~~~~~~~~~~~~~~~~~~~~~
>> 1 error generated.
>>
>> Mark bmi323_ext_reg_savestate as __maybe_unused to silent this warning.
> 
> Why might it be unused?
> 
> julia
> 
>>
>> Fixes: 16531118ba63 ("iio: bmi323: peripheral in lowest power state on suspend")
>> Signed-off-by: Su Hui <suhui@nfschina.com>
>> ---
>>  drivers/iio/imu/bmi323/bmi323_core.c | 2 +-
>>  1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/drivers/iio/imu/bmi323/bmi323_core.c b/drivers/iio/imu/bmi323/bmi323_core.c
>> index beda8d2de53f..1167984809c5 100644
>> --- a/drivers/iio/imu/bmi323/bmi323_core.c
>> +++ b/drivers/iio/imu/bmi323/bmi323_core.c
>> @@ -130,7 +130,7 @@ static const unsigned int bmi323_reg_savestate[] = {
>>  	BMI323_FIFO_CONF_REG
>>  };
>>
>> -static const unsigned int bmi323_ext_reg_savestate[] = {
>> +static const unsigned int bmi323_ext_reg_savestate[] __maybe_unused = {
>>  	BMI323_GEN_SET1_REG,
>>  	BMI323_TAP1_REG,
>>  	BMI323_TAP2_REG,
>> --
>> 2.30.2
>>
>>
>>
> 

This issue has already been found and discussed here:

https://lore.kernel.org/linux-iio/AS8PR02MB10217F8B5827B69E6438488679C762@AS8PR02MB10217.eurprd02.prod.outlook.com/

where I got lectured by Nathan Chancellor about such warnings.

The fix was not marking the array as unused, because it should have been
used. The proper fix can be found in iio/fixes-togreg.

Best regards,
Javier Carrasco
Su Hui Oct. 12, 2024, 10:21 a.m. UTC | #3
On 2024/10/12 17:11, Julia Lawall wrote:
> On Sat, 12 Oct 2024, Su Hui wrote:
>
>> When running 'make CC=clang drivers/iio/imu/bmi323/bmi323_core.o', there
>> is a clang warning as follows:
>>
>> drivers/iio/imu/bmi323/bmi323_core.c:133:27: error:
>> variable 'bmi323_ext_reg_savestate' is not needed and will not be emitted
>> [-Werror,-Wunneeded-internal-declaration]
>>    133 | static const unsigned int bmi323_ext_reg_savestate[] = {
>>        |                           ^~~~~~~~~~~~~~~~~~~~~~~~
>> 1 error generated.
>>
>> Mark bmi323_ext_reg_savestate as __maybe_unused to silent this warning.
> Why might it be unused?

We only use the size of 'bmi323_ext_reg_savestate[]' not it's value, as 
shown below :

$ git grep  bmi323_ext_reg_savest drivers/iio/imu/
drivers/iio/imu/bmi323/bmi323_core.c:static const unsigned int 
bmi323_ext_reg_savestate[] = {
drivers/iio/imu/bmi323/bmi323_core.c:   unsigned int 
ext_reg_settings[ARRAY_SIZE(bmi323_ext_reg_savestate)];
drivers/iio/imu/bmi323/bmi323_core.c:   for (unsigned int i = 0; i < 
ARRAY_SIZE(bmi323_ext_reg_savestate); i++) {
drivers/iio/imu/bmi323/bmi323_core.c:   for (unsigned int i = 0; i < 
ARRAY_SIZE(bmi323_ext_reg_savestate); i++) {

And I find some solutions use __maybe_unused to silent this warning. 
Like this one:
3034983db355 ("drm/amdgpu: Mark mmhub_v1_8_mmea_err_status_reg as 
__maybe_unused")

Mark this variable to __maybe_unused is  to eliminate clang's warning.
Perhaps it is also possible to mark it as _used:).

Su Hui
Su Hui Oct. 12, 2024, 10:26 a.m. UTC | #4
> This issue has already been found and discussed here:
>
> https://lore.kernel.org/linux-iio/AS8PR02MB10217F8B5827B69E6438488679C762@AS8PR02MB10217.eurprd02.prod.outlook.com/
>
> where I got lectured by Nathan Chancellor about such warnings.
>
> The fix was not marking the array as unused, because it should have been
> used. The proper fix can be found in iio/fixes-togreg.

Oh , I just saw this email. Thanks!

Su Hui
Jonathan Cameron Oct. 12, 2024, 10:51 a.m. UTC | #5
On Sat, 12 Oct 2024 12:08:39 +0200
Javier Carrasco <javier.carrasco.cruz@gmail.com> wrote:

> On 12/10/2024 11:11, Julia Lawall wrote:
> > 
> > 
> > On Sat, 12 Oct 2024, Su Hui wrote:
> >   
> >> When running 'make CC=clang drivers/iio/imu/bmi323/bmi323_core.o', there
> >> is a clang warning as follows:
> >>
> >> drivers/iio/imu/bmi323/bmi323_core.c:133:27: error:
> >> variable 'bmi323_ext_reg_savestate' is not needed and will not be emitted
> >> [-Werror,-Wunneeded-internal-declaration]
> >>   133 | static const unsigned int bmi323_ext_reg_savestate[] = {
> >>       |                           ^~~~~~~~~~~~~~~~~~~~~~~~
> >> 1 error generated.
> >>
> >> Mark bmi323_ext_reg_savestate as __maybe_unused to silent this warning.  
> > 
> > Why might it be unused?
> > 
> > julia
> >   
> >>
> >> Fixes: 16531118ba63 ("iio: bmi323: peripheral in lowest power state on suspend")
> >> Signed-off-by: Su Hui <suhui@nfschina.com>
> >> ---
> >>  drivers/iio/imu/bmi323/bmi323_core.c | 2 +-
> >>  1 file changed, 1 insertion(+), 1 deletion(-)
> >>
> >> diff --git a/drivers/iio/imu/bmi323/bmi323_core.c b/drivers/iio/imu/bmi323/bmi323_core.c
> >> index beda8d2de53f..1167984809c5 100644
> >> --- a/drivers/iio/imu/bmi323/bmi323_core.c
> >> +++ b/drivers/iio/imu/bmi323/bmi323_core.c
> >> @@ -130,7 +130,7 @@ static const unsigned int bmi323_reg_savestate[] = {
> >>  	BMI323_FIFO_CONF_REG
> >>  };
> >>
> >> -static const unsigned int bmi323_ext_reg_savestate[] = {
> >> +static const unsigned int bmi323_ext_reg_savestate[] __maybe_unused = {
> >>  	BMI323_GEN_SET1_REG,
> >>  	BMI323_TAP1_REG,
> >>  	BMI323_TAP2_REG,
> >> --
> >> 2.30.2
> >>
> >>
> >>  
> >   
> 
> This issue has already been found and discussed here:
> 
> https://lore.kernel.org/linux-iio/AS8PR02MB10217F8B5827B69E6438488679C762@AS8PR02MB10217.eurprd02.prod.outlook.com/
> 
> where I got lectured by Nathan Chancellor about such warnings.
> 
> The fix was not marking the array as unused, because it should have been
> used. The proper fix can be found in iio/fixes-togreg.
> 
> Best regards,
> Javier Carrasco

Busy week so I haven't gotten a pull request out yet. Should send one with this
fix later this weekend.

Jonathan
diff mbox series

Patch

diff --git a/drivers/iio/imu/bmi323/bmi323_core.c b/drivers/iio/imu/bmi323/bmi323_core.c
index beda8d2de53f..1167984809c5 100644
--- a/drivers/iio/imu/bmi323/bmi323_core.c
+++ b/drivers/iio/imu/bmi323/bmi323_core.c
@@ -130,7 +130,7 @@  static const unsigned int bmi323_reg_savestate[] = {
 	BMI323_FIFO_CONF_REG
 };
 
-static const unsigned int bmi323_ext_reg_savestate[] = {
+static const unsigned int bmi323_ext_reg_savestate[] __maybe_unused = {
 	BMI323_GEN_SET1_REG,
 	BMI323_TAP1_REG,
 	BMI323_TAP2_REG,