From: kernel test robot <lkp@intel.com>
To: kbuild@lists.01.org
Subject: [jimc:dd-drm-next 5/8] drivers/gpu/drm/drm_client_modeset.o: warning: objtool: drm_client_firmware_config()+0x586: unreachable instruction
Date: Sat, 04 Sep 2021 04:29:08 +0800 [thread overview]
Message-ID: <202109040459.m0HliJam-lkp@intel.com> (raw)
[-- Attachment #1: Type: text/plain, Size: 41097 bytes --]
CC: kbuild-all(a)lists.01.org
TO: Jim Cromie <jim.cromie@gmail.com>
tree: https://github.com/jimc/linux.git dd-drm-next
head: f9f185054f04be5d359668104afd61f5ae6aae56
commit: 83a158f0e8c7b09dd9241c9f71f200b07caf1705 [5/8] drm_print: add choice to use dynamic debug in drm-debug
:::::: branch date: 2 days ago
:::::: commit date: 2 days ago
config: x86_64-randconfig-c007-20210901 (attached as .config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project c9948e9254fbb6ea00f66c7b4542311d21e060be)
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
# https://github.com/jimc/linux/commit/83a158f0e8c7b09dd9241c9f71f200b07caf1705
git remote add jimc https://github.com/jimc/linux.git
git fetch --no-tags jimc dd-drm-next
git checkout 83a158f0e8c7b09dd9241c9f71f200b07caf1705
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=x86_64 clang-analyzer
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
All warnings (new ones prefixed by >>):
>> drivers/gpu/drm/drm_client_modeset.o: warning: objtool: drm_client_firmware_config()+0x586: unreachable instruction
--
>> drivers/gpu/drm/drm_edid.o: warning: objtool: drm_parse_cea_ext()+0x63d: unreachable instruction
clang-analyzer warnings: (new ones prefixed by >>)
^
include/asm-generic/bug.h:65:27: note: expanded from macro 'BUG_ON'
#define BUG_ON(condition) do { if (unlikely(condition)) BUG(); } while (0)
^
kernel/workqueue.c:5966:22: note: Assigned value is garbage or undefined
pool->attrs->nice = std_nice[i++];
^ ~~~~~~~~~~~~~
Suppressed 9 warnings (9 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.
7 warnings generated.
Suppressed 7 warnings (7 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.
Suppressed 8 warnings (8 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/pinctrl/pinctrl-single.c:1422:3: warning: Value stored to 'mask' is never read [clang-analyzer-deadcode.DeadStores]
mask = pcs->read(pcswi->reg);
^ ~~~~~~~~~~~~~~~~~~~~~
drivers/pinctrl/pinctrl-single.c:1422:3: note: Value stored to 'mask' is never read
mask = pcs->read(pcswi->reg);
^ ~~~~~~~~~~~~~~~~~~~~~
Suppressed 7 warnings (7 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.
9 warnings generated.
drivers/gpio/gpio-adnp.c:385:28: warning: The result of the left shift is undefined due to shifting by '4294967292', which is greater or equal to the width of type 'int' [clang-analyzer-core.UndefinedBinaryOperatorResult]
unsigned int num_regs = 1 << adnp->reg_shift, i;
^
drivers/gpio/gpio-adnp.c:498:6: note: 'err' is >= 0
if (err < 0)
^~~
drivers/gpio/gpio-adnp.c:498:2: note: Taking false branch
if (err < 0)
^
drivers/gpio/gpio-adnp.c:502:6: note: Assuming field 'irq' is not equal to 0
if (!client->irq)
^~~~~~~~~~~~
drivers/gpio/gpio-adnp.c:502:2: note: Taking false branch
if (!client->irq)
^
drivers/gpio/gpio-adnp.c:506:6: note: Assuming 'adnp' is non-null
if (!adnp)
^~~~~
drivers/gpio/gpio-adnp.c:506:2: note: Taking false branch
if (!adnp)
^
drivers/gpio/gpio-adnp.c:509:2: note: Loop condition is false. Exiting loop
mutex_init(&adnp->i2c_lock);
^
include/linux/mutex.h:113:32: note: expanded from macro 'mutex_init'
#define mutex_init(mutex) \
^
drivers/gpio/gpio-adnp.c:512:8: note: Calling 'adnp_gpio_setup'
err = adnp_gpio_setup(adnp, num_gpios,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/gpio/gpio-adnp.c:446:2: note: The value 4294967292 is assigned to field 'reg_shift'
adnp->reg_shift = get_count_order(num_gpios) - 3;
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/gpio/gpio-adnp.c:454:2: note: Taking true branch
if (IS_ENABLED(CONFIG_DEBUG_FS))
^
drivers/gpio/gpio-adnp.c:464:6: note: 'is_irq_controller' is true
if (is_irq_controller) {
^~~~~~~~~~~~~~~~~
drivers/gpio/gpio-adnp.c:464:2: note: Taking true branch
if (is_irq_controller) {
^
drivers/gpio/gpio-adnp.c:467:9: note: Calling 'adnp_irq_setup'
err = adnp_irq_setup(adnp);
^~~~~~~~~~~~~~~~~~~~
drivers/gpio/gpio-adnp.c:385:28: note: The result of the left shift is undefined due to shifting by '4294967292', which is greater or equal to the width of type 'int'
unsigned int num_regs = 1 << adnp->reg_shift, i;
^ ~~~~~~~~~~~~~~~
Suppressed 8 warnings (8 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.
6 warnings generated.
Suppressed 6 warnings (6 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.
6 warnings generated.
Suppressed 6 warnings (6 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.
Suppressed 8 warnings (8 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.
7 warnings generated.
Suppressed 7 warnings (7 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.
7 warnings generated.
Suppressed 7 warnings (7 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.
10 warnings generated.
Suppressed 10 warnings (10 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.
10 warnings generated.
Suppressed 10 warnings (10 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.
10 warnings generated.
Suppressed 10 warnings (10 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.
11 warnings generated.
>> drivers/gpu/drm/mxsfb/mxsfb_kms.c:190:21: warning: Value stored to 'drm' during its initialization is never read [clang-analyzer-deadcode.DeadStores]
struct drm_device *drm = mxsfb->crtc.dev;
^~~ ~~~~~~~~~~~~~~~
drivers/gpu/drm/mxsfb/mxsfb_kms.c:190:21: note: Value stored to 'drm' during its initialization is never read
struct drm_device *drm = mxsfb->crtc.dev;
^~~ ~~~~~~~~~~~~~~~
Suppressed 10 warnings (10 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.
6 warnings generated.
Suppressed 6 warnings (6 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.
Suppressed 8 warnings (8 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/base/test/test_async_driver_probe.c:166:12: warning: Dereference of null pointer (loaded from variable 'pdev') [clang-analyzer-core.NullDereference]
dev_info(&(*pdev)->dev,
^
include/linux/dev_printk.h:118:12: note: expanded from macro 'dev_info'
_dev_info(dev, dev_fmt(fmt), ##__VA_ARGS__)
^~~
drivers/base/test/test_async_driver_probe.c:104:2: note: 'pdev' initialized to a null pointer value
struct platform_device **pdev = NULL;
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/base/test/test_async_driver_probe.c:112:2: note: Assuming 'cpu' is >= 'nr_cpu_ids'
for_each_online_cpu(cpu) {
^
include/linux/cpumask.h:789: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:243:3: note: expanded from macro 'for_each_cpu'
(cpu) < nr_cpu_ids;)
^~~~~~~~~~~~~~~~~~
drivers/base/test/test_async_driver_probe.c:112:2: note: Loop condition is false. Execution continues on line 128
for_each_online_cpu(cpu) {
^
include/linux/cpumask.h:789: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:241:2: note: expanded from macro 'for_each_cpu'
for ((cpu) = -1; \
^
drivers/base/test/test_async_driver_probe.c:131:6: note: Assuming 'err' is 0
if (err) {
^~~
drivers/base/test/test_async_driver_probe.c:131:2: note: Taking false branch
if (err) {
^
drivers/base/test/test_async_driver_probe.c:139:6: note: Assuming the condition is false
if (duration > TEST_PROBE_THRESHOLD) {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/base/test/test_async_driver_probe.c:139:2: note: Taking false branch
if (duration > TEST_PROBE_THRESHOLD) {
^
drivers/base/test/test_async_driver_probe.c:147:2: note: Assuming 'cpu' is >= 'nr_cpu_ids'
for_each_online_cpu(cpu) {
^
include/linux/cpumask.h:789: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:243:3: note: expanded from macro 'for_each_cpu'
(cpu) < nr_cpu_ids;)
^~~~~~~~~~~~~~~~~~
drivers/base/test/test_async_driver_probe.c:147:2: note: Loop condition is false. Execution continues on line 164
for_each_online_cpu(cpu) {
^
include/linux/cpumask.h:789: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:241:2: note: expanded from macro 'for_each_cpu'
for ((cpu) = -1; \
^
drivers/base/test/test_async_driver_probe.c:166:12: note: Dereference of null pointer (loaded from variable 'pdev')
dev_info(&(*pdev)->dev,
^
include/linux/dev_printk.h:118:12: note: expanded from macro 'dev_info'
_dev_info(dev, dev_fmt(fmt), ##__VA_ARGS__)
^~~
drivers/base/test/test_async_driver_probe.c:177:2: warning: Value stored to 'nid' is never read [clang-analyzer-deadcode.DeadStores]
nid = cpu_to_node(cpu);
^ ~~~~~~~~~~~~~~~~
drivers/base/test/test_async_driver_probe.c:177:2: note: Value stored to 'nid' is never read
nid = cpu_to_node(cpu);
^ ~~~~~~~~~~~~~~~~
Suppressed 6 warnings (6 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.
7 warnings generated.
Suppressed 7 warnings (7 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.
6 warnings generated.
Suppressed 6 warnings (6 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.
6 warnings generated.
Suppressed 6 warnings (6 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.
7 warnings generated.
Suppressed 7 warnings (7 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.
7 warnings generated.
Suppressed 7 warnings (7 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.
--
include/linux/byteorder/generic.h:91:21: note: expanded from macro 'le16_to_cpu'
#define le16_to_cpu __le16_to_cpu
^
include/uapi/linux/byteorder/little_endian.h:36:26: note: expanded from macro '__le16_to_cpu'
#define __le16_to_cpu(x) ((__force __u16)(__le16)(x))
^
drivers/media/usb/dvb-usb/opera1.c:556:3: note: Calling 'opera1_xilinx_load_firmware'
opera1_xilinx_load_firmware(udev, "dvb-usb-opera1-fpga-01.fw") != 0
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/media/usb/dvb-usb/opera1.c:449:2: note: 'testval' declared without an initial value
u8 testval;
^~~~~~~~~~
drivers/media/usb/dvb-usb/opera1.c:452:6: note: Assuming the condition is false
if ((ret = request_firmware(&fw, filename, &dev->dev)) != 0) {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/media/usb/dvb-usb/opera1.c:452:2: note: Taking false branch
if ((ret = request_firmware(&fw, filename, &dev->dev)) != 0) {
^
drivers/media/usb/dvb-usb/opera1.c:458:3: note: Calling 'opera1_xilinx_rw'
opera1_xilinx_rw(dev, 0xbc, 0x00, &testval, 1, OPERA_READ_MSG);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/media/usb/dvb-usb/opera1.c:55:23: note: 'flags' is equal to OPERA_READ_MSG
unsigned int pipe = (flags == OPERA_READ_MSG) ?
^~~~~
drivers/media/usb/dvb-usb/opera1.c:55:22: note: '?' condition is true
unsigned int pipe = (flags == OPERA_READ_MSG) ?
^
drivers/media/usb/dvb-usb/opera1.c:57:21: note: 'flags' is equal to OPERA_READ_MSG
u8 request_type = (flags == OPERA_READ_MSG) ? USB_DIR_IN : USB_DIR_OUT;
^~~~~
drivers/media/usb/dvb-usb/opera1.c:57:20: note: '?' condition is true
u8 request_type = (flags == OPERA_READ_MSG) ? USB_DIR_IN : USB_DIR_OUT;
^
drivers/media/usb/dvb-usb/opera1.c:60:6: note: Assuming 'buf' is null
if (!buf)
^~~~
drivers/media/usb/dvb-usb/opera1.c:60:2: note: Taking true branch
if (!buf)
^
drivers/media/usb/dvb-usb/opera1.c:61:3: note: Returning without writing to '*data'
return -ENOMEM;
^
drivers/media/usb/dvb-usb/opera1.c:458:3: note: Returning from 'opera1_xilinx_rw'
opera1_xilinx_rw(dev, 0xbc, 0x00, &testval, 1, OPERA_READ_MSG);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/media/usb/dvb-usb/opera1.c:459:7: note: Assuming 'p' is not equal to NULL
if (p != NULL && testval != 0x67) {
^~~~~~~~~
drivers/media/usb/dvb-usb/opera1.c:459:7: note: Left side of '&&' is true
drivers/media/usb/dvb-usb/opera1.c:459:28: note: The left operand of '!=' is a garbage value
if (p != NULL && testval != 0x67) {
~~~~~~~ ^
Suppressed 14 warnings (14 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.
11 warnings generated.
drivers/gpu/drm/arm/display/komeda/komeda_pipeline_state.c:514:8: warning: Branch condition evaluates to a garbage value [clang-analyzer-core.uninitialized.Branch]
if (!(dflow->en_scaling || dflow->en_img_enhancement))
^
drivers/gpu/drm/arm/display/komeda/komeda_pipeline_state.c:1164:8: note: Calling 'komeda_splitter_validate'
err = komeda_splitter_validate(pipe->splitter, conn_st,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/gpu/drm/arm/display/komeda/komeda_pipeline_state.c:572:6: note: Assuming 'splitter' is non-null
if (!splitter) {
^~~~~~~~~
drivers/gpu/drm/arm/display/komeda/komeda_pipeline_state.c:572:2: note: Taking false branch
if (!splitter) {
^
drivers/gpu/drm/arm/display/komeda/komeda_pipeline_state.c:577:2: note: Taking false branch
if (!in_range(&splitter->hsize, dflow->in_w)) {
^
drivers/gpu/drm/arm/display/komeda/komeda_pipeline_state.c:583:2: note: Taking false branch
if (!in_range(&splitter->vsize, dflow->in_h)) {
^
drivers/gpu/drm/arm/display/komeda/komeda_pipeline_state.c:592:2: note: Taking true branch
if (IS_ERR(c_st))
^
drivers/gpu/drm/arm/display/komeda/komeda_pipeline_state.c:593:3: note: Returning without writing to 'l_output->en_scaling'
return PTR_ERR(c_st);
^
drivers/gpu/drm/arm/display/komeda/komeda_pipeline_state.c:1164:8: note: Returning from 'komeda_splitter_validate'
err = komeda_splitter_validate(pipe->splitter, conn_st,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/gpu/drm/arm/display/komeda/komeda_pipeline_state.c:1166:6: note: Assuming 'err' is 0
if (err)
^~~
drivers/gpu/drm/arm/display/komeda/komeda_pipeline_state.c:1166:2: note: Taking false branch
if (err)
^
drivers/gpu/drm/arm/display/komeda/komeda_pipeline_state.c:1168:8: note: Calling 'komeda_scaler_validate'
err = komeda_scaler_validate(conn, kcrtc_st, &l_dflow);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/gpu/drm/arm/display/komeda/komeda_pipeline_state.c:514:8: note: Branch condition evaluates to a garbage value
if (!(dflow->en_scaling || dflow->en_img_enhancement))
^~~~~~~~~~~~~~~~~
Suppressed 10 warnings (10 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.
10 warnings generated.
Suppressed 10 warnings (10 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.
13 warnings generated.
>> drivers/gpu/drm/arm/display/komeda/komeda_kms.c:122:22: warning: Value stored to 'a' during its initialization is never read [clang-analyzer-deadcode.DeadStores]
struct drm_plane *a = node->base.plane;
^ ~~~~~~~~~~~~~~~~
drivers/gpu/drm/arm/display/komeda/komeda_kms.c:122:22: note: Value stored to 'a' during its initialization is never read
struct drm_plane *a = node->base.plane;
^ ~~~~~~~~~~~~~~~~
>> drivers/gpu/drm/arm/display/komeda/komeda_kms.c:123:22: warning: Value stored to 'b' during its initialization is never read [clang-analyzer-deadcode.DeadStores]
struct drm_plane *b = new->base.plane;
^ ~~~~~~~~~~~~~~~
drivers/gpu/drm/arm/display/komeda/komeda_kms.c:123:22: note: Value stored to 'b' during its initialization is never read
struct drm_plane *b = new->base.plane;
^ ~~~~~~~~~~~~~~~
include/linux/list.h:73:2: warning: Dereference of null pointer [clang-analyzer-core.NullDereference]
WRITE_ONCE(prev->next, new);
^
include/asm-generic/rwonce.h:61:2: note: expanded from macro 'WRITE_ONCE'
__WRITE_ONCE(x, val); \
^
include/asm-generic/rwonce.h:55:30: note: expanded from macro '__WRITE_ONCE'
*(volatile typeof(x) *)&(x) = (val); \
^
drivers/gpu/drm/arm/display/komeda/komeda_kms.c:206:6: note: Assuming 'err' is 0
if (err)
^~~
drivers/gpu/drm/arm/display/komeda/komeda_kms.c:206:2: note: Taking false branch
if (err)
^
drivers/gpu/drm/arm/display/komeda/komeda_kms.c:213:2: note: Assuming 'i' is < field 'num_crtc'
for_each_new_crtc_in_state(state, crtc, new_crtc_st, i) {
^
include/drm/drm_atomic.h:846:7: note: expanded from macro 'for_each_new_crtc_in_state'
(__i) < (__state)->dev->mode_config.num_crtc; \
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/gpu/drm/arm/display/komeda/komeda_kms.c:213:2: note: Loop condition is true. Entering loop body
for_each_new_crtc_in_state(state, crtc, new_crtc_st, i) {
^
include/drm/drm_atomic.h:845:2: note: expanded from macro 'for_each_new_crtc_in_state'
for ((__i) = 0; \
^
drivers/gpu/drm/arm/display/komeda/komeda_kms.c:213:2: note: Assuming field 'ptr' is non-null
for_each_new_crtc_in_state(state, crtc, new_crtc_st, i) {
^
include/drm/drm_atomic.h:848:16: note: expanded from macro 'for_each_new_crtc_in_state'
for_each_if ((__state)->crtcs[__i].ptr && \
~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/drm/drm_util.h:63:38: note: expanded from macro 'for_each_if'
#define for_each_if(condition) if (!(condition)) {} else
^~~~~~~~~
drivers/gpu/drm/arm/display/komeda/komeda_kms.c:213:2: note: Left side of '&&' is true
for_each_new_crtc_in_state(state, crtc, new_crtc_st, i) {
^
include/drm/drm_atomic.h:848:16: note: expanded from macro 'for_each_new_crtc_in_state'
for_each_if ((__state)->crtcs[__i].ptr && \
^
drivers/gpu/drm/arm/display/komeda/komeda_kms.c:213:2: note: Taking false branch
for_each_new_crtc_in_state(state, crtc, new_crtc_st, i) {
^
include/drm/drm_atomic.h:848:3: note: expanded from macro 'for_each_new_crtc_in_state'
for_each_if ((__state)->crtcs[__i].ptr && \
^
include/drm/drm_util.h:63:32: note: expanded from macro 'for_each_if'
#define for_each_if(condition) if (!(condition)) {} else
^
drivers/gpu/drm/arm/display/komeda/komeda_kms.c:215:7: note: Assuming 'err' is 0
if (err)
^~~
drivers/gpu/drm/arm/display/komeda/komeda_kms.c:215:3: note: Taking false branch
if (err)
^
drivers/gpu/drm/arm/display/komeda/komeda_kms.c:218:9: note: Calling 'komeda_crtc_normalize_zpos'
err = komeda_crtc_normalize_zpos(crtc, new_crtc_st);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/gpu/drm/arm/display/komeda/komeda_kms.c:141:30: note: Left side of '&&' is false
struct komeda_crtc *kcrtc = to_kcrtc(crtc);
^
drivers/gpu/drm/arm/display/komeda/komeda_kms.h:131:21: note: expanded from macro 'to_kcrtc'
#define to_kcrtc(p) container_of(p, struct komeda_crtc, base)
^
include/linux/kernel.h:495:61: note: expanded from macro 'container_of'
BUILD_BUG_ON_MSG(!__same_type(*(ptr), ((type *)0)->member) && \
^
drivers/gpu/drm/arm/display/komeda/komeda_kms.c:141:30: note: Taking false branch
struct komeda_crtc *kcrtc = to_kcrtc(crtc);
^
drivers/gpu/drm/arm/display/komeda/komeda_kms.h:131:21: note: expanded from macro 'to_kcrtc'
#define to_kcrtc(p) container_of(p, struct komeda_crtc, base)
^
include/linux/kernel.h:495:2: note: expanded from macro 'container_of'
BUILD_BUG_ON_MSG(!__same_type(*(ptr), ((type *)0)->member) && \
^
include/linux/build_bug.h:39:37: note: expanded from macro 'BUILD_BUG_ON_MSG'
#define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg)
^
include/linux/compiler_types.h:328:2: note: expanded from macro 'compiletime_assert'
_compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
^
include/linux/compiler_types.h:316:2: note: expanded from macro '_compiletime_assert'
__compiletime_assert(condition, msg, prefix, suffix)
^
include/linux/compiler_types.h:308:3: note: expanded from macro '__compiletime_assert'
if (!(condition)) \
^
drivers/gpu/drm/arm/display/komeda/komeda_kms.c:141:30: note: Loop condition is false. Exiting loop
struct komeda_crtc *kcrtc = to_kcrtc(crtc);
^
drivers/gpu/drm/arm/display/komeda/komeda_kms.h:131:21: note: expanded from macro 'to_kcrtc'
#define to_kcrtc(p) container_of(p, struct komeda_crtc, base)
--
^~~~~~~~~~~~~~~~
drivers/media/dvb-frontends/dib8000.c:2730:2: note: Taking false branch
if (c->isdbt_sb_mode) {
^
drivers/media/dvb-frontends/dib8000.c:2745:2: note: Assuming 'debug' is 0
dprintk("%dkhz tuner offset (frequency = %dHz & current_rf = %dHz) total_dds_offset_hz = %d\n", c->frequency - current_rf, c->frequency, current_rf, total_dds_offset_khz);
^
drivers/media/dvb-frontends/dib8000.c:35:6: note: expanded from macro 'dprintk'
if (debug) \
^~~~~
drivers/media/dvb-frontends/dib8000.c:2745:2: note: Taking false branch
dprintk("%dkhz tuner offset (frequency = %dHz & current_rf = %dHz) total_dds_offset_hz = %d\n", c->frequency - current_rf, c->frequency, current_rf, total_dds_offset_khz);
^
drivers/media/dvb-frontends/dib8000.c:35:2: note: expanded from macro 'dprintk'
if (debug) \
^
drivers/media/dvb-frontends/dib8000.c:2745:2: note: Loop condition is false. Exiting loop
dprintk("%dkhz tuner offset (frequency = %dHz & current_rf = %dHz) total_dds_offset_hz = %d\n", c->frequency - current_rf, c->frequency, current_rf, total_dds_offset_khz);
^
drivers/media/dvb-frontends/dib8000.c:34:30: note: expanded from macro 'dprintk'
#define dprintk(fmt, arg...) do { \
^
drivers/media/dvb-frontends/dib8000.c:2748:2: note: Calling 'dib8000_set_dds'
dib8000_set_dds(state, total_dds_offset_khz);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/media/dvb-frontends/dib8000.c:2677:23: note: Assuming '__x' is >= 0
u32 abs_offset_khz = abs(offset_khz);
^
include/linux/math.h:133:3: note: expanded from macro 'abs'
__abs_choose_expr(x, int, \
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/math.h:144:28: note: expanded from macro '__abs_choose_expr'
({ signed type __x = (x); __x < 0 ? -__x : __x; }), other)
^~~~~~~
include/linux/math.h:144:54: note: expanded from macro '__abs_choose_expr'
({ signed type __x = (x); __x < 0 ? -__x : __x; }), other)
^~~~~
include/linux/math.h:144:54: note: expanded from macro '__abs_choose_expr'
({ signed type __x = (x); __x < 0 ? -__x : __x; }), other)
^~~~~
drivers/media/dvb-frontends/dib8000.c:2677:23: note: '?' condition is false
u32 abs_offset_khz = abs(offset_khz);
^
include/linux/math.h:133:3: note: expanded from macro 'abs'
__abs_choose_expr(x, int, \
^
include/linux/math.h:144:28: note: expanded from macro '__abs_choose_expr'
({ signed type __x = (x); __x < 0 ? -__x : __x; }), other)
^
drivers/media/dvb-frontends/dib8000.c:2679:15: note: Assuming the condition is false
u8 invert = !!(state->cfg.pll->ifreq & (1 << 25));
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/media/dvb-frontends/dib8000.c:2682:6: note: Assuming field 'revision' is equal to 32912
if (state->revision == 0x8090) {
^~~~~~~~~~~~~~~~~~~~~~~~~
drivers/media/dvb-frontends/dib8000.c:2682:2: note: Taking true branch
if (state->revision == 0x8090) {
^
drivers/media/dvb-frontends/dib8000.c:2684:33: note: Calling 'dib8000_read32'
unit_khz_dds_val = (1<<26) / (dib8000_read32(state, 23) / 1000);
^~~~~~~~~~~~~~~~~~~~~~~~~
drivers/media/dvb-frontends/dib8000.c:216:6: note: Assuming the condition is true
if (mutex_lock_interruptible(&state->i2c_buffer_lock) < 0) {
^
include/linux/mutex.h:166:40: note: expanded from macro 'mutex_lock_interruptible'
#define mutex_lock_interruptible(lock) mutex_lock_interruptible_nested(lock, 0)
^
drivers/media/dvb-frontends/dib8000.c:216:2: note: Taking true branch
if (mutex_lock_interruptible(&state->i2c_buffer_lock) < 0) {
^
drivers/media/dvb-frontends/dib8000.c:217:3: note: Assuming 'debug' is 0
dprintk("could not acquire lock\n");
^
drivers/media/dvb-frontends/dib8000.c:35:6: note: expanded from macro 'dprintk'
if (debug) \
^~~~~
drivers/media/dvb-frontends/dib8000.c:217:3: note: Taking false branch
dprintk("could not acquire lock\n");
^
drivers/media/dvb-frontends/dib8000.c:35:2: note: expanded from macro 'dprintk'
if (debug) \
^
drivers/media/dvb-frontends/dib8000.c:217:3: note: Loop condition is false. Exiting loop
dprintk("could not acquire lock\n");
^
drivers/media/dvb-frontends/dib8000.c:34:30: note: expanded from macro 'dprintk'
#define dprintk(fmt, arg...) do { \
^
drivers/media/dvb-frontends/dib8000.c:218:3: note: Returning zero
return 0;
^~~~~~~~
drivers/media/dvb-frontends/dib8000.c:2684:33: note: Returning from 'dib8000_read32'
unit_khz_dds_val = (1<<26) / (dib8000_read32(state, 23) / 1000);
^~~~~~~~~~~~~~~~~~~~~~~~~
drivers/media/dvb-frontends/dib8000.c:2684:30: note: Division by zero
unit_khz_dds_val = (1<<26) / (dib8000_read32(state, 23) / 1000);
~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Suppressed 8 warnings (8 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.
13 warnings generated.
>> drivers/gpu/drm/bridge/nwl-dsi.c:278:2: warning: Value stored to 'vsync_len' is never read [clang-analyzer-deadcode.DeadStores]
vsync_len = dsi->mode.vsync_end - dsi->mode.vsync_start;
^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/gpu/drm/bridge/nwl-dsi.c:278:2: note: Value stored to 'vsync_len' is never read
vsync_len = dsi->mode.vsync_end - dsi->mode.vsync_start;
^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/gpu/drm/bridge/nwl-dsi.c:733:17: warning: Value stored to 'dev' during its initialization is never read [clang-analyzer-deadcode.DeadStores]
struct device *dev = dsi->dev;
^~~ ~~~~~~~~
drivers/gpu/drm/bridge/nwl-dsi.c:733:17: note: Value stored to 'dev' during its initialization is never read
struct device *dev = dsi->dev;
^~~ ~~~~~~~~
>> drivers/gpu/drm/bridge/nwl-dsi.c:864:2: warning: Value stored to 'phy_ref_rate' is never read [clang-analyzer-deadcode.DeadStores]
phy_ref_rate = clk_get_rate(dsi->phy_ref_clk);
^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/gpu/drm/bridge/nwl-dsi.c:864:2: note: Value stored to 'phy_ref_rate' is never read
phy_ref_rate = clk_get_rate(dsi->phy_ref_clk);
^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Suppressed 10 warnings (10 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.
11 warnings generated.
drivers/gpu/drm/bridge/ite-it66121.c:538:2: warning: Value stored to 'ret' is never read [clang-analyzer-deadcode.DeadStores]
ret = drm_bridge_attach(bridge->encoder, ctx->next_bridge, bridge, flags);
^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/gpu/drm/bridge/ite-it66121.c:538:2: note: Value stored to 'ret' is never read
ret = drm_bridge_attach(bridge->encoder, ctx->next_bridge, bridge, flags);
^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Suppressed 10 warnings (10 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.
10 warnings generated.
Suppressed 10 warnings (10 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.
10 warnings generated.
Suppressed 10 warnings (10 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.
10 warnings generated.
drivers/hwmon/lm90.c:1045:41: warning: The result of the left shift is undefined because the left operand is negative [clang-analyzer-core.UndefinedBinaryOperatorResult]
data->temp11[index] = temp_to_s8(val) << 8;
^
drivers/hwmon/lm90.c:1408:2: note: Control jumps to 'case hwmon_temp:' at line 1411
switch (type) {
^
drivers/hwmon/lm90.c:1412:10: note: Calling 'lm90_temp_write'
return lm90_temp_write(dev, attr, channel, val);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/hwmon/lm90.c:1256:6: note: 'err' is 0
if (err)
^~~
drivers/hwmon/lm90.c:1256:2: note: Taking false branch
if (err)
^
drivers/hwmon/lm90.c:1259:2: note: Control jumps to 'case hwmon_temp_offset:' @line 1289
switch (attr) {
^
drivers/hwmon/lm90.c:1290:9: note: Calling 'lm90_set_temp11'
err = lm90_set_temp11(data, REMOTE_OFFSET, val);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/hwmon/lm90.c:1032:6: note: Assuming field 'kind' is equal to lm99
if (data->kind == lm99 && index <= 2) {
^~~~~~~~~~~~~~~~~~
drivers/hwmon/lm90.c:1032:6: note: Left side of '&&' is true
drivers/hwmon/lm90.c:1032:28: note: 'index' is > 2
if (data->kind == lm99 && index <= 2) {
^~~~~
drivers/hwmon/lm90.c:1032:2: note: Taking false branch
if (data->kind == lm99 && index <= 2) {
^
drivers/hwmon/lm90.c:1038:12: note: Field 'kind' is not equal to adt7461
if (data->kind == adt7461 || data->kind == tmp451)
^
drivers/hwmon/lm90.c:1038:6: note: Left side of '||' is false
if (data->kind == adt7461 || data->kind == tmp451)
^
drivers/hwmon/lm90.c:1038:37: note: Field 'kind' is not equal to tmp451
if (data->kind == adt7461 || data->kind == tmp451)
^
drivers/hwmon/lm90.c:1038:2: note: Taking false branch
if (data->kind == adt7461 || data->kind == tmp451)
^
drivers/hwmon/lm90.c:1040:17: note: Field 'kind' is not equal to max6646
else if (data->kind == max6646)
^
drivers/hwmon/lm90.c:1040:7: note: Taking false branch
else if (data->kind == max6646)
^
drivers/hwmon/lm90.c:1042:11: note: Assuming the condition is false
else if (data->flags & LM90_HAVE_REM_LIMIT_EXT)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/hwmon/lm90.c:1042:7: note: Taking false branch
else if (data->flags & LM90_HAVE_REM_LIMIT_EXT)
^
drivers/hwmon/lm90.c:1045:25: note: Calling 'temp_to_s8'
data->temp11[index] = temp_to_s8(val) << 8;
^~~~~~~~~~~~~~~
drivers/hwmon/lm90.c:868:6: note: Assuming the condition is true
if (val <= -128000)
^~~~~~~~~~~~~~
drivers/hwmon/lm90.c:868:2: note: Taking true branch
if (val <= -128000)
^
drivers/hwmon/lm90.c:869:3: note: Returning the value -128
return -128;
^~~~~~~~~~~
drivers/hwmon/lm90.c:1045:25: note: Returning from 'temp_to_s8'
data->temp11[index] = temp_to_s8(val) << 8;
^~~~~~~~~~~~~~~
drivers/hwmon/lm90.c:1045:41: note: The result of the left shift is undefined because the left operand is negative
data->temp11[index] = temp_to_s8(val) << 8;
~~~~~~~~~~~~~~~ ^
Suppressed 9 warnings (8 in non-user code, 1 with check filters).
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.
Suppressed 8 warnings (8 in non-user code).
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 37890 bytes --]
reply other threads:[~2021-09-03 20:29 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=202109040459.m0HliJam-lkp@intel.com \
--to=lkp@intel.com \
--cc=kbuild@lists.01.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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.