From: kernel test robot <lkp@intel.com>
To: kbuild@lists.01.org
Subject: drivers/media/platform/amphion/vpu_msgs.c:138:11: warning: Assigned value is garbage or undefined [clang-analyzer-core.uninitialized.Assign]
Date: Sun, 01 May 2022 12:29:49 +0800 [thread overview]
Message-ID: <202205011201.ePEvrkWw-lkp@intel.com> (raw)
[-- Attachment #1: Type: text/plain, Size: 16465 bytes --]
CC: llvm(a)lists.linux.dev
CC: kbuild-all(a)lists.01.org
BCC: lkp(a)intel.com
CC: linux-kernel(a)vger.kernel.org
TO: Ming Qian <ming.qian@nxp.com>
CC: Hans Verkuil <hverkuil@xs4all.nl>
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 57ae8a492116910bad2b3497ffe555b3a4b4180f
commit: 42356ecbdb69e49cffd0c1df791280965f9f90e1 media: amphion: add amphion vpu entry in Kconfig and Makefile
date: 8 weeks ago
:::::: branch date: 11 hours ago
:::::: commit date: 8 weeks ago
config: arm-randconfig-c002-20220427 (https://download.01.org/0day-ci/archive/20220501/202205011201.ePEvrkWw-lkp(a)intel.com/config)
compiler: clang version 15.0.0 (https://github.com/llvm/llvm-project 1cddcfdc3c683b393df1a5c9063252eb60e52818)
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 arm cross compiling tool for clang build
# apt-get install binutils-arm-linux-gnueabi
# https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=42356ecbdb69e49cffd0c1df791280965f9f90e1
git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
git fetch --no-tags linus master
git checkout 42356ecbdb69e49cffd0c1df791280965f9f90e1
# save the config file
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=arm 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 >>)
^
include/linux/dev_printk.h:105:2: note: expanded from macro 'dev_printk_index_emit'
printk_index_subsys_emit("%s %s: ", level, fmt)
^
include/linux/printk.h:413:2: note: expanded from macro 'printk_index_subsys_emit'
__printk_index_emit(fmt, level, subsys_fmt_prefix)
^
include/linux/printk.h:383:14: note: expanded from macro '__printk_index_emit'
.level = __builtin_constant_p(_level) ? (_level) : NULL, \
^
drivers/media/platform/amphion/vpu_msgs.c:38:2: note: Loop condition is false. Exiting loop
vpu_trace(inst->dev, "[%d] %d:%d %d:%d %d:%d\n",
^
drivers/media/platform/amphion/vpu.h:359:4: note: expanded from macro 'vpu_trace'
dev_info(dev, "%s: " fmt, __func__, ## arg); \
^
include/linux/dev_printk.h:150:2: note: expanded from macro 'dev_info'
dev_printk_index_wrap(_dev_info, KERN_INFO, dev, dev_fmt(fmt), ##__VA_ARGS__)
^
include/linux/dev_printk.h:109:3: note: expanded from macro 'dev_printk_index_wrap'
dev_printk_index_emit(level, fmt); \
^
include/linux/dev_printk.h:105:2: note: expanded from macro 'dev_printk_index_emit'
printk_index_subsys_emit("%s %s: ", level, fmt)
^
include/linux/printk.h:413:2: note: expanded from macro 'printk_index_subsys_emit'
__printk_index_emit(fmt, level, subsys_fmt_prefix)
^
include/linux/printk.h:369:2: note: expanded from macro '__printk_index_emit'
do { \
^
drivers/media/platform/amphion/vpu_msgs.c:38:2: note: 5th function call argument is an uninitialized value
vpu_trace(inst->dev, "[%d] %d:%d %d:%d %d:%d\n",
^
drivers/media/platform/amphion/vpu.h:359:4: note: expanded from macro 'vpu_trace'
dev_info(dev, "%s: " fmt, __func__, ## arg); \
^ ~~~
include/linux/dev_printk.h:150:24: note: expanded from macro 'dev_info'
dev_printk_index_wrap(_dev_info, KERN_INFO, dev, dev_fmt(fmt), ##__VA_ARGS__)
^ ~~~~~~~~~~~
include/linux/dev_printk.h:110:3: note: expanded from macro 'dev_printk_index_wrap'
_p_func(dev, fmt, ##__VA_ARGS__); \
^ ~~~~~~~~~~~
drivers/media/platform/amphion/vpu_msgs.c:46:2: warning: 2nd function call argument is an uninitialized value [clang-analyzer-core.CallAndMessage]
call_void_vop(inst, mem_request,
^
drivers/media/platform/amphion/vpu.h:286:4: note: expanded from macro 'call_void_vop'
(inst)->ops->op(inst, ##args); \
^ ~~~~
drivers/media/platform/amphion/vpu_msgs.c:37:2: note: Calling 'vpu_iface_unpack_msg_data'
vpu_iface_unpack_msg_data(inst->core, pkt, (void *)&req_data);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/media/platform/amphion/vpu_rpc.h:305:6: note: Assuming 'ops' is null
if (!ops || !ops->unpack_msg_data)
^~~~
drivers/media/platform/amphion/vpu_rpc.h:305:11: note: Left side of '||' is true
if (!ops || !ops->unpack_msg_data)
^
drivers/media/platform/amphion/vpu_rpc.h:306:3: note: Returning without writing to 'data->enc_frame_size'
return -EINVAL;
^
drivers/media/platform/amphion/vpu_msgs.c:37:2: note: Returning from 'vpu_iface_unpack_msg_data'
vpu_iface_unpack_msg_data(inst->core, pkt, (void *)&req_data);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/media/platform/amphion/vpu_msgs.c:38:2: note: Assuming 'debug' is false
vpu_trace(inst->dev, "[%d] %d:%d %d:%d %d:%d\n",
^
drivers/media/platform/amphion/vpu.h:358:7: note: expanded from macro 'vpu_trace'
if (debug) \
^~~~~
drivers/media/platform/amphion/vpu_msgs.c:38:2: note: Taking false branch
vpu_trace(inst->dev, "[%d] %d:%d %d:%d %d:%d\n",
^
drivers/media/platform/amphion/vpu.h:358:3: note: expanded from macro 'vpu_trace'
if (debug) \
^
drivers/media/platform/amphion/vpu_msgs.c:38:2: note: Loop condition is false. Exiting loop
vpu_trace(inst->dev, "[%d] %d:%d %d:%d %d:%d\n",
^
drivers/media/platform/amphion/vpu.h:357:2: note: expanded from macro 'vpu_trace'
do { \
^
drivers/media/platform/amphion/vpu_msgs.c:46:2: note: Assuming field 'mem_request' is non-null
call_void_vop(inst, mem_request,
^
drivers/media/platform/amphion/vpu.h:285:7: note: expanded from macro 'call_void_vop'
if ((inst)->ops->op) \
^~~~~~~~~~~~~~~
drivers/media/platform/amphion/vpu_msgs.c:46:2: note: Taking true branch
call_void_vop(inst, mem_request,
^
drivers/media/platform/amphion/vpu.h:285:3: note: expanded from macro 'call_void_vop'
if ((inst)->ops->op) \
^
drivers/media/platform/amphion/vpu_msgs.c:46:2: note: 2nd function call argument is an uninitialized value
call_void_vop(inst, mem_request,
^
drivers/media/platform/amphion/vpu.h:286:4: note: expanded from macro 'call_void_vop'
(inst)->ops->op(inst, ##args); \
^ ~~~~
>> drivers/media/platform/amphion/vpu_msgs.c:138:11: warning: Assigned value is garbage or undefined [clang-analyzer-core.uninitialized.Assign]
frame.id = info.id;
^ ~~~~~~~
drivers/media/platform/amphion/vpu_msgs.c:135:2: note: Calling 'vpu_iface_unpack_msg_data'
vpu_iface_unpack_msg_data(inst->core, pkt, (void *)&info);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/media/platform/amphion/vpu_rpc.h:305:6: note: Assuming 'ops' is null
if (!ops || !ops->unpack_msg_data)
^~~~
drivers/media/platform/amphion/vpu_rpc.h:305:11: note: Left side of '||' is true
if (!ops || !ops->unpack_msg_data)
^
drivers/media/platform/amphion/vpu_rpc.h:306:3: note: Returning without writing to 'data->id'
return -EINVAL;
^
drivers/media/platform/amphion/vpu_msgs.c:135:2: note: Returning from 'vpu_iface_unpack_msg_data'
vpu_iface_unpack_msg_data(inst->core, pkt, (void *)&info);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/media/platform/amphion/vpu_msgs.c:136:6: note: Assuming field 'type' is not equal to VPU_CORE_TYPE_DEC
if (inst->core->type == VPU_CORE_TYPE_DEC)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/media/platform/amphion/vpu_msgs.c:136:2: note: Taking false branch
if (inst->core->type == VPU_CORE_TYPE_DEC)
^
drivers/media/platform/amphion/vpu_msgs.c:138:11: note: Assigned value is garbage or undefined
frame.id = info.id;
^ ~~~~~~~
Suppressed 1 warnings (1 with check filters).
4 warnings generated.
drivers/media/platform/qcom/camss/camss-vfe-170.c:184:6: warning: Value stored to 'gen' during its initialization is never read [clang-analyzer-deadcode.DeadStores]
u32 gen = (hw_version >> 28) & 0xF;
^~~ ~~~~~~~~~~~~~~~~~~~~~~~~
drivers/media/platform/qcom/camss/camss-vfe-170.c:184:6: note: Value stored to 'gen' during its initialization is never read
u32 gen = (hw_version >> 28) & 0xF;
^~~ ~~~~~~~~~~~~~~~~~~~~~~~~
drivers/media/platform/qcom/camss/camss-vfe-170.c:185:6: warning: Value stored to 'rev' during its initialization is never read [clang-analyzer-deadcode.DeadStores]
u32 rev = (hw_version >> 16) & 0xFFF;
^~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/media/platform/qcom/camss/camss-vfe-170.c:185:6: note: Value stored to 'rev' during its initialization is never read
u32 rev = (hw_version >> 16) & 0xFFF;
^~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/media/platform/qcom/camss/camss-vfe-170.c:186:6: warning: Value stored to 'step' during its initialization is never read [clang-analyzer-deadcode.DeadStores]
u32 step = hw_version & 0xFFFF;
^~~~ ~~~~~~~~~~~~~~~~~~~
drivers/media/platform/qcom/camss/camss-vfe-170.c:186:6: note: Value stored to 'step' during its initialization is never read
u32 step = hw_version & 0xFFFF;
^~~~ ~~~~~~~~~~~~~~~~~~~
Suppressed 1 warnings (1 with check filters).
4 warnings generated.
drivers/media/platform/qcom/camss/camss-vfe-480.c:101:6: warning: Value stored to 'gen' during its initialization is never read [clang-analyzer-deadcode.DeadStores]
u32 gen = (hw_version >> 28) & 0xF;
^~~ ~~~~~~~~~~~~~~~~~~~~~~~~
drivers/media/platform/qcom/camss/camss-vfe-480.c:101:6: note: Value stored to 'gen' during its initialization is never read
u32 gen = (hw_version >> 28) & 0xF;
^~~ ~~~~~~~~~~~~~~~~~~~~~~~~
drivers/media/platform/qcom/camss/camss-vfe-480.c:102:6: warning: Value stored to 'rev' during its initialization is never read [clang-analyzer-deadcode.DeadStores]
u32 rev = (hw_version >> 16) & 0xFFF;
^~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/media/platform/qcom/camss/camss-vfe-480.c:102:6: note: Value stored to 'rev' during its initialization is never read
u32 rev = (hw_version >> 16) & 0xFFF;
^~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/media/platform/qcom/camss/camss-vfe-480.c:103:6: warning: Value stored to 'step' during its initialization is never read [clang-analyzer-deadcode.DeadStores]
u32 step = hw_version & 0xFFFF;
^~~~ ~~~~~~~~~~~~~~~~~~~
drivers/media/platform/qcom/camss/camss-vfe-480.c:103:6: note: Value stored to 'step' during its initialization is never read
u32 step = hw_version & 0xFFFF;
^~~~ ~~~~~~~~~~~~~~~~~~~
Suppressed 1 warnings (1 with check filters).
1 warning generated.
Suppressed 1 warnings (1 with check filters).
2 warnings generated.
include/media/v4l2-subdev.h:987:10: warning: Access to field 'pads' results in a dereference of a null pointer (loaded from variable 'state') [clang-analyzer-core.NullDereference]
return &state->pads[pad].try_fmt;
^
drivers/media/platform/qcom/camss/camss-vfe.c:1533:14: note: Assuming 'i' is < field 'line_num'
for (i = 0; i < vfe->line_num; i++) {
^~~~~~~~~~~~~~~~~
drivers/media/platform/qcom/camss/camss-vfe.c:1533:2: note: Loop condition is true. Entering loop body
for (i = 0; i < vfe->line_num; i++) {
^
drivers/media/platform/qcom/camss/camss-vfe.c:1543:7: note: 'i' is not equal to VFE_LINE_PIX
if (i == VFE_LINE_PIX)
^
drivers/media/platform/qcom/camss/camss-vfe.c:1543:3: note: Taking false branch
if (i == VFE_LINE_PIX)
^
drivers/media/platform/qcom/camss/camss-vfe.c:1552:9: note: Calling 'vfe_init_formats'
ret = vfe_init_formats(sd, NULL);
^~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/media/platform/qcom/camss/camss-vfe.c:1260:12: note: 'fh' is null
.which = fh ? V4L2_SUBDEV_FORMAT_TRY :
^~
drivers/media/platform/qcom/camss/camss-vfe.c:1260:12: note: '?' condition is false
drivers/media/platform/qcom/camss/camss-vfe.c:1269:28: note: 'fh' is null
return vfe_set_format(sd, fh ? fh->state : NULL, &format);
^~
drivers/media/platform/qcom/camss/camss-vfe.c:1269:28: note: '?' condition is false
drivers/media/platform/qcom/camss/camss-vfe.c:1269:28: note: Passing null pointer value via 2nd parameter 'sd_state'
return vfe_set_format(sd, fh ? fh->state : NULL, &format);
^~
drivers/media/platform/qcom/camss/camss-vfe.c:1269:9: note: Calling 'vfe_set_format'
vim +138 drivers/media/platform/amphion/vpu_msgs.c
61cbf1c1fa6d74 Ming Qian 2022-02-24 128
61cbf1c1fa6d74 Ming Qian 2022-02-24 129 static void vpu_session_handle_pic_done(struct vpu_inst *inst, struct vpu_rpc_event *pkt)
61cbf1c1fa6d74 Ming Qian 2022-02-24 130 {
61cbf1c1fa6d74 Ming Qian 2022-02-24 131 struct vpu_dec_pic_info info;
61cbf1c1fa6d74 Ming Qian 2022-02-24 132 struct vpu_frame_info frame;
61cbf1c1fa6d74 Ming Qian 2022-02-24 133
61cbf1c1fa6d74 Ming Qian 2022-02-24 134 memset(&frame, 0, sizeof(frame));
61cbf1c1fa6d74 Ming Qian 2022-02-24 135 vpu_iface_unpack_msg_data(inst->core, pkt, (void *)&info);
61cbf1c1fa6d74 Ming Qian 2022-02-24 136 if (inst->core->type == VPU_CORE_TYPE_DEC)
61cbf1c1fa6d74 Ming Qian 2022-02-24 137 frame.type = inst->cap_format.type;
61cbf1c1fa6d74 Ming Qian 2022-02-24 @138 frame.id = info.id;
61cbf1c1fa6d74 Ming Qian 2022-02-24 139 frame.luma = info.luma;
61cbf1c1fa6d74 Ming Qian 2022-02-24 140 frame.skipped = info.skipped;
61cbf1c1fa6d74 Ming Qian 2022-02-24 141 frame.timestamp = info.timestamp;
61cbf1c1fa6d74 Ming Qian 2022-02-24 142
61cbf1c1fa6d74 Ming Qian 2022-02-24 143 call_void_vop(inst, buf_done, &frame);
61cbf1c1fa6d74 Ming Qian 2022-02-24 144 }
61cbf1c1fa6d74 Ming Qian 2022-02-24 145
:::::: The code at line 138 was first introduced by commit
:::::: 61cbf1c1fa6d74a6a232a365e0aeddcab11036e4 media: amphion: implement vpu core communication based on mailbox
:::::: TO: Ming Qian <ming.qian@nxp.com>
:::::: CC: Hans Verkuil <hverkuil-cisco@xs4all.nl>
--
0-DAY CI Kernel Test Service
https://01.org/lkp
next reply other threads:[~2022-05-01 4:29 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-05-01 4:29 kernel test robot [this message]
2022-05-03 5:50 drivers/media/platform/amphion/vpu_msgs.c:138:11: warning: Assigned value is garbage or undefined [clang-analyzer-core.uninitialized.Assign] kernel test robot
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=202205011201.ePEvrkWw-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.