2020-09-28 07:30:40

by Peter Ujfalusi

[permalink] [raw]
Subject: Re: sound/soc/ti/j721e-evm.c:528:34: warning: unused variable 'j721e_audio_of_match'



On 27/09/2020 10.27, kernel test robot wrote:
> tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
> head: a1bffa48745afbb54cb4f873bba783b2ae8be042
> commit: 6748d05590594837e42dfa975879fb275099f0b2 ASoC: ti: Add custom machine driver for j721e EVM (CPB and IVI)
> date: 3 months ago
> config: x86_64-randconfig-r033-20200927 (attached as .config)
> compiler: clang version 12.0.0 (https://github.com/llvm/llvm-project a83eb048cb9a75da7a07a9d5318bbdbf54885c87)
> reproduce (this is a W=1 build):
> wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
> chmod +x ~/bin/make.cross
> # install x86_64 cross compiling tool for clang build
> # apt-get install binutils-x86-64-linux-gnu
> # https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=6748d05590594837e42dfa975879fb275099f0b2
> git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
> git fetch --no-tags linus master
> git checkout 6748d05590594837e42dfa975879fb275099f0b2
> # save the attached .config to linux build tree
> COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=x86_64
>
> If you fix the issue, kindly add following tag as appropriate
> Reported-by: kernel test robot <[email protected]>
>
> All warnings (new ones prefixed by >>):
>
>>> sound/soc/ti/j721e-evm.c:528:34: warning: unused variable 'j721e_audio_of_match' [-Wunused-const-variable]
> static const struct of_device_id j721e_audio_of_match[] = {
> ^
> 1 warning generated.

Right, in the attached .config:
# CONFIG_OF is not set

There must be a clean way to handle this without extensive ifedfery...

> vim +/j721e_audio_of_match +528 sound/soc/ti/j721e-evm.c
>
> 527
> > 528 static const struct of_device_id j721e_audio_of_match[] = {
> 529 {
> 530 .compatible = "ti,j721e-cpb-audio",
> 531 .data = &j721e_cpb_data,
> 532 }, {
> 533 .compatible = "ti,j721e-cpb-ivi-audio",
> 534 .data = &j721e_cpb_ivi_data,
> 535 },
> 536 { },
> 537 };
> 538 MODULE_DEVICE_TABLE(of, j721e_audio_of_match);
> 539
>
> ---
> 0-DAY CI Kernel Test Service, Intel Corporation
> https://lists.01.org/hyperkitty/list/[email protected]
>

- P?ter

Texas Instruments Finland Oy, Porkkalankatu 22, 00180 Helsinki.
Y-tunnus/Business ID: 0615521-4. Kotipaikka/Domicile: Helsinki


2020-09-28 17:54:49

by Nick Desaulniers

[permalink] [raw]
Subject: Re: sound/soc/ti/j721e-evm.c:528:34: warning: unused variable 'j721e_audio_of_match'

On Mon, Sep 28, 2020 at 12:27 AM 'Peter Ujfalusi' via Clang Built
Linux <[email protected]> wrote:
>
>
>
> On 27/09/2020 10.27, kernel test robot wrote:
> > tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
> > head: a1bffa48745afbb54cb4f873bba783b2ae8be042
> > commit: 6748d05590594837e42dfa975879fb275099f0b2 ASoC: ti: Add custom machine driver for j721e EVM (CPB and IVI)
> > date: 3 months ago
> > config: x86_64-randconfig-r033-20200927 (attached as .config)
> > compiler: clang version 12.0.0 (https://github.com/llvm/llvm-project a83eb048cb9a75da7a07a9d5318bbdbf54885c87)
> > reproduce (this is a W=1 build):
> > wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
> > chmod +x ~/bin/make.cross
> > # install x86_64 cross compiling tool for clang build
> > # apt-get install binutils-x86-64-linux-gnu
> > # https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=6748d05590594837e42dfa975879fb275099f0b2
> > git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
> > git fetch --no-tags linus master
> > git checkout 6748d05590594837e42dfa975879fb275099f0b2
> > # save the attached .config to linux build tree
> > COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=x86_64
> >
> > If you fix the issue, kindly add following tag as appropriate
> > Reported-by: kernel test robot <[email protected]>
> >
> > All warnings (new ones prefixed by >>):
> >
> >>> sound/soc/ti/j721e-evm.c:528:34: warning: unused variable 'j721e_audio_of_match' [-Wunused-const-variable]
> > static const struct of_device_id j721e_audio_of_match[] = {
> > ^
> > 1 warning generated.
>
> Right, in the attached .config:
> # CONFIG_OF is not set
>
> There must be a clean way to handle this without extensive ifedfery...

Pretty sure I just saw a patch go by wrapping another device table
definition in #ifdef CONFIG_OF, so it's not unusual.

>
> > vim +/j721e_audio_of_match +528 sound/soc/ti/j721e-evm.c
> >
> > 527
> > > 528 static const struct of_device_id j721e_audio_of_match[] = {
> > 529 {
> > 530 .compatible = "ti,j721e-cpb-audio",
> > 531 .data = &j721e_cpb_data,
> > 532 }, {
> > 533 .compatible = "ti,j721e-cpb-ivi-audio",
> > 534 .data = &j721e_cpb_ivi_data,
> > 535 },
> > 536 { },
> > 537 };
> > 538 MODULE_DEVICE_TABLE(of, j721e_audio_of_match);
> > 539
> >
> > ---
> > 0-DAY CI Kernel Test Service, Intel Corporation
> > https://lists.01.org/hyperkitty/list/[email protected]
> >
>
> - Péter
>
> Texas Instruments Finland Oy, Porkkalankatu 22, 00180 Helsinki.
> Y-tunnus/Business ID: 0615521-4. Kotipaikka/Domicile: Helsinki
>
> --
> You received this message because you are subscribed to the Google Groups "Clang Built Linux" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].
> To view this discussion on the web visit https://groups.google.com/d/msgid/clang-built-linux/76cae106-b643-57a9-e82e-48e46ebf1b70%40ti.com.



--
Thanks,
~Nick Desaulniers

2020-09-28 18:06:28

by Mark Brown

[permalink] [raw]
Subject: Re: sound/soc/ti/j721e-evm.c:528:34: warning: unused variable 'j721e_audio_of_match'

On Mon, Sep 28, 2020 at 10:52:54AM -0700, Nick Desaulniers wrote:
> On Mon, Sep 28, 2020 at 12:27 AM 'Peter Ujfalusi' via Clang Built

> > Right, in the attached .config:
> > # CONFIG_OF is not set

> > There must be a clean way to handle this without extensive ifedfery...

> Pretty sure I just saw a patch go by wrapping another device table
> definition in #ifdef CONFIG_OF, so it's not unusual.

It's the standard solution, it's just not as clean as would be ideal :/


Attachments:
(No filename) (484.00 B)
signature.asc (499.00 B)
Download all attachments

2020-09-29 06:01:56

by Peter Ujfalusi

[permalink] [raw]
Subject: Re: sound/soc/ti/j721e-evm.c:528:34: warning: unused variable 'j721e_audio_of_match'



On 28/09/2020 21.04, Mark Brown wrote:
> On Mon, Sep 28, 2020 at 10:52:54AM -0700, Nick Desaulniers wrote:
>> On Mon, Sep 28, 2020 at 12:27 AM 'Peter Ujfalusi' via Clang Built
>
>>> Right, in the attached .config:
>>> # CONFIG_OF is not set
>
>>> There must be a clean way to handle this without extensive ifedfery...
>
>> Pretty sure I just saw a patch go by wrapping another device table
>> definition in #ifdef CONFIG_OF, so it's not unusual.
>
> It's the standard solution, it's just not as clean as would be ideal :/

The ifdef would be preferred if the driver could work in non DT boot (to
save few bytes) but since it is not the case here:

https://lore.kernel.org/alsa-devel/[email protected]/

Not much point to size optimize for randconfig builds ;)

- P?ter

Texas Instruments Finland Oy, Porkkalankatu 22, 00180 Helsinki.
Y-tunnus/Business ID: 0615521-4. Kotipaikka/Domicile: Helsinki

2020-09-29 12:40:33

by Mark Brown

[permalink] [raw]
Subject: Re: sound/soc/ti/j721e-evm.c:528:34: warning: unused variable 'j721e_audio_of_match'

On Tue, Sep 29, 2020 at 09:00:02AM +0300, Peter Ujfalusi wrote:

> The ifdef would be preferred if the driver could work in non DT boot (to
> save few bytes) but since it is not the case here:

What I'd *really* like would be something in the of_match_ptr() that
flagged that there's a reference to the table for the purposes of the
warning but still lets the table be eliminated by the linker.


Attachments:
(No filename) (403.00 B)
signature.asc (499.00 B)
Download all attachments