include/linux/compiler.h:69:46: warning: 'fw_entry' is used uninitialized

From: kernel test robot
Date: Thu May 02 2024 - 00:56:23 EST


Hi Shenghao,

FYI, the error/warning still remains.

tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 0106679839f7c69632b3b9833c3268c316c0a9fc
commit: ef3bcde75d06d65f78ba38a30d5a87fb83a5cdae ASoC: tas2781: Add tas2781 driver
date: 11 months ago
config: sh-randconfig-r033-20230707 (https://download.01.org/0day-ci/archive/20240502/202405021200.YHInjV43-lkp@xxxxxxxxx/config)
compiler: sh4-linux-gcc (GCC) 13.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240502/202405021200.YHInjV43-lkp@xxxxxxxxx/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@xxxxxxxxx>
| Closes: https://lore.kernel.org/oe-kbuild-all/202405021200.YHInjV43-lkp@xxxxxxxxx/

All warnings (new ones prefixed by >>):

In file included from include/linux/firmware.h:6,
from sound/soc/codecs/tas2781-fmwlib.c:10:
sound/soc/codecs/tas2781-fmwlib.c: In function 'tas2781_load_calibration':
>> include/linux/compiler.h:69:46: warning: 'fw_entry' is used uninitialized [-Wuninitialized]
68 | (cond) ? \
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
69 | (__if_trace.miss_hit[1]++,1) : \
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
70 | (__if_trace.miss_hit[0]++,0); \
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/compiler.h:57:69: note: in expansion of macro '__trace_if_value'
57 | #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond))
| ^~~~~~~~~~~~~~~~
include/linux/compiler.h:55:28: note: in expansion of macro '__trace_if_var'
55 | #define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) )
| ^~~~~~~~~~~~~~
sound/soc/codecs/tas2781-fmwlib.c:1972:9: note: in expansion of macro 'if'
1972 | if (fw_entry)
| ^~
sound/soc/codecs/tas2781-fmwlib.c:1911:32: note: 'fw_entry' was declared here
1911 | const struct firmware *fw_entry;
| ^~~~~~~~


vim +/fw_entry +69 include/linux/compiler.h

a15fd609ad53a6 Linus Torvalds 2019-03-20 58
a15fd609ad53a6 Linus Torvalds 2019-03-20 59 #define __trace_if_value(cond) ({ \
2bcd521a684cc9 Steven Rostedt 2008-11-21 60 static struct ftrace_branch_data \
e04462fb82f8dd Miguel Ojeda 2018-09-03 61 __aligned(4) \
33def8498fdde1 Joe Perches 2020-10-21 62 __section("_ftrace_branch") \
a15fd609ad53a6 Linus Torvalds 2019-03-20 63 __if_trace = { \
2bcd521a684cc9 Steven Rostedt 2008-11-21 64 .func = __func__, \
2bcd521a684cc9 Steven Rostedt 2008-11-21 65 .file = __FILE__, \
2bcd521a684cc9 Steven Rostedt 2008-11-21 66 .line = __LINE__, \
2bcd521a684cc9 Steven Rostedt 2008-11-21 67 }; \
a15fd609ad53a6 Linus Torvalds 2019-03-20 68 (cond) ? \
a15fd609ad53a6 Linus Torvalds 2019-03-20 @69 (__if_trace.miss_hit[1]++,1) : \
a15fd609ad53a6 Linus Torvalds 2019-03-20 70 (__if_trace.miss_hit[0]++,0); \
a15fd609ad53a6 Linus Torvalds 2019-03-20 71 })
a15fd609ad53a6 Linus Torvalds 2019-03-20 72

:::::: The code at line 69 was first introduced by commit
:::::: a15fd609ad53a631a927c6680e8fb606f42a712b tracing: Simplify "if" macro code

:::::: TO: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
:::::: CC: Steven Rostedt (VMware) <rostedt@xxxxxxxxxxx>

--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki