All of lore.kernel.org
 help / color / mirror / Atom feed
* [linux-next:master 5811/7473] drivers/gpu/drm/sprd/sprd_dsi.c:338:10: warning: Although the value stored to 'video_size_step' is used in the enclosing expression, the value is never actually read from 'video_size_step' [clang-analyzer-deadcode.DeadStores]
@ 2021-12-17  3:53 kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2021-12-17  3:53 UTC (permalink / raw)
  To: kbuild

[-- Attachment #1: Type: text/plain, Size: 16788 bytes --]

CC: llvm(a)lists.linux.dev
CC: kbuild-all(a)lists.01.org
CC: Linux Memory Management List <linux-mm@kvack.org>
TO: Kevin Tang <kevin3.tang@gmail.com>
CC: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
head:   93bf6eee76c0e716f6b32de690b1c52991547bb4
commit: 1c66496b1391699040d0ddda21fe1979865f6eba [5811/7473] drm/sprd: add Unisoc's drm mipi dsi&dphy driver
:::::: branch date: 30 hours ago
:::::: commit date: 7 days ago
config: riscv-randconfig-c006-20211214 (https://download.01.org/0day-ci/archive/20211217/202112171102.ATG0MUEe-lkp(a)intel.com/config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project b6a2ddb6c8ac29412b1361810972e15221fa021c)
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 riscv cross compiling tool for clang build
        # apt-get install binutils-riscv64-linux-gnu
        # https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=1c66496b1391699040d0ddda21fe1979865f6eba
        git remote add linux-next https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
        git fetch --no-tags linux-next master
        git checkout 1c66496b1391699040d0ddda21fe1979865f6eba
        # save the config file to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=riscv clang-analyzer 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>


clang-analyzer warnings: (new ones prefixed by >>)
           ^
   net/ipv4/fib_semantics.c:1456:10: note: Returning from 'fib_nh_init'
                           err = fib_nh_init(net, fi->fib_nh, cfg, 1, extack);
                                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   net/ipv4/fib_semantics.c:1459:6: note: 'err' is equal to 0
           if (err != 0)
               ^~~
   net/ipv4/fib_semantics.c:1459:2: note: Taking false branch
           if (err != 0)
           ^
   net/ipv4/fib_semantics.c:1462:6: note: Assuming field 'error' is 0
           if (fib_props[cfg->fc_type].error) {
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   net/ipv4/fib_semantics.c:1462:2: note: Taking false branch
           if (fib_props[cfg->fc_type].error) {
           ^
   net/ipv4/fib_semantics.c:1470:3: note: Control jumps to 'case RTN_MULTICAST:'  at line 1475
                   switch (cfg->fc_type) {
                   ^
   net/ipv4/fib_semantics.c:1476:4: note:  Execution continues on line 1483
                           break;
                           ^
   net/ipv4/fib_semantics.c:1483:6: note: Assuming field 'fc_scope' is <= RT_SCOPE_HOST
           if (cfg->fc_scope > RT_SCOPE_HOST) {
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   net/ipv4/fib_semantics.c:1483:2: note: Taking false branch
           if (cfg->fc_scope > RT_SCOPE_HOST) {
           ^
   net/ipv4/fib_semantics.c:1488:6: note: Assuming field 'nh' is non-null
           if (fi->nh) {
               ^~~~~~
   net/ipv4/fib_semantics.c:1488:2: note: Taking true branch
           if (fi->nh) {
           ^
   net/ipv4/fib_semantics.c:1490:7: note: Assuming 'err' is 0
                   if (err)
                       ^~~
   net/ipv4/fib_semantics.c:1490:3: note: Taking false branch
                   if (err)
                   ^
   net/ipv4/fib_semantics.c:1527:6: note: Assuming field 'fib_prefsrc' is 0
           if (fi->fib_prefsrc && !fib_valid_prefsrc(cfg, fi->fib_prefsrc)) {
               ^~~~~~~~~~~~~~~
   net/ipv4/fib_semantics.c:1527:22: note: Left side of '&&' is false
           if (fi->fib_prefsrc && !fib_valid_prefsrc(cfg, fi->fib_prefsrc)) {
                               ^
   net/ipv4/fib_semantics.c:1532:11: note: Field 'nh' is non-null
           if (!fi->nh) {
                    ^
   net/ipv4/fib_semantics.c:1532:2: note: Taking false branch
           if (!fi->nh) {
           ^
   net/ipv4/fib_semantics.c:1545:6: note: Assuming 'ofi' is null
           if (ofi) {
               ^~~
   net/ipv4/fib_semantics.c:1545:2: note: Taking false branch
           if (ofi) {
           ^
   net/ipv4/fib_semantics.c:1556:25: note: Calling 'fib_info_hashfn'
                          &fib_info_hash[fib_info_hashfn(fi)]);
                                         ^~~~~~~~~~~~~~~~~~~
   net/ipv4/fib_semantics.c:353:6: note: Assuming field 'nh' is non-null
           if (fi->nh) {
               ^~~~~~
   net/ipv4/fib_semantics.c:353:2: note: Taking true branch
           if (fi->nh) {
           ^
   net/ipv4/fib_semantics.c:361:2: note: Returning without writing to 'fi->nh', which participates in a condition later
           return fib_info_hashfn_result(val);
           ^
   net/ipv4/fib_semantics.c:1556:25: note: Returning from 'fib_info_hashfn'
                          &fib_info_hash[fib_info_hashfn(fi)]);
                                         ^~~~~~~~~~~~~~~~~~~
   net/ipv4/fib_semantics.c:1557:6: note: Assuming field 'fib_prefsrc' is 0
           if (fi->fib_prefsrc) {
               ^~~~~~~~~~~~~~~
   net/ipv4/fib_semantics.c:1557:2: note: Taking false branch
           if (fi->fib_prefsrc) {
           ^
   net/ipv4/fib_semantics.c:1563:6: note: Assuming field 'nh' is non-null
           if (fi->nh) {
               ^~~~~~
   net/ipv4/fib_semantics.c:1563:2: note: Taking true branch
           if (fi->nh) {
           ^
   net/ipv4/fib_semantics.c:1564:26: note: Passing null pointer value via 2nd parameter 'head'
                   list_add(&fi->nh_list, &nh->fi_list);
                                          ^~~~~~~~~~~~
   net/ipv4/fib_semantics.c:1564:3: note: Calling 'list_add'
                   list_add(&fi->nh_list, &nh->fi_list);
                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/list.h:88:24: note: Access to field 'next' results in a dereference of a null pointer (loaded from variable 'head')
           __list_add(new, head, head->next);
                                 ^~~~
   Suppressed 3 warnings (3 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   5 warnings generated.
   Suppressed 5 warnings (5 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   8 warnings generated.
>> drivers/gpu/drm/sprd/sprd_dsi.c:338:10: warning: Although the value stored to 'video_size_step' is used in the enclosing expression, the value is never actually read from 'video_size_step' [clang-analyzer-deadcode.DeadStores]
                   return video_size_step = 1;
                          ^                 ~
   drivers/gpu/drm/sprd/sprd_dsi.c:338:10: note: Although the value stored to 'video_size_step' is used in the enclosing expression, the value is never actually read from 'video_size_step'
                   return video_size_step = 1;
                          ^                 ~
   drivers/gpu/drm/sprd/sprd_dsi.c:345:10: warning: Although the value stored to 'video_size_step' is used in the enclosing expression, the value is never actually read from 'video_size_step' [clang-analyzer-deadcode.DeadStores]
                   return video_size_step = 2;
                          ^                 ~
   drivers/gpu/drm/sprd/sprd_dsi.c:345:10: note: Although the value stored to 'video_size_step' is used in the enclosing expression, the value is never actually read from 'video_size_step'
                   return video_size_step = 2;
                          ^                 ~
>> drivers/gpu/drm/sprd/sprd_dsi.c:641:15: warning: Although the value stored to 'j' is used in the enclosing expression, the value is never actually read from 'j' [clang-analyzer-deadcode.DeadStores]
                   for (i = 0, j = 0; i < len; i += j) {
                               ^   ~
   drivers/gpu/drm/sprd/sprd_dsi.c:641:15: note: Although the value stored to 'j' is used in the enclosing expression, the value is never actually read from 'j'
                   for (i = 0, j = 0; i < len; i += j) {
                               ^   ~
   Suppressed 5 warnings (5 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   5 warnings generated.
   Suppressed 5 warnings (5 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   3 warnings generated.
   Suppressed 3 warnings (3 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   3 warnings generated.
   Suppressed 3 warnings (3 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   3 warnings generated.
   Suppressed 3 warnings (3 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   3 warnings generated.
   Suppressed 3 warnings (3 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   3 warnings generated.
   Suppressed 3 warnings (3 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   3 warnings generated.
   Suppressed 3 warnings (3 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   3 warnings generated.
   Suppressed 3 warnings (3 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   3 warnings generated.
   Suppressed 3 warnings (3 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   3 warnings generated.
   Suppressed 3 warnings (3 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   3 warnings generated.
   Suppressed 3 warnings (3 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   4 warnings generated.
   drivers/extcon/extcon-rt8973a.c:25:8: warning: Excessive padding in 'struct muic_irq' (8 padding bytes, where 0 is optimal). 
   Optimal fields order: 
   name, 
   irq, 
   virq, 
   consider reordering the fields or adding explicit padding members [clang-analyzer-optin.performance.Padding]
   struct muic_irq {
   ~~~~~~~^~~~~~~~~~
   drivers/extcon/extcon-rt8973a.c:25:8: note: Excessive padding in 'struct muic_irq' (8 padding bytes, where 0 is optimal). Optimal fields order: name, irq, virq, consider reordering the fields or adding explicit padding members
   struct muic_irq {
   ~~~~~~~^~~~~~~~~~
   Suppressed 3 warnings (3 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   4 warnings generated.
   drivers/extcon/extcon-sm5502.c:24:8: warning: Excessive padding in 'struct muic_irq' (8 padding bytes, where 0 is optimal). 
   Optimal fields order: 
   name, 
   irq, 
   virq, 
   consider reordering the fields or adding explicit padding members [clang-analyzer-optin.performance.Padding]
   struct muic_irq {
   ~~~~~~~^~~~~~~~~~
   drivers/extcon/extcon-sm5502.c:24:8: note: Excessive padding in 'struct muic_irq' (8 padding bytes, where 0 is optimal). Optimal fields order: name, irq, virq, consider reordering the fields or adding explicit padding members
   struct muic_irq {
   ~~~~~~~^~~~~~~~~~
   Suppressed 3 warnings (3 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   3 warnings generated.
   Suppressed 3 warnings (3 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   3 warnings generated.
   Suppressed 3 warnings (3 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   4 warnings generated.
   drivers/iio/accel/adxl313_core.c:46:8: warning: Excessive padding in 'struct adxl313_data' (110 padding bytes, where 46 is optimal). 
   Optimal fields order: 
   transf_buf, 
   regmap, 
   lock, 
   consider reordering the fields or adding explicit padding members [clang-analyzer-optin.performance.Padding]
   struct adxl313_data {
   ~~~~~~~^~~~~~~~~~~~~~
   drivers/iio/accel/adxl313_core.c:46:8: note: Excessive padding in 'struct adxl313_data' (110 padding bytes, where 46 is optimal). Optimal fields order: transf_buf, regmap, lock, consider reordering the fields or adding explicit padding members
   struct adxl313_data {
   ~~~~~~~^~~~~~~~~~~~~~
   Suppressed 3 warnings (3 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   3 warnings generated.
   Suppressed 3 warnings (3 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   4 warnings generated.
   Suppressed 4 warnings (4 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   3 warnings generated.
   Suppressed 3 warnings (3 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   5 warnings generated.
   Suppressed 5 warnings (5 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.

vim +338 drivers/gpu/drm/sprd/sprd_dsi.c

1c66496b139169 Kevin Tang 2021-12-07  325  
1c66496b139169 Kevin Tang 2021-12-07  326  static u8 calc_video_size_step(int coding)
1c66496b139169 Kevin Tang 2021-12-07  327  {
1c66496b139169 Kevin Tang 2021-12-07  328  	u8 video_size_step;
1c66496b139169 Kevin Tang 2021-12-07  329  
1c66496b139169 Kevin Tang 2021-12-07  330  	switch (coding) {
1c66496b139169 Kevin Tang 2021-12-07  331  	case COLOR_CODE_16BIT_CONFIG1:
1c66496b139169 Kevin Tang 2021-12-07  332  	case COLOR_CODE_16BIT_CONFIG2:
1c66496b139169 Kevin Tang 2021-12-07  333  	case COLOR_CODE_16BIT_CONFIG3:
1c66496b139169 Kevin Tang 2021-12-07  334  	case COLOR_CODE_18BIT_CONFIG1:
1c66496b139169 Kevin Tang 2021-12-07  335  	case COLOR_CODE_18BIT_CONFIG2:
1c66496b139169 Kevin Tang 2021-12-07  336  	case COLOR_CODE_24BIT:
1c66496b139169 Kevin Tang 2021-12-07  337  	case COLOR_CODE_COMPRESSTION:
1c66496b139169 Kevin Tang 2021-12-07 @338  		return video_size_step = 1;
1c66496b139169 Kevin Tang 2021-12-07  339  	case COLOR_CODE_20BIT_YCC422_LOOSELY:
1c66496b139169 Kevin Tang 2021-12-07  340  	case COLOR_CODE_24BIT_YCC422:
1c66496b139169 Kevin Tang 2021-12-07  341  	case COLOR_CODE_16BIT_YCC422:
1c66496b139169 Kevin Tang 2021-12-07  342  	case COLOR_CODE_30BIT:
1c66496b139169 Kevin Tang 2021-12-07  343  	case COLOR_CODE_36BIT:
1c66496b139169 Kevin Tang 2021-12-07  344  	case COLOR_CODE_12BIT_YCC420:
1c66496b139169 Kevin Tang 2021-12-07  345  		return video_size_step = 2;
1c66496b139169 Kevin Tang 2021-12-07  346  	default:
1c66496b139169 Kevin Tang 2021-12-07  347  		DRM_ERROR("invalid color coding");
1c66496b139169 Kevin Tang 2021-12-07  348  		return 0;
1c66496b139169 Kevin Tang 2021-12-07  349  	}
1c66496b139169 Kevin Tang 2021-12-07  350  }
1c66496b139169 Kevin Tang 2021-12-07  351  

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2021-12-17  3:53 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-12-17  3:53 [linux-next:master 5811/7473] drivers/gpu/drm/sprd/sprd_dsi.c:338:10: warning: Although the value stored to 'video_size_step' is used in the enclosing expression, the value is never actually read from 'video_size_step' [clang-analyzer-deadcode.DeadStores] kernel test robot

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.