* [hch-block:freeze-5.18 5/12] drivers/scsi/sr.c:486:23: warning: Although the value stored to 'cd' is used in the enclosing expression, the value is never actually read from 'cd' [clang-analyzer-deadcode.DeadStores]
@ 2022-02-22 14:40 kernel test robot
0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2022-02-22 14:40 UTC (permalink / raw)
To: kbuild
[-- Attachment #1: Type: text/plain, Size: 15819 bytes --]
CC: kbuild-all(a)lists.01.org
TO: Christoph Hellwig <hch@lst.de>
tree: git://git.infradead.org/users/hch/block.git freeze-5.18
head: 160aadf96a0cc9afd4b49f9a097e23494f7f33b6
commit: 511f348c57ee61fe305de34c2860a6663175c3cc [5/12] sr: implement ->free_disk
:::::: branch date: 4 days ago
:::::: commit date: 4 days ago
config: i386-randconfig-c001 (https://download.01.org/0day-ci/archive/20220222/202202222219.UaX3FsHz-lkp(a)intel.com/config)
compiler: clang version 15.0.0 (https://github.com/llvm/llvm-project d271fc04d5b97b12e6b797c6067d3c96a8d7470e)
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
git remote add hch-block git://git.infradead.org/users/hch/block.git
git fetch --no-tags hch-block freeze-5.18
git checkout 511f348c57ee61fe305de34c2860a6663175c3cc
# save the config file to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=i386 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 >>)
drivers/base/cacheinfo.c:241:3: note: Taking false branch
if (!cpumask_empty(&this_leaf->shared_cpu_map))
^
include/linux/compiler.h:56:23: note: expanded from macro 'if'
#define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) )
^
drivers/base/cacheinfo.c:245:3: note: Loop condition is true. Entering loop body
for_each_online_cpu(i) {
^
include/linux/cpumask.h:815:36: note: expanded from macro 'for_each_online_cpu'
#define for_each_online_cpu(cpu) for_each_cpu((cpu), cpu_online_mask)
^
include/linux/cpumask.h:190:2: note: expanded from macro 'for_each_cpu'
for ((cpu) = 0; (cpu) < 1; (cpu)++, (void)mask)
^
drivers/base/cacheinfo.c:248:8: note: 'i' is not equal to 'cpu'
if (i == cpu || !sib_cpu_ci->info_list)
^
include/linux/compiler.h:56:47: note: expanded from macro 'if'
#define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) )
^~~~
include/linux/compiler.h:58:52: note: expanded from macro '__trace_if_var'
#define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond))
^~~~
drivers/base/cacheinfo.c:248:8: note: Left side of '||' is false
if (i == cpu || !sib_cpu_ci->info_list)
^
drivers/base/cacheinfo.c:248:20: note: Assuming field 'info_list' is null
if (i == cpu || !sib_cpu_ci->info_list)
^
include/linux/compiler.h:56:47: note: expanded from macro 'if'
#define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) )
^~~~
include/linux/compiler.h:58:52: note: expanded from macro '__trace_if_var'
#define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond))
^~~~
drivers/base/cacheinfo.c:248:4: note: '?' condition is false
if (i == cpu || !sib_cpu_ci->info_list)
^
include/linux/compiler.h:56:28: note: expanded from macro 'if'
#define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) )
^
include/linux/compiler.h:58:31: note: expanded from macro '__trace_if_var'
#define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond))
^
drivers/base/cacheinfo.c:248:8: note: 'i' is not equal to 'cpu'
if (i == cpu || !sib_cpu_ci->info_list)
^
include/linux/compiler.h:56:47: note: expanded from macro 'if'
#define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) )
^~~~
include/linux/compiler.h:58:86: note: expanded from macro '__trace_if_var'
#define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond))
^~~~
include/linux/compiler.h:69:3: note: expanded from macro '__trace_if_value'
(cond) ? \
^~~~
drivers/base/cacheinfo.c:248:8: note: Left side of '||' is false
if (i == cpu || !sib_cpu_ci->info_list)
^
drivers/base/cacheinfo.c:248:4: note: '?' condition is true
if (i == cpu || !sib_cpu_ci->info_list)
^
include/linux/compiler.h:56:28: note: expanded from macro 'if'
#define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) )
^
include/linux/compiler.h:58:69: note: expanded from macro '__trace_if_var'
#define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond))
^
include/linux/compiler.h:69:2: note: expanded from macro '__trace_if_value'
(cond) ? \
^
drivers/base/cacheinfo.c:248:4: note: Taking true branch
if (i == cpu || !sib_cpu_ci->info_list)
^
include/linux/compiler.h:56:23: note: expanded from macro 'if'
#define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) )
^
drivers/base/cacheinfo.c:249:5: note: Execution continues on line 245
continue;/* skip if itself or no cacheinfo */
^
drivers/base/cacheinfo.c:245:3: note: Loop condition is false. Execution continues on line 257
for_each_online_cpu(i) {
^
include/linux/cpumask.h:815:36: note: expanded from macro 'for_each_online_cpu'
#define for_each_online_cpu(cpu) for_each_cpu((cpu), cpu_online_mask)
^
include/linux/cpumask.h:190:2: note: expanded from macro 'for_each_cpu'
for ((cpu) = 0; (cpu) < 1; (cpu)++, (void)mask)
^
drivers/base/cacheinfo.c:257:7: note: Access to field 'coherency_line_size' results in a dereference of a null pointer (loaded from variable 'this_leaf')
if (this_leaf->coherency_line_size > coherency_max_size)
^
include/linux/compiler.h:56:47: note: expanded from macro 'if'
#define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) )
^~~~
include/linux/compiler.h:58:52: note: expanded from macro '__trace_if_var'
#define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond))
^~~~
1 warning generated.
>> drivers/scsi/sr.c:486:23: warning: Although the value stored to 'cd' is used in the enclosing expression, the value is never actually read from 'cd' [clang-analyzer-deadcode.DeadStores]
struct scsi_cd *cd = cd = scsi_cd(bdev->bd_disk);
^ ~~~~~~~~~~~~~~~~~~~~~~
drivers/scsi/sr.c:486:23: note: Although the value stored to 'cd' is used in the enclosing expression, the value is never actually read from 'cd'
struct scsi_cd *cd = cd = scsi_cd(bdev->bd_disk);
^ ~~~~~~~~~~~~~~~~~~~~~~
2 warnings generated.
drivers/nvme/host/core.c:3957:3: warning: Use of memory after it is freed [clang-analyzer-unix.Malloc]
nvme_put_ns(ns);
^
drivers/nvme/host/core.c:4147:6: note: Assuming field 'state' is equal to NVME_CTRL_LIVE
if (ctrl->state != NVME_CTRL_LIVE || !ctrl->tagset)
^
include/linux/compiler.h:56:47: note: expanded from macro 'if'
#define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) )
^~~~
include/linux/compiler.h:58:52: note: expanded from macro '__trace_if_var'
#define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond))
^~~~
drivers/nvme/host/core.c:4147:6: note: Left side of '||' is false
if (ctrl->state != NVME_CTRL_LIVE || !ctrl->tagset)
^
drivers/nvme/host/core.c:4147:39: note: Assuming field 'tagset' is non-null
if (ctrl->state != NVME_CTRL_LIVE || !ctrl->tagset)
^
include/linux/compiler.h:56:47: note: expanded from macro 'if'
#define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) )
^~~~
include/linux/compiler.h:58:52: note: expanded from macro '__trace_if_var'
#define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond))
^~~~
drivers/nvme/host/core.c:4147:2: note: '?' condition is false
if (ctrl->state != NVME_CTRL_LIVE || !ctrl->tagset)
^
include/linux/compiler.h:56:28: note: expanded from macro 'if'
#define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) )
^
include/linux/compiler.h:58:31: note: expanded from macro '__trace_if_var'
#define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond))
^
drivers/nvme/host/core.c:4147:12: note: Field 'state' is equal to NVME_CTRL_LIVE
if (ctrl->state != NVME_CTRL_LIVE || !ctrl->tagset)
^
drivers/nvme/host/core.c:4147:6: note: Left side of '||' is false
if (ctrl->state != NVME_CTRL_LIVE || !ctrl->tagset)
^
drivers/nvme/host/core.c:4147:46: note: Field 'tagset' is non-null
if (ctrl->state != NVME_CTRL_LIVE || !ctrl->tagset)
^
drivers/nvme/host/core.c:4147:2: note: '?' condition is false
if (ctrl->state != NVME_CTRL_LIVE || !ctrl->tagset)
^
include/linux/compiler.h:56:28: note: expanded from macro 'if'
#define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) )
^
include/linux/compiler.h:58:69: note: expanded from macro '__trace_if_var'
#define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond))
^
include/linux/compiler.h:69:2: note: expanded from macro '__trace_if_value'
(cond) ? \
^
drivers/nvme/host/core.c:4147:2: note: Taking false branch
if (ctrl->state != NVME_CTRL_LIVE || !ctrl->tagset)
^
include/linux/compiler.h:56:23: note: expanded from macro 'if'
#define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) )
^
drivers/nvme/host/core.c:4150:2: note: '?' condition is false
if (test_and_clear_bit(NVME_AER_NOTICE_NS_CHANGED, &ctrl->events)) {
^
include/linux/compiler.h:56:28: note: expanded from macro 'if'
#define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) )
^
include/linux/compiler.h:58:31: note: expanded from macro '__trace_if_var'
#define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond))
^
drivers/nvme/host/core.c:4150:2: note: Assuming the condition is false
if (test_and_clear_bit(NVME_AER_NOTICE_NS_CHANGED, &ctrl->events)) {
^
include/linux/compiler.h:56:44: note: expanded from macro 'if'
#define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) )
~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/compiler.h:58:86: note: expanded from macro '__trace_if_var'
#define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond))
~~~~~~~~~~~~~~~~~^~~~~
include/linux/compiler.h:69:3: note: expanded from macro '__trace_if_value'
(cond) ? \
^~~~
drivers/nvme/host/core.c:4150:2: note: '?' condition is false
if (test_and_clear_bit(NVME_AER_NOTICE_NS_CHANGED, &ctrl->events)) {
^
include/linux/compiler.h:56:28: note: expanded from macro 'if'
#define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) )
^
include/linux/compiler.h:58:69: note: expanded from macro '__trace_if_var'
#define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond))
^
include/linux/compiler.h:69:2: note: expanded from macro '__trace_if_value'
(cond) ? \
^
drivers/nvme/host/core.c:4150:2: note: Taking false branch
vim +486 drivers/scsi/sr.c
38a2b557e23874 Christoph Hellwig 2020-09-08 483
40cc51be699e37 Al Viro 2008-03-02 484 static int sr_block_open(struct block_device *bdev, fmode_t mode)
^1da177e4c3f41 Linus Torvalds 2005-04-16 485 {
511f348c57ee61 Christoph Hellwig 2022-02-18 @486 struct scsi_cd *cd = cd = scsi_cd(bdev->bd_disk);
511f348c57ee61 Christoph Hellwig 2022-02-18 487 struct scsi_device *sdev = cd->device;
40cc51be699e37 Al Viro 2008-03-02 488 int ret = -ENXIO;
^1da177e4c3f41 Linus Torvalds 2005-04-16 489
511f348c57ee61 Christoph Hellwig 2022-02-18 490 if (scsi_device_get(cd->device))
511f348c57ee61 Christoph Hellwig 2022-02-18 491 return -ENXIO;
1214fd7b497400 Bart Van Assche 2018-08-02 492
1214fd7b497400 Bart Van Assche 2018-08-02 493 scsi_autopm_get_device(sdev);
afd35c4f573d7e Christoph Hellwig 2020-09-08 494 if (bdev_check_media_change(bdev))
38a2b557e23874 Christoph Hellwig 2020-09-08 495 sr_revalidate_disk(cd);
2bbea6e117357d Maurizio Lombardi 2018-03-09 496
51a858817dcdbb Merlijn Wajer 2020-02-18 497 mutex_lock(&cd->lock);
40cc51be699e37 Al Viro 2008-03-02 498 ret = cdrom_open(&cd->cdi, bdev, mode);
51a858817dcdbb Merlijn Wajer 2020-02-18 499 mutex_unlock(&cd->lock);
1214fd7b497400 Bart Van Assche 2018-08-02 500
1214fd7b497400 Bart Van Assche 2018-08-02 501 scsi_autopm_put_device(sdev);
40cc51be699e37 Al Viro 2008-03-02 502 if (ret)
511f348c57ee61 Christoph Hellwig 2022-02-18 503 scsi_device_put(cd->device);
^1da177e4c3f41 Linus Torvalds 2005-04-16 504 return ret;
^1da177e4c3f41 Linus Torvalds 2005-04-16 505 }
^1da177e4c3f41 Linus Torvalds 2005-04-16 506
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2022-02-22 14:40 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-02-22 14:40 [hch-block:freeze-5.18 5/12] drivers/scsi/sr.c:486:23: warning: Although the value stored to 'cd' is used in the enclosing expression, the value is never actually read from 'cd' [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.