:::::: 
:::::: Manual check reason: "low confidence static check warning: 
drivers/media/platform/samsung/exynos4-is/fimc-core.c:803:4: warning: Value 
stored to 'ret' is never read [clang-analyzer-deadcode.DeadStores]"
:::::: 

CC: l...@lists.linux.dev
CC: kbuild-...@lists.01.org
BCC: l...@intel.com
CC: linux-ker...@vger.kernel.org
TO: Mauro Carvalho Chehab <mche...@kernel.org>
CC: linux-me...@vger.kernel.org

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 
master
head:   e71e60cd74df9386c3f684c54888f2367050b831
commit: 238c84f71120f41c45301359902a912a19370f3d media: platform: rename 
exynos4-is/ to samsung/exynos4-is/
date:   3 months ago
:::::: branch date: 21 hours ago
:::::: commit date: 3 months ago
config: arm-randconfig-c002-20220605 
(https://download.01.org/0day-ci/archive/20220608/202206080631.vlps9jq9-...@intel.com/config)
compiler: clang version 15.0.0 (https://github.com/llvm/llvm-project 
0a90b72c432d70aae035727ece4ba80ce820f381)
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=238c84f71120f41c45301359902a912a19370f3d
        git remote add linus 
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
        git fetch --no-tags linus master
        git checkout 238c84f71120f41c45301359902a912a19370f3d
        # 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 where applicable
Reported-by: kernel test robot <l...@intel.com>


clang-analyzer warnings: (new ones prefixed by >>)
           ^
   include/linux/dev_printk.h:146:2: note: expanded from macro 'dev_warn'
           dev_printk_index_wrap(_dev_warn, KERN_WARNING, 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:370:3: note: expanded from macro '__printk_index_emit'
                   if (__builtin_constant_p(_fmt) && 
__builtin_constant_p(_level)) { \
                   ^
   drivers/usb/misc/ftdi-elan.c:196:2: note: '?' condition is true
           dev_warn(&ftdi->udev->dev, "FREEING ftdi=%p\n", ftdi);
           ^
   include/linux/dev_printk.h:146:2: note: expanded from macro 'dev_warn'
           dev_printk_index_wrap(_dev_warn, KERN_WARNING, 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:379:12: note: expanded from macro 
'__printk_index_emit'
                                   .fmt = __builtin_constant_p(_fmt) ? (_fmt) : 
NULL, \
                                          ^
   drivers/usb/misc/ftdi-elan.c:196:2: note: '?' condition is true
           dev_warn(&ftdi->udev->dev, "FREEING ftdi=%p\n", ftdi);
           ^
   include/linux/dev_printk.h:146:2: note: expanded from macro 'dev_warn'
           dev_printk_index_wrap(_dev_warn, KERN_WARNING, 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:383:14: note: expanded from macro 
'__printk_index_emit'
                                   .level = __builtin_constant_p(_level) ? 
(_level) : NULL, \
                                            ^
   drivers/usb/misc/ftdi-elan.c:196:2: note: Loop condition is false.  Exiting 
loop
           dev_warn(&ftdi->udev->dev, "FREEING ftdi=%p\n", ftdi);
           ^
   include/linux/dev_printk.h:146:2: note: expanded from macro 'dev_warn'
           dev_printk_index_wrap(_dev_warn, KERN_WARNING, 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/usb/misc/ftdi-elan.c:205:2: note: Memory is released
           kfree(ftdi);
           ^~~~~~~~~~~
   include/linux/kref.h:65:3: note: Returning; memory was released
                   release(kref);
                   ^~~~~~~~~~~~~
   drivers/usb/misc/ftdi-elan.c:256:3: note: Returning; memory was released
                   kref_put(&ftdi->kref, ftdi_elan_delete);
                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/usb/misc/ftdi-elan.c:2782:3: note: Returning; memory was released 
via 1st parameter
                   ftdi_command_cancel_work(ftdi);
                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/usb/misc/ftdi-elan.c:2783:3: note: Use of memory after it is freed
                   ftdi_response_cancel_work(ftdi);
                   ^                         ~~~~
   Suppressed 2 warnings (2 with check filters).
   1 warning generated.
   Suppressed 1 warnings (1 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.
   1 warning generated.
   Suppressed 1 warnings (1 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.
   1 warning generated.
   drivers/pinctrl/mediatek/pinctrl-moore.c:183:4: warning: Value stored to 
'err' is never read [clang-analyzer-deadcode.DeadStores]
                           err = -ENOTSUPP;
                           ^     ~~~~~~~~~
   drivers/pinctrl/mediatek/pinctrl-moore.c:183:4: note: Value stored to 'err' 
is never read
                           err = -ENOTSUPP;
                           ^     ~~~~~~~~~
   2 warnings generated.
>> drivers/media/platform/samsung/exynos4-is/fimc-core.c:803:4: warning: Value 
>> stored to 'ret' is never read [clang-analyzer-deadcode.DeadStores]
                           ret = PTR_ERR(fimc->clock[i]);
                           ^     ~~~~~~~~~~~~~~~~~~~~~~~
   drivers/media/platform/samsung/exynos4-is/fimc-core.c:803:4: note: Value 
stored to 'ret' is never read
                           ret = PTR_ERR(fimc->clock[i]);
                           ^     ~~~~~~~~~~~~~~~~~~~~~~~
   Suppressed 1 warnings (1 with check filters).
   1 warning generated.
   Suppressed 1 warnings (1 with check filters).
   1 warning generated.
   drivers/hwmon/lm75.h:30:29: warning: The result of the left shift is 
undefined because the left operand is negative 
[clang-analyzer-core.UndefinedBinaryOperatorResult]
           return (u16)((ntemp / 500) << 7);
                                      ^
   drivers/hwmon/w83627ehf.c:1608:6: note: Assuming 'type' is not equal to 
hwmon_in
           if (type == hwmon_in && attr == hwmon_in_min)
               ^~~~~~~~~~~~~~~~
   drivers/hwmon/w83627ehf.c:1608:23: note: Left side of '&&' is false
           if (type == hwmon_in && attr == hwmon_in_min)
                                ^
   drivers/hwmon/w83627ehf.c:1610:6: note: 'type' is not equal to hwmon_in
           if (type == hwmon_in && attr == hwmon_in_max)
               ^~~~
   drivers/hwmon/w83627ehf.c:1610:23: note: Left side of '&&' is false
           if (type == hwmon_in && attr == hwmon_in_max)
                                ^
   drivers/hwmon/w83627ehf.c:1613:6: note: Assuming 'type' is not equal to 
hwmon_fan
           if (type == hwmon_fan && attr == hwmon_fan_min)
               ^~~~~~~~~~~~~~~~~
   drivers/hwmon/w83627ehf.c:1613:24: note: Left side of '&&' is false
           if (type == hwmon_fan && attr == hwmon_fan_min)
                                 ^
   drivers/hwmon/w83627ehf.c:1616:6: note: Assuming 'type' is equal to 
hwmon_temp
           if (type == hwmon_temp && attr == hwmon_temp_max)
               ^~~~~~~~~~~~~~~~~~
   drivers/hwmon/w83627ehf.c:1616:6: note: Left side of '&&' is true
   drivers/hwmon/w83627ehf.c:1616:28: note: Assuming 'attr' is equal to 
hwmon_temp_max
           if (type == hwmon_temp && attr == hwmon_temp_max)
                                     ^~~~~~~~~~~~~~~~~~~~~~
   drivers/hwmon/w83627ehf.c:1616:2: note: Taking true branch
           if (type == hwmon_temp && attr == hwmon_temp_max)
           ^
   drivers/hwmon/w83627ehf.c:1617:10: note: Calling 'store_temp_max'
                   return store_temp_max(dev, data, channel, val);
                          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/hwmon/w83627ehf.c:799:1: note: Calling 'LM75_TEMP_TO_REG'
   store_temp_reg(reg_temp_over, temp_max);
   ^
   drivers/hwmon/w83627ehf.c:794:23: note: expanded from macro 'store_temp_reg'
           data->reg[channel] = LM75_TEMP_TO_REG(val); \
                                ^~~~~~~~~~~~~~~~~~~~~
   drivers/hwmon/lm75.h:27:14: note: Assuming '__UNIQUE_ID___x165' is <= 
'__UNIQUE_ID___y166'
           int ntemp = clamp_val(temp, LM75_TEMP_MIN, LM75_TEMP_MAX);
                       ^
   include/linux/minmax.h:137:32: note: expanded from macro 'clamp_val'
   #define clamp_val(val, lo, hi) clamp_t(typeof(val), val, lo, hi)
                                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/minmax.h:124:48: note: expanded from macro 'clamp_t'
   #define clamp_t(type, val, lo, hi) min_t(type, max_t(type, val, lo), hi)
                                      ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/minmax.h:112:27: note: expanded from macro 'max_t'
   #define max_t(type, x, y)       __careful_cmp((type)(x), (type)(y), >)
                                   ^
   note: (skipping 3 expansions in backtrace; use -fmacro-backtrace-limit=0 to 
see all)
   include/linux/minmax.h:104:48: note: expanded from macro 'min_t'
   #define min_t(type, x, y)       __careful_cmp((type)(x), (type)(y), <)
                                   ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
   include/linux/minmax.h:38:14: note: expanded from macro '__careful_cmp'
                   __cmp_once(x, y, __UNIQUE_ID(__x), __UNIQUE_ID(__y), op))
                   ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/minmax.h:31:25: note: expanded from macro '__cmp_once'
                   typeof(x) unique_x = (x);               \
                                         ^
   drivers/hwmon/lm75.h:27:14: note: '?' condition is false
           int ntemp = clamp_val(temp, LM75_TEMP_MIN, LM75_TEMP_MAX);
                       ^
   include/linux/minmax.h:137:32: note: expanded from macro 'clamp_val'
   #define clamp_val(val, lo, hi) clamp_t(typeof(val), val, lo, hi)
                                  ^
   include/linux/minmax.h:124:48: note: expanded from macro 'clamp_t'
   #define clamp_t(type, val, lo, hi) min_t(type, max_t(type, val, lo), hi)
                                                  ^
   include/linux/minmax.h:112:27: note: expanded from macro 'max_t'
   #define max_t(type, x, y)       __careful_cmp((type)(x), (type)(y), >)
                                   ^
   include/linux/minmax.h:38:3: note: expanded from macro '__careful_cmp'
                   __cmp_once(x, y, __UNIQUE_ID(__x), __UNIQUE_ID(__y), op))
                   ^
   include/linux/minmax.h:33:3: note: expanded from macro '__cmp_once'
                   __cmp(unique_x, unique_y, op); })
                   ^
   include/linux/minmax.h:28:26: note: expanded from macro '__cmp'
   #define __cmp(x, y, op) ((x) op (y) ? (x) : (y))
                            ^
   drivers/hwmon/lm75.h:27:14: note: '__UNIQUE_ID___x167' is < 
'__UNIQUE_ID___y168'
           int ntemp = clamp_val(temp, LM75_TEMP_MIN, LM75_TEMP_MAX);
                       ^
   include/linux/minmax.h:137:32: note: expanded from macro 'clamp_val'
   #define clamp_val(val, lo, hi) clamp_t(typeof(val), val, lo, hi)
                                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/minmax.h:124:36: note: expanded from macro 'clamp_t'
   #define clamp_t(type, val, lo, hi) min_t(type, max_t(type, val, lo), hi)
--
           ^
   lib/vsprintf.c:933:4: note: Assigned value is garbage or undefined
           s = array[--i];
             ^ ~~~~~~~~~~
   lib/vsprintf.c:1350:9: warning: Assigned value is garbage or undefined 
[clang-analyzer-core.uninitialized.Assign]
                           *p++ = temp[digits];
                                ^
   lib/vsprintf.c:3061:2: note: Loop condition is true.  Entering loop body
           while (*fmt) {
           ^
   lib/vsprintf.c:3066:3: note: Control jumps to 'case FORMAT_TYPE_PTR:'  at 
line 3101
                   switch (spec.type) {
                   ^
   lib/vsprintf.c:3103:4: note: Control jumps to the 'default' case at line 3112
                           switch (*fmt) {
                           ^
   lib/vsprintf.c:3113:9: note: Assuming the condition is false
                                   if (!isalnum(*fmt)) {
                                       ^~~~~~~~~~~~~~
   lib/vsprintf.c:3113:5: note: Taking false branch
                                   if (!isalnum(*fmt)) {
                                   ^
   lib/vsprintf.c:3117:11: note: Calling 'pointer'
                                   str = pointer(fmt, str, end, va_arg(args, 
void *),
                                         
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   lib/vsprintf.c:2386:2: note: Control jumps to 'case 105:'  at line 2415
           switch (*fmt) {
           ^
   lib/vsprintf.c:2419:10: note: Calling 'ip_addr_string'
                   return ip_addr_string(buf, end, ptr, spec, fmt);
                          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   lib/vsprintf.c:1587:2: note: Taking false branch
           if (check_pointer(&buf, end, ptr, spec))
           ^
   lib/vsprintf.c:1590:2: note: Control jumps to 'case 52:'  at line 1593
           switch (fmt[1]) {
           ^
   lib/vsprintf.c:1594:10: note: Calling 'ip4_addr_string'
                   return ip4_addr_string(buf, end, ptr, spec, fmt);
                          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   lib/vsprintf.c:1479:2: note: Calling 'ip4_string'
           ip4_string(ip4_addr, addr, fmt);
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   lib/vsprintf.c:1318:2: note: Control jumps to the 'default' case at line 1334
           switch (fmt[2]) {
           ^
   lib/vsprintf.c:1337:3: note:  Execution continues on line 1339
                   break;
                   ^
   lib/vsprintf.c:1339:2: note: Loop condition is true.  Entering loop body
           for (i = 0; i < 4; i++) {
           ^
   lib/vsprintf.c:1341:16: note: Calling 'put_dec_trunc8'
                   int digits = put_dec_trunc8(temp, addr[index]) - temp;
                                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   lib/vsprintf.c:219:6: note: Assuming 'r' is < 100
           if (r < 100)
               ^~~~~~~
   lib/vsprintf.c:219:2: note: Taking true branch
           if (r < 100)
           ^
   lib/vsprintf.c:220:3: note: Control jumps to line 249
                   goto out_r;
                   ^
   lib/vsprintf.c:250:9: note: Assuming 'r' is >= 10
           buf += r < 10 ? 1 : 2;
                  ^~~~~~
   lib/vsprintf.c:250:9: note: '?' condition is false
   lib/vsprintf.c:1341:16: note: Returning from 'put_dec_trunc8'
                   int digits = put_dec_trunc8(temp, addr[index]) - temp;
                                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   lib/vsprintf.c:1342:7: note: Assuming 'leading_zeros' is false
                   if (leading_zeros) {
                       ^~~~~~~~~~~~~
   lib/vsprintf.c:1342:3: note: Taking false branch
                   if (leading_zeros) {
                   ^
   lib/vsprintf.c:1349:10: note: The value 1 is assigned to 'digits'
                   while (digits--)
                          ^~~~~~~~
   lib/vsprintf.c:1349:3: note: Loop condition is true.  Entering loop body
                   while (digits--)
                   ^
   lib/vsprintf.c:1350:9: note: Assigned value is garbage or undefined
                           *p++ = temp[digits];
                                ^ ~~~~~~~~~~~~
   lib/vsprintf.c:1413:4: warning: Value stored to 'needcolon' is never read 
[clang-analyzer-deadcode.DeadStores]
                           needcolon = false;
                           ^           ~~~~~
   lib/vsprintf.c:1413:4: note: Value stored to 'needcolon' is never read
                           needcolon = false;
                           ^           ~~~~~
   lib/vsprintf.c:1781:2: warning: Call to function 'strcpy' is insecure as it 
does not provide bounding of the memory buffer. Replace unbounded copy 
functions with analogous functions that support length arguments such as 
'strlcpy'. CWE-119 [clang-analyzer-security.insecureAPI.strcpy]
           strcpy(p, *fourcc & BIT(31) ? " big-endian" : " little-endian");
           ^~~~~~
   lib/vsprintf.c:1781:2: note: Call to function 'strcpy' is insecure as it 
does not provide bounding of the memory buffer. Replace unbounded copy 
functions with analogous functions that support length arguments such as 
'strlcpy'. CWE-119
           strcpy(p, *fourcc & BIT(31) ? " big-endian" : " little-endian");
           ^~~~~~
   Suppressed 1 warnings (1 with check filters).
   2 warnings generated.
>> drivers/media/platform/samsung/exynos4-is/fimc-m2m.c:467:20: warning: 
>> Division by zero [clang-analyzer-core.DivideZero]
                                 halign, 64/(ALIGN(depth, 8)));
                                           ^
   drivers/media/platform/samsung/exynos4-is/fimc-m2m.c:493:8: note: Calling 
'fimc_m2m_try_selection'
           ret = fimc_m2m_try_selection(ctx, s);
                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/media/platform/samsung/exynos4-is/fimc-m2m.c:435:6: note: Assuming 
field 'top' is >= 0
           if (s->r.top < 0 || s->r.left < 0) {
               ^~~~~~~~~~~~
   drivers/media/platform/samsung/exynos4-is/fimc-m2m.c:435:6: note: Left side 
of '||' is false
   drivers/media/platform/samsung/exynos4-is/fimc-m2m.c:435:22: note: Assuming 
field 'left' is >= 0
           if (s->r.top < 0 || s->r.left < 0) {
                               ^~~~~~~~~~~~~
   drivers/media/platform/samsung/exynos4-is/fimc-m2m.c:435:2: note: Taking 
false branch
           if (s->r.top < 0 || s->r.left < 0) {
           ^
   drivers/media/platform/samsung/exynos4-is/fimc-m2m.c:440:6: note: Assuming 
field 'type' is equal to V4L2_BUF_TYPE_VIDEO_CAPTURE
           if (s->type == V4L2_BUF_TYPE_VIDEO_CAPTURE) {
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/media/platform/samsung/exynos4-is/fimc-m2m.c:440:2: note: Taking 
true branch
           if (s->type == V4L2_BUF_TYPE_VIDEO_CAPTURE) {
           ^
   drivers/media/platform/samsung/exynos4-is/fimc-m2m.c:442:7: note: Assuming 
field 'target' is equal to V4L2_SEL_TGT_COMPOSE
                   if (s->target != V4L2_SEL_TGT_COMPOSE)
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/media/platform/samsung/exynos4-is/fimc-m2m.c:442:3: note: Taking 
false branch
                   if (s->target != V4L2_SEL_TGT_COMPOSE)
                   ^
   drivers/media/platform/samsung/exynos4-is/fimc-m2m.c:452:13: note: '?' 
condition is false
           min_size = (f == &ctx->s_frame) ?
                      ^
   drivers/media/platform/samsung/exynos4-is/fimc-m2m.c:456:6: note: Assuming 
field 'min_vsize_align' is not equal to 1
           if (fimc->variant->min_vsize_align == 1)
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/media/platform/samsung/exynos4-is/fimc-m2m.c:456:2: note: Taking 
false branch
           if (fimc->variant->min_vsize_align == 1)
           ^
   drivers/media/platform/samsung/exynos4-is/fimc-m2m.c:461:14: note: Assuming 
'i' is >= field 'memplanes'
           for (i = 0; i < f->fmt->memplanes; i++)
                       ^~~~~~~~~~~~~~~~~~~~~
   drivers/media/platform/samsung/exynos4-is/fimc-m2m.c:461:2: note: Loop 
condition is false. Execution continues on line 464
           for (i = 0; i < f->fmt->memplanes; i++)
           ^
   drivers/media/platform/samsung/exynos4-is/fimc-m2m.c:467:20: note: Division 
by zero
                                 halign, 64/(ALIGN(depth, 8)));
                                         ~~^~~~~~~~~~~~~~~~~~
   Suppressed 1 warnings (1 with check filters).
   5 warnings generated.
>> drivers/media/platform/samsung/exynos4-is/fimc-capture.c:670:16: warning: 
>> Division by zero [clang-analyzer-core.DivideZero]
                   align_sz = 64/ALIGN(depth, 8);
                                ^
   drivers/media/platform/samsung/exynos4-is/fimc-capture.c:1643:6: note: 
Assuming field 'pad' is not equal to FIMC_SD_PAD_SOURCE
           if (sel->pad == FIMC_SD_PAD_SOURCE)
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/media/platform/samsung/exynos4-is/fimc-capture.c:1643:2: note: 
Taking false branch
           if (sel->pad == FIMC_SD_PAD_SOURCE)
           ^
   drivers/media/platform/samsung/exynos4-is/fimc-capture.c:1647:2: note: 
Calling 'fimc_capture_try_selection'
           fimc_capture_try_selection(ctx, r, V4L2_SEL_TGT_CROP);
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/media/platform/samsung/exynos4-is/fimc-capture.c:643:16: note: 
Assuming field 'rotation' is equal to 90
           bool rotate = ctx->rotation == 90 || ctx->rotation == 270;
                         ^~~~~~~~~~~~~~~~~~~
   drivers/media/platform/samsung/exynos4-is/fimc-capture.c:643:36: note: Left 
side of '||' is true
           bool rotate = ctx->rotation == 90 || ctx->rotation == 270;
                                             ^
   drivers/media/platform/samsung/exynos4-is/fimc-capture.c:653:6: note: 
Assuming the condition is true
           if (fimc_fmt_is_user_defined(ctx->d_frame.fmt->color)) {
               ^
   drivers/media/platform/samsung/exynos4-is/fimc-core.h:112:39: note: expanded 
from macro 'fimc_fmt_is_user_defined'
   #define fimc_fmt_is_user_defined(x) (!!((x) & 0x180))
                                         ^~~~~~~~~~~~~~
   drivers/media/platform/samsung/exynos4-is/fimc-capture.c:653:2: note: Taking 
false branch
           if (fimc_fmt_is_user_defined(ctx->d_frame.fmt->color)) {
           ^
   drivers/media/platform/samsung/exynos4-is/fimc-capture.c:659:6: note: 
'target' is not equal to V4L2_SEL_TGT_COMPOSE
           if (target == V4L2_SEL_TGT_COMPOSE) {
               ^~~~~~
   drivers/media/platform/samsung/exynos4-is/fimc-capture.c:659:2: note: Taking 
false branch
           if (target == V4L2_SEL_TGT_COMPOSE) {
           ^
   drivers/media/platform/samsung/exynos4-is/fimc-capture.c:670:16: note: 
Division by zero
                   align_sz = 64/ALIGN(depth, 8);
                              ~~^~~~~~~~~~~~~~~~
>> drivers/media/platform/samsung/exynos4-is/fimc-capture.c:825:3: warning: 
>> Value stored to 'ffmt' is never read [clang-analyzer-deadcode.DeadStores]
                   ffmt = fimc_capture_try_format(ctx, &tfmt->width, 
&tfmt->height,
                   ^      
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/media/platform/samsung/exynos4-is/fimc-capture.c:825:3: note: Value 
stored to 'ffmt' is never read
                   ffmt = fimc_capture_try_format(ctx, &tfmt->width, 
&tfmt->height,
                   ^      
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/media/platform/samsung/exynos4-is/fimc-capture.c:862:22: warning: 
>> Assigned value is garbage or undefined 
>> [clang-analyzer-core.uninitialized.Assign]
                   fd.entry[i].length = plane_fmt[i].sizeimage;
                                      ^
   drivers/media/platform/samsung/exynos4-is/fimc-capture.c:1184:2: note: 
Taking false branch
           if (fimc_capture_active(fimc))
           ^
   drivers/media/platform/samsung/exynos4-is/fimc-capture.c:1188:6: note: 
Assuming 'ret' is >= 0
           if (ret < 0)
               ^~~~~~~
   drivers/media/platform/samsung/exynos4-is/fimc-capture.c:1188:2: note: 
Taking false branch
           if (ret < 0)
           ^
   drivers/media/platform/samsung/exynos4-is/fimc-capture.c:1192:6: note: 
Assuming 'sd' is non-null
           if (sd)
               ^~
   drivers/media/platform/samsung/exynos4-is/fimc-capture.c:1192:2: note: 
Taking true branch
           if (sd)
           ^
   drivers/media/platform/samsung/exynos4-is/fimc-capture.c:1195:6: note: 
Assuming 'si' is not equal to NULL
           if (si == NULL) {
               ^~~~~~~~~~
   drivers/media/platform/samsung/exynos4-is/fimc-capture.c:1195:2: note: 
Taking false branch
           if (si == NULL) {
           ^
   drivers/media/platform/samsung/exynos4-is/fimc-capture.c:1205:6: note: 
Assuming the condition is false
           if (vc->input == GRP_ID_FIMC_IS)
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/media/platform/samsung/exynos4-is/fimc-capture.c:1205:2: note: 
Taking false branch
           if (vc->input == GRP_ID_FIMC_IS)
           ^
   drivers/media/platform/samsung/exynos4-is/fimc-capture.c:1208:6: note: 
Assuming field 'user_subdev_api' is true
           if (vc->user_subdev_api) {
               ^~~~~~~~~~~~~~~~~~~
   drivers/media/platform/samsung/exynos4-is/fimc-capture.c:1208:2: note: 
Taking true branch
           if (vc->user_subdev_api) {
           ^
   drivers/media/platform/samsung/exynos4-is/fimc-capture.c:1209:9: note: 
Calling 'fimc_pipeline_validate'
                   ret = fimc_pipeline_validate(fimc);
                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/media/platform/samsung/exynos4-is/fimc-capture.c:1105:2: note: Loop 
condition is true.  Entering loop body
           while (1) {
           ^
   drivers/media/platform/samsung/exynos4-is/fimc-capture.c:1113:15: note: 
Assuming 'i' is < field 'num_pads'
                   for (i = 0; i < sd->entity.num_pads; i++) {
                               ^~~~~~~~~~~~~~~~~~~~~~~
   drivers/media/platform/samsung/exynos4-is/fimc-capture.c:1113:3: note: Loop 
condition is true.  Entering loop body
                   for (i = 0; i < sd->entity.num_pads; i++) {
                   ^
   drivers/media/platform/samsung/exynos4-is/fimc-capture.c:1116:8: note: 
Assuming the condition is true
                           if (p->flags & MEDIA_PAD_FL_SINK) {
                               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/media/platform/samsung/exynos4-is/fimc-capture.c:1116:4: note: 
Taking true branch
                           if (p->flags & MEDIA_PAD_FL_SINK) {
                           ^
   drivers/media/platform/samsung/exynos4-is/fimc-capture.c:1119:9: note: 
Assuming 'src_pad' is non-null
                                   if (src_pad)
                                       ^~~~~~~
   drivers/media/platform/samsung/exynos4-is/fimc-capture.c:1119:5: note: 
Taking true branch
                                   if (src_pad)
                                   ^
   drivers/media/platform/samsung/exynos4-is/fimc-capture.c:1120:6: note:  
Execution continues on line 1124
                                           break;
                                           ^
   drivers/media/platform/samsung/exynos4-is/fimc-capture.c:1124:8: note: 
'src_pad' is non-null
                   if (!src_pad || 
!is_media_entity_v4l2_subdev(src_pad->entity))
                        ^~~~~~~
   drivers/media/platform/samsung/exynos4-is/fimc-capture.c:1124:7: note: Left 
side of '||' is false
                   if (!src_pad || 
!is_media_entity_v4l2_subdev(src_pad->entity))
                       ^
   drivers/media/platform/samsung/exynos4-is/fimc-capture.c:1124:3: note: 
Taking false branch
                   if (!src_pad || 
!is_media_entity_v4l2_subdev(src_pad->entity))
                   ^
   drivers/media/platform/samsung/exynos4-is/fimc-capture.c:1128:3: note: 
Taking true branch
                   if (sd == &vc->subdev) {
                   ^
   drivers/media/platform/samsung/exynos4-is/fimc-capture.c:1132:27: note: 
Assuming field 'fmt' is non-null
                           sink_fmt.format.code = ff->fmt ? ff->fmt->mbus_code 
: 0;
                                                  ^~~~~~~
   drivers/media/platform/samsung/exynos4-is/fimc-capture.c:1132:27: note: '?' 
condition is true
   drivers/media/platform/samsung/exynos4-is/fimc-capture.c:1142:8: note: 
'__me_sd_ent' is non-null
                   sd = media_entity_to_v4l2_subdev(src_pad->entity);
                        ^
   include/media/v4l2-subdev.h:932:2: note: expanded from macro 
'media_entity_to_v4l2_subdev'
           __me_sd_ent ?                                                   \
           ^~~~~~~~~~~
   drivers/media/platform/samsung/exynos4-is/fimc-capture.c:1142:8: note: '?' 
condition is true
                   sd = media_entity_to_v4l2_subdev(src_pad->entity);
                        ^
   include/media/v4l2-subdev.h:932:2: note: expanded from macro 
'media_entity_to_v4l2_subdev'
           __me_sd_ent ?                                                   \
           ^
   drivers/media/platform/samsung/exynos4-is/fimc-capture.c:1145:9: note: 
'__sd' is non-null
                   ret = v4l2_subdev_call(sd, pad, get_fmt, NULL, &src_fmt);
                         ^
   include/media/v4l2-subdev.h:1170:8: note: expanded from macro 
'v4l2_subdev_call'
                   if (!__sd)                                              \
                        ^~~~
   drivers/media/platform/samsung/exynos4-is/fimc-capture.c:1145:9: note: 
Taking false branch
                   ret = v4l2_subdev_call(sd, pad, get_fmt, NULL, &src_fmt);
                         ^
   include/media/v4l2-subdev.h:1170:3: note: expanded from macro 
'v4l2_subdev_call'
--
                         ^~~~~   ~~~~~~~~~~~~
   2 warnings generated.
   fs/affs/namei.c:22:34: warning: Although the value stored to 'ch' is used in 
the enclosing expression, the value is never actually read from 'ch' 
[clang-analyzer-deadcode.DeadStores]
           return ch >= 'a' && ch <= 'z' ? ch -= ('a' - 'A') : ch;
                                           ^     ~~~~~~~~~~~
   fs/affs/namei.c:22:34: note: Although the value stored to 'ch' is used in 
the enclosing expression, the value is never actually read from 'ch'
           return ch >= 'a' && ch <= 'z' ? ch -= ('a' - 'A') : ch;
                                           ^     ~~~~~~~~~~~
   fs/affs/namei.c:489:2: warning: Value stored to 'retval' is never read 
[clang-analyzer-deadcode.DeadStores]
           retval = affs_insert_hash(new_dir, bh_old);
           ^        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   fs/affs/namei.c:489:2: note: Value stored to 'retval' is never read
           retval = affs_insert_hash(new_dir, bh_old);
           ^        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   1 warning generated.
   sound/usb/midi.c:2354:2: warning: Call to function 'strcpy' is insecure as 
it does not provide bounding of the memory buffer. Replace unbounded copy 
functions with analogous functions that support length arguments such as 
'strlcpy'. CWE-119 [clang-analyzer-security.insecureAPI.strcpy]
           strcpy(rmidi->name, umidi->card->shortname);
           ^~~~~~
   sound/usb/midi.c:2354:2: note: Call to function 'strcpy' is insecure as it 
does not provide bounding of the memory buffer. Replace unbounded copy 
functions with analogous functions that support length arguments such as 
'strlcpy'. CWE-119
           strcpy(rmidi->name, umidi->card->shortname);
           ^~~~~~
   2 warnings generated.
   sound/usb/misc/ua101.c:1250:2: warning: Call to function 'strcpy' is 
insecure as it does not provide bounding of the memory buffer. Replace 
unbounded copy functions with analogous functions that support length arguments 
such as 'strlcpy'. CWE-119 [clang-analyzer-security.insecureAPI.strcpy]
           strcpy(card->shortname, name);
           ^~~~~~
   sound/usb/misc/ua101.c:1250:2: note: Call to function 'strcpy' is insecure 
as it does not provide bounding of the memory buffer. Replace unbounded copy 
functions with analogous functions that support length arguments such as 
'strlcpy'. CWE-119
           strcpy(card->shortname, name);
           ^~~~~~
   sound/usb/misc/ua101.c:1275:2: warning: Call to function 'strcpy' is 
insecure as it does not provide bounding of the memory buffer. Replace 
unbounded copy functions with analogous functions that support length arguments 
such as 'strlcpy'. CWE-119 [clang-analyzer-security.insecureAPI.strcpy]
           strcpy(ua->pcm->name, name);
           ^~~~~~
   sound/usb/misc/ua101.c:1275:2: note: Call to function 'strcpy' is insecure 
as it does not provide bounding of the memory buffer. Replace unbounded copy 
functions with analogous functions that support length arguments such as 
'strlcpy'. CWE-119
           strcpy(ua->pcm->name, name);
           ^~~~~~
   1 warning generated.
   Suppressed 1 warnings (1 with check filters).
   1 warning generated.
   Suppressed 1 warnings (1 with check filters).
   1 warning generated.
   drivers/gpu/drm/drm_file.c:587:30: warning: Use of memory after it is freed 
[clang-analyzer-unix.Malloc]
                           file_priv->event_space += e->event->length;
                                                     ^~~~~~~~
   drivers/gpu/drm/drm_file.c:577:6: note: Assuming 'ret' is 0
           if (ret)
               ^~~
   drivers/gpu/drm/drm_file.c:577:2: note: Taking false branch
           if (ret)
           ^
   drivers/gpu/drm/drm_file.c:580:2: note: Loop condition is true.  Entering 
loop body
           for (;;) {
           ^
   drivers/gpu/drm/drm_file.c:584:7: note: Assuming the condition is true
                   if (!list_empty(&file_priv->event_list)) {
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/gpu/drm/drm_file.c:584:3: note: Taking true branch
                   if (!list_empty(&file_priv->event_list)) {
                   ^
   drivers/gpu/drm/drm_file.c:592:7: note: 'e' is not equal to NULL
                   if (e == NULL) {
                       ^
   drivers/gpu/drm/drm_file.c:592:3: note: Taking false branch
                   if (e == NULL) {
                   ^
   drivers/gpu/drm/drm_file.c:611:8: note: Assuming the condition is false
                           if (length > count - ret) {
                               ^~~~~~~~~~~~~~~~~~~~
   drivers/gpu/drm/drm_file.c:611:4: note: Taking false branch
                           if (length > count - ret) {
                           ^
   drivers/gpu/drm/drm_file.c:622:8: note: Assuming the condition is false
                           if (copy_to_user(buffer + ret, e->event, length)) {
                               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/gpu/drm/drm_file.c:622:4: note: Taking false branch
                           if (copy_to_user(buffer + ret, e->event, length)) {
                           ^
   drivers/gpu/drm/drm_file.c:629:4: note: Memory is released
                           kfree(e);
                           ^~~~~~~~
   drivers/gpu/drm/drm_file.c:580:2: note: Loop condition is true.  Entering 
loop body
           for (;;) {
           ^
   drivers/gpu/drm/drm_file.c:584:7: note: Assuming the condition is true
                   if (!list_empty(&file_priv->event_list)) {
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/gpu/drm/drm_file.c:584:3: note: Taking true branch
                   if (!list_empty(&file_priv->event_list)) {
                   ^
   drivers/gpu/drm/drm_file.c:587:30: note: Use of memory after it is freed
                           file_priv->event_space += e->event->length;
                                                     ^~~~~~~~
   1 warning generated.
   sound/core/seq/seq_midi.c:348:4: warning: Call to function 'strcpy' is 
insecure as it does not provide bounding of the memory buffer. Replace 
unbounded copy functions with analogous functions that support length arguments 
such as 'strlcpy'. CWE-119 [clang-analyzer-security.insecureAPI.strcpy]
                           strcpy(port->name, info->subname);
                           ^~~~~~
   sound/core/seq/seq_midi.c:348:4: note: Call to function 'strcpy' is insecure 
as it does not provide bounding of the memory buffer. Replace unbounded copy 
functions with analogous functions that support length arguments such as 
'strlcpy'. CWE-119
                           strcpy(port->name, info->subname);
                           ^~~~~~
   2 warnings generated.
   Suppressed 2 warnings (2 with check filters).
   4 warnings generated.
>> drivers/media/platform/samsung/exynos4-is/media-dev.c:1018:3: warning: Value 
>> stored to 'ret' is never read [clang-analyzer-deadcode.DeadStores]
                   ret = __fimc_md_create_fimc_sink_links(fmd, source, sensor,
                   ^     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/media/platform/samsung/exynos4-is/media-dev.c:1018:3: note: Value 
stored to 'ret' is never read
                   ret = __fimc_md_create_fimc_sink_links(fmd, source, sensor,
                   ^     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/media/platform/samsung/exynos4-is/media-dev.c:1031:3: warning: Value 
stored to 'ret' is never read [clang-analyzer-deadcode.DeadStores]
                   ret = __fimc_md_create_fimc_sink_links(fmd, source, sensor,
                   ^     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/media/platform/samsung/exynos4-is/media-dev.c:1031:3: note: Value 
stored to 'ret' is never read
                   ret = __fimc_md_create_fimc_sink_links(fmd, source, sensor,
                   ^     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/list.h:137:13: warning: Use of memory after it is freed 
[clang-analyzer-unix.Malloc]
           __list_del(entry->prev, entry->next);
                      ^
   drivers/media/platform/samsung/exynos4-is/media-dev.c:1541:6: note: Assuming 
'fmd' is non-null
           if (!fmd)
               ^~~~
   drivers/media/platform/samsung/exynos4-is/media-dev.c:1541:2: note: Taking 
false branch
           if (!fmd)
           ^
   drivers/media/platform/samsung/exynos4-is/media-dev.c:1551:2: note: Calling 
'fimc_md_pipelines_free'
           fimc_md_pipelines_free(fmd);
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/media/platform/samsung/exynos4-is/media-dev.c:389:2: note: Loop 
condition is true.  Entering loop body
           while (!list_empty(&fmd->pipelines)) {
           ^
   drivers/media/platform/samsung/exynos4-is/media-dev.c:394:3: note: Memory is 
released
                   kfree(p);
                   ^~~~~~~~
   drivers/media/platform/samsung/exynos4-is/media-dev.c:389:2: note: Loop 
condition is true.  Entering loop body
           while (!list_empty(&fmd->pipelines)) {
           ^
   drivers/media/platform/samsung/exynos4-is/media-dev.c:393:3: note: Calling 
'list_del'
                   list_del(&p->list);
                   ^~~~~~~~~~~~~~~~~~
   include/linux/list.h:148:2: note: Calling '__list_del_entry'
           __list_del_entry(entry);
           ^~~~~~~~~~~~~~~~~~~~~~~
   include/linux/list.h:134:2: note: Taking false branch
           if (!__list_del_entry_valid(entry))
           ^
   include/linux/list.h:137:13: note: Use of memory after it is freed
           __list_del(entry->prev, entry->next);
                      ^~~~~~~~~~~
   Suppressed 1 warnings (1 with check filters).
   1 warning generated.
   Suppressed 1 warnings (1 with check filters).
   1 warning generated.
   fs/btrfs/verity.c:134:4: warning: Value stored to 'ret' is never read 
[clang-analyzer-deadcode.DeadStores]
                           ret = 0;
                           ^     ~
   fs/btrfs/verity.c:134:4: note: Value stored to 'ret' is never read
                           ret = 0;
                           ^     ~
   1 warning generated.
   drivers/of/device.c:59:29: warning: Value stored to 'of_node' during its 
initialization is never read [clang-analyzer-deadcode.DeadStores]
           struct device_node *node, *of_node = dev->of_node;
                                      ^~~~~~~   ~~~~~~~~~~~~
   drivers/of/device.c:59:29: note: Value stored to 'of_node' during its 
initialization is never read
           struct device_node *node, *of_node = dev->of_node;
                                      ^~~~~~~   ~~~~~~~~~~~~
   2 warnings generated.
   drivers/of/property.c:920:19: warning: Access to field 'full_name' results 
in a dereference of a null pointer [clang-analyzer-core.NullDereference]
           return kbasename(to_of_node(fwnode)->full_name);
                            ^
   include/linux/of.h:161:2: note: expanded from macro 'to_of_node'
           ({                                                              \
           ^
   drivers/of/property.c:920:19: note: '?' condition is false
           return kbasename(to_of_node(fwnode)->full_name);
                            ^
   include/linux/of.h:164:3: note: expanded from macro 'to_of_node'
                   is_of_node(__to_of_node_fwnode) ?                       \
                   ^
   drivers/of/property.c:920:19: note: Access to field 'full_name' results in a 
dereference of a null pointer
           return kbasename(to_of_node(fwnode)->full_name);
                            ^
   include/linux/of.h:161:2: note: expanded from macro 'to_of_node'
           ({                                                              \
           ^
   drivers/of/property.c:926:7: warning: Access to field 'parent' results in a 
dereference of a null pointer [clang-analyzer-core.NullDereference]
           if (!to_of_node(fwnode)->parent)
                ^
   include/linux/of.h:161:2: note: expanded from macro 'to_of_node'
           ({                                                              \
           ^
   drivers/of/property.c:926:7: note: '?' condition is false
           if (!to_of_node(fwnode)->parent)
                ^
   include/linux/of.h:164:3: note: expanded from macro 'to_of_node'
                   is_of_node(__to_of_node_fwnode) ?                       \
                   ^
   drivers/of/property.c:926:7: note: Access to field 'parent' results in a 
dereference of a null pointer
           if (!to_of_node(fwnode)->parent)
                ^
   include/linux/of.h:161:2: note: expanded from macro 'to_of_node'
           ({                                                              \
           ^
   1 warning generated.
   Suppressed 1 warnings (1 with check filters).

vim +/ret +803 drivers/media/platform/samsung/exynos4-is/fimc-core.c

5fd8f7388c9a86 drivers/media/video/s5p-fimc/fimc-core.c    Sylwester Nawrocki 
2010-08-03  792  
5fd8f7388c9a86 drivers/media/video/s5p-fimc/fimc-core.c    Sylwester Nawrocki 
2010-08-03  793  static int fimc_clk_get(struct fimc_dev *fimc)
5fd8f7388c9a86 drivers/media/video/s5p-fimc/fimc-core.c    Sylwester Nawrocki 
2010-08-03  794  {
bd7d8888e99d67 drivers/media/video/s5p-fimc/fimc-core.c    Sylwester Nawrocki 
2012-01-30  795   int i, ret;
bd7d8888e99d67 drivers/media/video/s5p-fimc/fimc-core.c    Sylwester Nawrocki 
2012-01-30  796  
b71b56b264ae27 drivers/media/platform/s5p-fimc/fimc-core.c Sylwester Nawrocki 
2013-01-29  797   for (i = 0; i < MAX_FIMC_CLOCKS; i++)
b71b56b264ae27 drivers/media/platform/s5p-fimc/fimc-core.c Sylwester Nawrocki 
2013-01-29  798           fimc->clock[i] = ERR_PTR(-EINVAL);
b71b56b264ae27 drivers/media/platform/s5p-fimc/fimc-core.c Sylwester Nawrocki 
2013-01-29  799  
6ec0163b7952ad drivers/media/video/s5p-fimc/fimc-core.c    Sylwester Nawrocki 
2012-03-17  800   for (i = 0; i < MAX_FIMC_CLOCKS; i++) {
a25be18dfb6e1b drivers/media/video/s5p-fimc/fimc-core.c    Sylwester Nawrocki 
2010-12-27  801           fimc->clock[i] = clk_get(&fimc->pdev->dev, 
fimc_clocks[i]);
b71b56b264ae27 drivers/media/platform/s5p-fimc/fimc-core.c Sylwester Nawrocki 
2013-01-29  802           if (IS_ERR(fimc->clock[i])) {
b71b56b264ae27 drivers/media/platform/s5p-fimc/fimc-core.c Sylwester Nawrocki 
2013-01-29 @803                   ret = PTR_ERR(fimc->clock[i]);
bd7d8888e99d67 drivers/media/video/s5p-fimc/fimc-core.c    Sylwester Nawrocki 
2012-01-30  804                   goto err;
b71b56b264ae27 drivers/media/platform/s5p-fimc/fimc-core.c Sylwester Nawrocki 
2013-01-29  805           }
bd7d8888e99d67 drivers/media/video/s5p-fimc/fimc-core.c    Sylwester Nawrocki 
2012-01-30  806           ret = clk_prepare(fimc->clock[i]);
bd7d8888e99d67 drivers/media/video/s5p-fimc/fimc-core.c    Sylwester Nawrocki 
2012-01-30  807           if (ret < 0) {
bd7d8888e99d67 drivers/media/video/s5p-fimc/fimc-core.c    Sylwester Nawrocki 
2012-01-30  808                   clk_put(fimc->clock[i]);
b71b56b264ae27 drivers/media/platform/s5p-fimc/fimc-core.c Sylwester Nawrocki 
2013-01-29  809                   fimc->clock[i] = ERR_PTR(-EINVAL);
bd7d8888e99d67 drivers/media/video/s5p-fimc/fimc-core.c    Sylwester Nawrocki 
2012-01-30  810                   goto err;
bd7d8888e99d67 drivers/media/video/s5p-fimc/fimc-core.c    Sylwester Nawrocki 
2012-01-30  811           }
5fd8f7388c9a86 drivers/media/video/s5p-fimc/fimc-core.c    Sylwester Nawrocki 
2010-08-03  812   }
e9e21083ef9361 drivers/media/video/s5p-fimc/fimc-core.c    Sylwester Nawrocki 
2011-09-02  813   return 0;
bd7d8888e99d67 drivers/media/video/s5p-fimc/fimc-core.c    Sylwester Nawrocki 
2012-01-30  814  err:
bd7d8888e99d67 drivers/media/video/s5p-fimc/fimc-core.c    Sylwester Nawrocki 
2012-01-30  815   fimc_clk_put(fimc);
bd7d8888e99d67 drivers/media/video/s5p-fimc/fimc-core.c    Sylwester Nawrocki 
2012-01-30  816   dev_err(&fimc->pdev->dev, "failed to get clock: %s\n",
bd7d8888e99d67 drivers/media/video/s5p-fimc/fimc-core.c    Sylwester Nawrocki 
2012-01-30  817           fimc_clocks[i]);
bd7d8888e99d67 drivers/media/video/s5p-fimc/fimc-core.c    Sylwester Nawrocki 
2012-01-30  818   return -ENXIO;
e9e21083ef9361 drivers/media/video/s5p-fimc/fimc-core.c    Sylwester Nawrocki 
2011-09-02  819  }
e9e21083ef9361 drivers/media/video/s5p-fimc/fimc-core.c    Sylwester Nawrocki 
2011-09-02  820  

:::::: The code at line 803 was first introduced by commit
:::::: b71b56b264ae27f32784973d15bfdfbc7df6d579 [media] s5p-fimc: Check return 
value of clk_enable/clk_set_rate

:::::: TO: Sylwester Nawrocki <s.nawro...@samsung.com>
:::::: CC: Mauro Carvalho Chehab <mche...@redhat.com>

-- 
0-DAY CI Kernel Test Service
https://01.org/lkp
_______________________________________________
kbuild mailing list -- kbuild@lists.01.org
To unsubscribe send an email to kbuild-le...@lists.01.org

Reply via email to