All of lore.kernel.org
 help / color / mirror / Atom feed
* drivers/net/ethernet/xilinx/ll_temac_main.c:1257:10: warning: Call to function 'sprintf' is insecure as it does not provide bounding of the memory buffer or security checks introduced in the C11 standard. Replace with analogous functions that support leng...
@ 2022-04-07 12:19 kernel test robot
  0 siblings, 0 replies; 2+ messages in thread
From: kernel test robot @ 2022-04-07 12:19 UTC (permalink / raw)
  To: kbuild

[-- Attachment #1: Type: text/plain, Size: 34138 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: Arnd Bergmann <arnd@arndb.de>
CC: Masahiro Yamada <masahiroy@kernel.org>
CC: Alex Shi <alexs@kernel.org>
CC: Nick Desaulniers <ndesaulniers@google.com>
CC: Miguel Ojeda <ojeda@kernel.org>
CC: Nathan Chancellor <nathan@kernel.org>

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   3e732ebf7316ac83e8562db7e64cc68aec390a18
commit: e8c07082a810fbb9db303a2b66b66b8d7e588b53 Kbuild: move to -std=gnu11
date:   4 weeks ago
:::::: branch date: 2 days ago
:::::: commit date: 4 weeks ago
config: arm-randconfig-c002-20220405 (https://download.01.org/0day-ci/archive/20220407/202204072012.B5Q31TQt-lkp(a)intel.com/config)
compiler: clang version 15.0.0 (https://github.com/llvm/llvm-project c4a1b07d0979e7ff20d7d541af666d822d66b566)
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=e8c07082a810fbb9db303a2b66b66b8d7e588b53
        git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
        git fetch --no-tags linus master
        git checkout e8c07082a810fbb9db303a2b66b66b8d7e588b53
        # save the config file to linux build tree
        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 >>)
           return sprintf(buf, "%d\n", TEMP_FROM_REG(data->zone[nr].limit) +
                  ^~~~~~~
   drivers/hwmon/lm85.c:1252:9: warning: Call to function 'sprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
           return sprintf(buf, "%d\n", TEMP_FROM_REG(data->zone[nr].critical));
                  ^~~~~~~
   drivers/hwmon/lm85.c:1252:9: note: Call to function 'sprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11
           return sprintf(buf, "%d\n", TEMP_FROM_REG(data->zone[nr].critical));
                  ^~~~~~~
   drivers/hwmon/lm85.c:1469:6: warning: Value stored to 'address' during its initialization is never read [clang-analyzer-deadcode.DeadStores]
           int address = client->addr;
               ^~~~~~~   ~~~~~~~~~~~~
   drivers/hwmon/lm85.c:1469:6: note: Value stored to 'address' during its initialization is never read
           int address = client->addr;
               ^~~~~~~   ~~~~~~~~~~~~
   Suppressed 41 warnings (41 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.
   46 warnings generated.
   drivers/hwmon/adm1029.c:164:9: warning: Call to function 'sprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
           return sprintf(buf, "%d\n", TEMP_FROM_REG(data->temp[attr->index]));
                  ^~~~~~~
   drivers/hwmon/adm1029.c:164:9: note: Call to function 'sprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11
           return sprintf(buf, "%d\n", TEMP_FROM_REG(data->temp[attr->index]));
                  ^~~~~~~
   drivers/hwmon/adm1029.c:177:10: warning: Call to function 'sprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
                   return sprintf(buf, "0\n");
                          ^~~~~~~
   drivers/hwmon/adm1029.c:177:10: note: Call to function 'sprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11
                   return sprintf(buf, "0\n");
                          ^~~~~~~
   drivers/hwmon/adm1029.c:182:9: warning: Call to function 'sprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
           return sprintf(buf, "%d\n", val);
                  ^~~~~~~
   drivers/hwmon/adm1029.c:182:9: note: Call to function 'sprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11
           return sprintf(buf, "%d\n", val);
                  ^~~~~~~
   drivers/hwmon/adm1029.c:192:10: warning: Call to function 'sprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
                   return sprintf(buf, "0\n");
                          ^~~~~~~
   drivers/hwmon/adm1029.c:192:10: note: Call to function 'sprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11
                   return sprintf(buf, "0\n");
                          ^~~~~~~
   drivers/hwmon/adm1029.c:193:9: warning: Call to function 'sprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
           return sprintf(buf, "%d\n", DIV_FROM_REG(data->fan_div[attr->index]));
                  ^~~~~~~
   drivers/hwmon/adm1029.c:193:9: note: Call to function 'sprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11
           return sprintf(buf, "%d\n", DIV_FROM_REG(data->fan_div[attr->index]));
                  ^~~~~~~
   Suppressed 41 warnings (41 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.
   44 warnings generated.
   drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_plane.c:591:5: warning: The result of the left shift is undefined because the left operand is negative [clang-analyzer-core.UndefinedBinaryOperatorResult]
                                   ATMEL_HLCDC_LAYER_DISC_SIZE(state->disc_w,
                                   ^
   drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_dc.h:115:67: note: expanded from macro 'ATMEL_HLCDC_LAYER_DISC_SIZE'
   #define ATMEL_HLCDC_LAYER_DISC_SIZE(w, h)       (((w) - 1) | (((h) - 1) << 16))
                                                                           ^
   drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_plane.c:743:6: note: Assuming field 'crtc' is non-null
           if (!new_s->crtc || !new_s->fb)
               ^~~~~~~~~~~~
   drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_plane.c:743:6: note: Left side of '||' is false
   drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_plane.c:743:22: note: Assuming field 'fb' is non-null
           if (!new_s->crtc || !new_s->fb)
                               ^~~~~~~~~~
   drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_plane.c:743:2: note: Taking false branch
           if (!new_s->crtc || !new_s->fb)
           ^
   drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_plane.c:746:6: note: Assuming field 'visible' is true
           if (!hstate->base.visible) {
               ^~~~~~~~~~~~~~~~~~~~~
   drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_plane.c:746:2: note: Taking false branch
           if (!hstate->base.visible) {
           ^
   drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_plane.c:756:2: note: Calling 'atmel_hlcdc_plane_update_disc_area'
           atmel_hlcdc_plane_update_disc_area(plane, hstate);
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_plane.c:583:6: note: Assuming field 'disc_pos' is not equal to 0
           if (!layout->disc_pos || !layout->disc_size)
               ^~~~~~~~~~~~~~~~~
   drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_plane.c:583:6: note: Left side of '||' is false
   drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_plane.c:583:27: note: Assuming field 'disc_size' is not equal to 0
           if (!layout->disc_pos || !layout->disc_size)
                                    ^~~~~~~~~~~~~~~~~~
   drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_plane.c:583:2: note: Taking false branch
           if (!layout->disc_pos || !layout->disc_size)
           ^
   drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_plane.c:591:5: note: The result of the left shift is undefined because the left operand is negative
                                   ATMEL_HLCDC_LAYER_DISC_SIZE(state->disc_w,
                                   ^
   drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_dc.h:115:67: note: expanded from macro 'ATMEL_HLCDC_LAYER_DISC_SIZE'
   #define ATMEL_HLCDC_LAYER_DISC_SIZE(w, h)       (((w) - 1) | (((h) - 1) << 16))
                                                                 ~~~~~~~~~ ^
   drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_plane.c:819:39: warning: Value stored to 'desc' during its initialization is never read [clang-analyzer-deadcode.DeadStores]
           const struct atmel_hlcdc_layer_desc *desc = plane->layer.desc;
                                                ^~~~   ~~~~~~~~~~~~~~~~~
   drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_plane.c:819:39: note: Value stored to 'desc' during its initialization is never read
           const struct atmel_hlcdc_layer_desc *desc = plane->layer.desc;
                                                ^~~~   ~~~~~~~~~~~~~~~~~
   Suppressed 42 warnings (42 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.
   74 warnings generated.
>> drivers/net/ethernet/xilinx/ll_temac_main.c:1257:10: warning: Call to function 'sprintf' is insecure as it does not provide bounding of the memory buffer or security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
                   len += sprintf(buf + len, "%.8x%s", lp->dma_in(lp, i),
                          ^~~~~~~
   drivers/net/ethernet/xilinx/ll_temac_main.c:1257:10: note: Call to function 'sprintf' is insecure as it does not provide bounding of the memory buffer or security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11
                   len += sprintf(buf + len, "%.8x%s", lp->dma_in(lp, i),
                          ^~~~~~~
   drivers/net/ethernet/xilinx/ll_temac_main.c:1259:9: warning: Call to function 'sprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
           len += sprintf(buf + len, "\n");
                  ^~~~~~~
   drivers/net/ethernet/xilinx/ll_temac_main.c:1259:9: note: Call to function 'sprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11
           len += sprintf(buf + len, "\n");
                  ^~~~~~~
   drivers/net/ethernet/xilinx/ll_temac_main.c:1595:3: warning: Call to function 'snprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'snprintf_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
                   snprintf(lp->phy_name, sizeof(lp->phy_name),
                   ^~~~~~~~
   drivers/net/ethernet/xilinx/ll_temac_main.c:1595:3: note: Call to function 'snprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'snprintf_s' in case of C11
                   snprintf(lp->phy_name, sizeof(lp->phy_name),
                   ^~~~~~~~
   Suppressed 71 warnings (71 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.
   28 warnings generated.
   Suppressed 28 warnings (28 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.
   14 warnings generated.
   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.
   14 warnings generated.
   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.
   15 warnings generated.
   drivers/char/hw_random/ixp4xx-rng.c:44:17: warning: Value stored to 'dev' during its initialization is never read [clang-analyzer-deadcode.DeadStores]
           struct device *dev = &pdev->dev;
                          ^~~   ~~~~~~~~~~
   drivers/char/hw_random/ixp4xx-rng.c:44:17: note: Value stored to 'dev' during its initialization is never read
           struct device *dev = &pdev->dev;
                          ^~~   ~~~~~~~~~~
   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.
   14 warnings generated.
   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.
   41 warnings generated.
   Suppressed 41 warnings (41 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.
   14 warnings generated.
   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.
   14 warnings generated.
   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.
   42 warnings generated.
   Suppressed 42 warnings (41 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.
   42 warnings generated.
   Suppressed 42 warnings (42 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/hwmon/da9055-hwmon.c:166:9: warning: Call to function 'sprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
           return sprintf(buf, "%d\n", volt_reg_to_mv(adc, channel));
                  ^~~~~~~
   drivers/hwmon/da9055-hwmon.c:166:9: note: Call to function 'sprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11
           return sprintf(buf, "%d\n", volt_reg_to_mv(adc, channel));
                  ^~~~~~~
   drivers/hwmon/da9055-hwmon.c:194:9: warning: Call to function 'sprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
           return sprintf(buf, "%d\n", DIV_ROUND_CLOSEST(-4084 * (tjunc - toffset)
                  ^~~~~~~
   drivers/hwmon/da9055-hwmon.c:194:9: note: Call to function 'sprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11
           return sprintf(buf, "%d\n", DIV_ROUND_CLOSEST(-4084 * (tjunc - toffset)
                  ^~~~~~~
>> drivers/hwmon/da9055-hwmon.c:201:9: warning: Call to function 'sprintf' is insecure as it does not provide bounding of the memory buffer or security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
           return sprintf(buf, "%s\n",
                  ^~~~~~~
   drivers/hwmon/da9055-hwmon.c:201:9: note: Call to function 'sprintf' is insecure as it does not provide bounding of the memory buffer or security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11
           return sprintf(buf, "%s\n",
                  ^~~~~~~
   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.
   49 warnings generated.
   drivers/hwmon/dme1737.c:827:9: warning: Call to function 'sprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
           return sprintf(buf, "%d\n", res);
                  ^~~~~~~
   drivers/hwmon/dme1737.c:827:9: note: Call to function 'sprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11
           return sprintf(buf, "%d\n", res);
                  ^~~~~~~
   drivers/hwmon/dme1737.c:911:9: warning: Call to function 'sprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
           return sprintf(buf, "%d\n", res);
                  ^~~~~~~
   drivers/hwmon/dme1737.c:911:9: note: Call to function 'sprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11
           return sprintf(buf, "%d\n", res);
                  ^~~~~~~
   drivers/hwmon/dme1737.c:1003:9: warning: Call to function 'sprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
           return sprintf(buf, "%d\n", res);
                  ^~~~~~~
   drivers/hwmon/dme1737.c:1003:9: note: Call to function 'sprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11
           return sprintf(buf, "%d\n", res);
                  ^~~~~~~
   drivers/hwmon/dme1737.c:1117:9: warning: Call to function 'sprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
           return sprintf(buf, "%d\n", res);
                  ^~~~~~~
   drivers/hwmon/dme1737.c:1117:9: note: Call to function 'sprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11
           return sprintf(buf, "%d\n", res);
                  ^~~~~~~
   drivers/hwmon/dme1737.c:1253:9: warning: Call to function 'sprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
           return sprintf(buf, "%d\n", res);
                  ^~~~~~~
   drivers/hwmon/dme1737.c:1253:9: note: Call to function 'sprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11
           return sprintf(buf, "%d\n", res);
                  ^~~~~~~
   drivers/hwmon/dme1737.c:1468:9: warning: Call to function 'sprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
           return sprintf(buf, "%d\n", data->vrm);
                  ^~~~~~~
   drivers/hwmon/dme1737.c:1468:9: note: Call to function 'sprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11
           return sprintf(buf, "%d\n", data->vrm);
                  ^~~~~~~
   drivers/hwmon/dme1737.c:1494:9: warning: Call to function 'sprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
           return sprintf(buf, "%d\n", vid_from_reg(data->vid, data->vrm));
                  ^~~~~~~
   drivers/hwmon/dme1737.c:1494:9: note: Call to function 'sprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11
           return sprintf(buf, "%d\n", vid_from_reg(data->vid, data->vrm));
                  ^~~~~~~
   drivers/hwmon/dme1737.c:1502:9: warning: Call to function 'sprintf' is insecure as it does not provide bounding of the memory buffer or security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
           return sprintf(buf, "%s\n", data->name);
                  ^~~~~~~
   drivers/hwmon/dme1737.c:1502:9: note: Call to function 'sprintf' is insecure as it does not provide bounding of the memory buffer or security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11
           return sprintf(buf, "%s\n", data->name);
                  ^~~~~~~
   Suppressed 41 warnings (41 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.
   57 warnings generated.
   drivers/hwmon/lm87.c:272:9: warning: Call to function 'sprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
           return sprintf(buf, "%u\n", IN_FROM_REG(data->in[nr],
                  ^~~~~~~
   drivers/hwmon/lm87.c:272:9: note: Call to function 'sprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11
           return sprintf(buf, "%u\n", IN_FROM_REG(data->in[nr],
                  ^~~~~~~
   drivers/hwmon/lm87.c:282:9: warning: Call to function 'sprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
           return sprintf(buf, "%u\n", IN_FROM_REG(data->in_min[nr],
                  ^~~~~~~
   drivers/hwmon/lm87.c:282:9: note: Call to function 'sprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11
           return sprintf(buf, "%u\n", IN_FROM_REG(data->in_min[nr],
                  ^~~~~~~
   drivers/hwmon/lm87.c:292:9: warning: Call to function 'sprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
           return sprintf(buf, "%u\n", IN_FROM_REG(data->in_max[nr],
                  ^~~~~~~
   drivers/hwmon/lm87.c:292:9: note: Call to function 'sprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11
           return sprintf(buf, "%u\n", IN_FROM_REG(data->in_max[nr],
                  ^~~~~~~
   drivers/hwmon/lm87.c:369:9: warning: Call to function 'sprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
           return sprintf(buf, "%d\n", TEMP_FROM_REG(data->temp[nr]));
                  ^~~~~~~
   drivers/hwmon/lm87.c:369:9: note: Call to function 'sprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11
           return sprintf(buf, "%d\n", TEMP_FROM_REG(data->temp[nr]));
                  ^~~~~~~
   drivers/hwmon/lm87.c:378:9: warning: Call to function 'sprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
           return sprintf(buf, "%d\n",
                  ^~~~~~~
   drivers/hwmon/lm87.c:378:9: note: Call to function 'sprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11
           return sprintf(buf, "%d\n",
                  ^~~~~~~
   drivers/hwmon/lm87.c:388:9: warning: Call to function 'sprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
           return sprintf(buf, "%d\n",
                  ^~~~~~~
   drivers/hwmon/lm87.c:388:9: note: Call to function 'sprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11
           return sprintf(buf, "%d\n",
                  ^~~~~~~
   drivers/hwmon/lm87.c:448:9: warning: Call to function 'sprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
           return sprintf(buf, "%d\n", TEMP_FROM_REG(data->temp_crit_int));
                  ^~~~~~~
   drivers/hwmon/lm87.c:448:9: note: Call to function 'sprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11
           return sprintf(buf, "%d\n", TEMP_FROM_REG(data->temp_crit_int));

vim +1257 drivers/net/ethernet/xilinx/ll_temac_main.c

92744989533cbe8 drivers/net/ll_temac_main.c Grant Likely 2009-04-25  1245  
92744989533cbe8 drivers/net/ll_temac_main.c Grant Likely 2009-04-25  1246  /* ---------------------------------------------------------------------
92744989533cbe8 drivers/net/ll_temac_main.c Grant Likely 2009-04-25  1247   * SYSFS device attributes
92744989533cbe8 drivers/net/ll_temac_main.c Grant Likely 2009-04-25  1248   */
92744989533cbe8 drivers/net/ll_temac_main.c Grant Likely 2009-04-25  1249  static ssize_t temac_show_llink_regs(struct device *dev,
92744989533cbe8 drivers/net/ll_temac_main.c Grant Likely 2009-04-25  1250  				     struct device_attribute *attr, char *buf)
92744989533cbe8 drivers/net/ll_temac_main.c Grant Likely 2009-04-25  1251  {
92744989533cbe8 drivers/net/ll_temac_main.c Grant Likely 2009-04-25  1252  	struct net_device *ndev = dev_get_drvdata(dev);
92744989533cbe8 drivers/net/ll_temac_main.c Grant Likely 2009-04-25  1253  	struct temac_local *lp = netdev_priv(ndev);
92744989533cbe8 drivers/net/ll_temac_main.c Grant Likely 2009-04-25  1254  	int i, len = 0;
92744989533cbe8 drivers/net/ll_temac_main.c Grant Likely 2009-04-25  1255  
92744989533cbe8 drivers/net/ll_temac_main.c Grant Likely 2009-04-25  1256  	for (i = 0; i < 0x11; i++)
e44171f115de3de drivers/net/ll_temac_main.c John Linn    2010-04-08 @1257  		len += sprintf(buf + len, "%.8x%s", lp->dma_in(lp, i),
92744989533cbe8 drivers/net/ll_temac_main.c Grant Likely 2009-04-25  1258  			       (i % 8) == 7 ? "\n" : " ");
92744989533cbe8 drivers/net/ll_temac_main.c Grant Likely 2009-04-25  1259  	len += sprintf(buf + len, "\n");
92744989533cbe8 drivers/net/ll_temac_main.c Grant Likely 2009-04-25  1260  
92744989533cbe8 drivers/net/ll_temac_main.c Grant Likely 2009-04-25  1261  	return len;
92744989533cbe8 drivers/net/ll_temac_main.c Grant Likely 2009-04-25  1262  }
92744989533cbe8 drivers/net/ll_temac_main.c Grant Likely 2009-04-25  1263  

:::::: The code at line 1257 was first introduced by commit
:::::: e44171f115de3dedf34064646206deb91549865f Add non-Virtex5 support for LL TEMAC driver

:::::: TO: John Linn <john.linn@xilinx.com>
:::::: CC: David S. Miller <davem@davemloft.net>

-- 
0-DAY CI Kernel Test Service
https://01.org/lkp

^ permalink raw reply	[flat|nested] 2+ messages in thread

* drivers/net/ethernet/xilinx/ll_temac_main.c:1257:10: warning: Call to function 'sprintf' is insecure as it does not provide bounding of the memory buffer or security checks introduced in the C11 standard. Replace with analogous functions that support leng...
@ 2022-03-31 13:41 kernel test robot
  0 siblings, 0 replies; 2+ messages in thread
From: kernel test robot @ 2022-03-31 13:41 UTC (permalink / raw)
  To: kbuild

[-- Attachment #1: Type: text/plain, Size: 59927 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: Arnd Bergmann <arnd@arndb.de>
CC: Masahiro Yamada <masahiroy@kernel.org>
CC: Alex Shi <alexs@kernel.org>
CC: Nick Desaulniers <ndesaulniers@google.com>
CC: Miguel Ojeda <ojeda@kernel.org>
CC: Nathan Chancellor <nathan@kernel.org>

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   787af64d05cd528aac9ad16752d11bb1c6061bb9
commit: e8c07082a810fbb9db303a2b66b66b8d7e588b53 Kbuild: move to -std=gnu11
date:   3 weeks ago
:::::: branch date: 15 hours ago
:::::: commit date: 3 weeks ago
config: arm-randconfig-c002-20220330 (https://download.01.org/0day-ci/archive/20220331/202203312148.3VraxWAr-lkp(a)intel.com/config)
compiler: clang version 15.0.0 (https://github.com/llvm/llvm-project 0f6d9501cf49ce02937099350d08f20c4af86f3d)
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=e8c07082a810fbb9db303a2b66b66b8d7e588b53
        git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
        git fetch --no-tags linus master
        git checkout e8c07082a810fbb9db303a2b66b66b8d7e588b53
        # save the config file to linux build tree
        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 >>)
           ^~~~~~
   lib/memcpy_kunit.c:270:2: warning: Call to function 'memset' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'memset_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
           memset_startat(&dest, 0x79, four);
           ^
   include/linux/string.h:290:2: note: expanded from macro 'memset_startat'
           memset(__ptr + offsetof(typeof(*(obj)), member), __val,         \
           ^~~~~~
   lib/memcpy_kunit.c:270:2: note: Call to function 'memset' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'memset_s' in case of C11
           memset_startat(&dest, 0x79, four);
           ^
   include/linux/string.h:290:2: note: expanded from macro 'memset_startat'
           memset(__ptr + offsetof(typeof(*(obj)), member), __val,         \
           ^~~~~~
   Suppressed 30 warnings (30 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.
   32 warnings generated.
   drivers/char/xillybus/xillybus_class.c:66:3: warning: Call to function 'snprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'snprintf_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
                   snprintf(unit->name, UNITNAMELEN, "%s", prefix);
                   ^~~~~~~~
   drivers/char/xillybus/xillybus_class.c:66:3: note: Call to function 'snprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'snprintf_s' in case of C11
                   snprintf(unit->name, UNITNAMELEN, "%s", prefix);
                   ^~~~~~~~
   drivers/char/xillybus/xillybus_class.c:69:3: warning: Call to function 'snprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'snprintf_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
                   snprintf(unit->name, UNITNAMELEN, "%s_%02d",
                   ^~~~~~~~
   drivers/char/xillybus/xillybus_class.c:69:3: note: Call to function 'snprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'snprintf_s' in case of C11
                   snprintf(unit->name, UNITNAMELEN, "%s_%02d",
                   ^~~~~~~~
   drivers/char/xillybus/xillybus_class.c:118:3: warning: Call to function 'snprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'snprintf_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
                   snprintf(devname, sizeof(devname), "%s_%s",
                   ^~~~~~~~
   drivers/char/xillybus/xillybus_class.c:118:3: note: Call to function 'snprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'snprintf_s' in case of C11
                   snprintf(devname, sizeof(devname), "%s_%s",
                   ^~~~~~~~
   Suppressed 29 warnings (29 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.
   30 warnings generated.
   Suppressed 30 warnings (30 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.
   70 warnings generated.
   Suppressed 70 warnings (70 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.
   65 warnings generated.
   Suppressed 65 warnings (65 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.
   79 warnings generated.
   include/linux/etherdevice.h:128:2: warning: Assigned value is garbage or undefined [clang-analyzer-core.uninitialized.Assign]
           u16 a = *(const u16 *)addr;
           ^
   net/llc/llc_sap.c:425:2: note: Calling 'llc_pdu_decode_da'
           llc_pdu_decode_da(skb, laddr.mac);
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/net/llc_pdu.h:278:6: note: Assuming the condition is false
           if (skb->protocol == htons(ETH_P_802_2))
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/net/llc_pdu.h:278:2: note: Taking false branch
           if (skb->protocol == htons(ETH_P_802_2))
           ^
   net/llc/llc_sap.c:425:2: note: Returning from 'llc_pdu_decode_da'
           llc_pdu_decode_da(skb, laddr.mac);
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   net/llc/llc_sap.c:428:6: note: Calling 'is_multicast_ether_addr'
           if (is_multicast_ether_addr(laddr.mac)) {
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/etherdevice.h:128:2: note: Assigned value is garbage or undefined
           u16 a = *(const u16 *)addr;
           ^       ~~~~~~~~~~~~~~~~~~
   net/llc/llc_sap.c:77:2: warning: Call to function 'memset' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'memset_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
           memset(addr, 0, sizeof(*addr));
           ^~~~~~
   net/llc/llc_sap.c:77:2: note: Call to function 'memset' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'memset_s' in case of C11
           memset(addr, 0, sizeof(*addr));
           ^~~~~~
   net/llc/llc_sap.c:238:2: warning: Call to function 'memcpy' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'memcpy_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
           memcpy(ev->saddr.mac, skb->dev->dev_addr, IFHWADDRLEN);
           ^~~~~~
   net/llc/llc_sap.c:238:2: note: Call to function 'memcpy' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'memcpy_s' in case of C11
           memcpy(ev->saddr.mac, skb->dev->dev_addr, IFHWADDRLEN);
           ^~~~~~
   net/llc/llc_sap.c:239:2: warning: Call to function 'memcpy' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'memcpy_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
           memcpy(ev->daddr.mac, dmac, IFHWADDRLEN);
           ^~~~~~
   net/llc/llc_sap.c:239:2: note: Call to function 'memcpy' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'memcpy_s' in case of C11
           memcpy(ev->daddr.mac, dmac, IFHWADDRLEN);
           ^~~~~~
   net/llc/llc_sap.c:264:2: warning: Call to function 'memcpy' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'memcpy_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
           memcpy(ev->saddr.mac, skb->dev->dev_addr, IFHWADDRLEN);
           ^~~~~~
   net/llc/llc_sap.c:264:2: note: Call to function 'memcpy' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'memcpy_s' in case of C11
           memcpy(ev->saddr.mac, skb->dev->dev_addr, IFHWADDRLEN);
           ^~~~~~
   net/llc/llc_sap.c:265:2: warning: Call to function 'memcpy' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'memcpy_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
           memcpy(ev->daddr.mac, dmac, IFHWADDRLEN);
           ^~~~~~
   net/llc/llc_sap.c:265:2: note: Call to function 'memcpy' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'memcpy_s' in case of C11
           memcpy(ev->daddr.mac, dmac, IFHWADDRLEN);
           ^~~~~~
   Suppressed 73 warnings (73 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.
   75 warnings generated.
>> drivers/net/ethernet/xilinx/ll_temac_main.c:1257:10: warning: Call to function 'sprintf' is insecure as it does not provide bounding of the memory buffer or security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
                   len += sprintf(buf + len, "%.8x%s", lp->dma_in(lp, i),
                          ^~~~~~~
   drivers/net/ethernet/xilinx/ll_temac_main.c:1257:10: note: Call to function 'sprintf' is insecure as it does not provide bounding of the memory buffer or security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11
                   len += sprintf(buf + len, "%.8x%s", lp->dma_in(lp, i),
                          ^~~~~~~
   drivers/net/ethernet/xilinx/ll_temac_main.c:1259:9: warning: Call to function 'sprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
           len += sprintf(buf + len, "\n");
                  ^~~~~~~
   drivers/net/ethernet/xilinx/ll_temac_main.c:1259:9: note: Call to function 'sprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11
           len += sprintf(buf + len, "\n");
                  ^~~~~~~
   drivers/net/ethernet/xilinx/ll_temac_main.c:1595:3: warning: Call to function 'snprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'snprintf_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
                   snprintf(lp->phy_name, sizeof(lp->phy_name),
                   ^~~~~~~~
   drivers/net/ethernet/xilinx/ll_temac_main.c:1595:3: note: Call to function 'snprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'snprintf_s' in case of C11
                   snprintf(lp->phy_name, sizeof(lp->phy_name),
                   ^~~~~~~~
   Suppressed 72 warnings (72 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.
   44 warnings generated.
   fs/hpfs/super.c:589:8: warning: Although the value stored to 'bootblock' is used in the enclosing expression, the value is never actually read from 'bootblock' [clang-analyzer-deadcode.DeadStores]
           if (!(bootblock = hpfs_map_sector(s, 0, &bh0, 0))) goto bail1;
                 ^           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   fs/hpfs/super.c:589:8: note: Although the value stored to 'bootblock' is used in the enclosing expression, the value is never actually read from 'bootblock'
           if (!(bootblock = hpfs_map_sector(s, 0, &bh0, 0))) goto bail1;
                 ^           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   Suppressed 43 warnings (43 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.
   46 warnings generated.
   fs/ntfs/aops.c:83:4: warning: Call to function 'memset' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'memset_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
                           memset(kaddr + bh_offset(bh) + ofs, 0,
                           ^~~~~~
   fs/ntfs/aops.c:83:4: note: Call to function 'memset' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'memset_s' in case of C11
                           memset(kaddr + bh_offset(bh) + ofs, 0,
                           ^~~~~~
   fs/ntfs/aops.c:488:2: warning: Call to function 'memcpy' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'memcpy_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
           memcpy(addr, (u8*)ctx->attr +
           ^~~~~~
   fs/ntfs/aops.c:488:2: note: Call to function 'memcpy' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'memcpy_s' in case of C11
           memcpy(addr, (u8*)ctx->attr +
           ^~~~~~
   fs/ntfs/aops.c:492:2: warning: Call to function 'memset' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'memset_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
           memset(addr + attr_len, 0, PAGE_SIZE - attr_len);
           ^~~~~~
   fs/ntfs/aops.c:492:2: note: Call to function 'memset' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'memset_s' in case of C11
           memset(addr + attr_len, 0, PAGE_SIZE - attr_len);
           ^~~~~~
   Suppressed 43 warnings (43 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.
   32 warnings generated.
   lib/test_lockup.c:231:32: warning: The right operand of '-' is a garbage value [clang-analyzer-core.UndefinedBinaryOperatorResult]
                   s64 cur_wait = local_clock() - wait_start;
                                                ^ ~~~~~~~~~~
   lib/test_lockup.c:171:2: note: 'wait_start' declared without an initial value
           u64 wait_start;
           ^~~~~~~~~~~~~~
   lib/test_lockup.c:173:6: note: Assuming 'measure_lock_wait' is false
           if (measure_lock_wait)
               ^~~~~~~~~~~~~~~~~
   lib/test_lockup.c:173:2: note: Taking false branch
           if (measure_lock_wait)
           ^
   lib/test_lockup.c:176:6: note: Assuming 'lock_mutex_ptr' is not equal to 0
           if (lock_mutex_ptr && master) {
               ^~~~~~~~~~~~~~
   lib/test_lockup.c:176:6: note: Left side of '&&' is true
   lib/test_lockup.c:176:24: note: Assuming 'master' is true
           if (lock_mutex_ptr && master) {
                                 ^~~~~~
   lib/test_lockup.c:176:2: note: Taking true branch
           if (lock_mutex_ptr && master) {
           ^
   lib/test_lockup.c:177:7: note: Assuming 'verbose' is false
                   if (verbose)
                       ^~~~~~~
   lib/test_lockup.c:177:3: note: Taking false branch
                   if (verbose)
                   ^
   lib/test_lockup.c:182:6: note: Assuming 'lock_rwsem_ptr' is 0
           if (lock_rwsem_ptr && master) {
               ^~~~~~~~~~~~~~
   lib/test_lockup.c:182:21: note: Left side of '&&' is false
           if (lock_rwsem_ptr && master) {
                              ^
   lib/test_lockup.c:192:6: note: Assuming 'lock_mmap_sem' is false
           if (lock_mmap_sem && master) {
               ^~~~~~~~~~~~~
   lib/test_lockup.c:192:20: note: Left side of '&&' is false
           if (lock_mmap_sem && master) {
                             ^
   lib/test_lockup.c:201:6: note: Assuming 'test_disable_irq' is false
           if (test_disable_irq)
               ^~~~~~~~~~~~~~~~
   lib/test_lockup.c:201:2: note: Taking false branch
           if (test_disable_irq)
           ^
   lib/test_lockup.c:204:6: note: Assuming 'disable_softirq' is false
           if (disable_softirq)
               ^~~~~~~~~~~~~~~
   lib/test_lockup.c:204:2: note: Taking false branch
--
                                               ^
   drivers/clk/clk-divider.c:378:14: note: Taking true branch
           req->rate = DIV_ROUND_UP_ULL((u64)req->best_parent_rate, div);
                       ^
   include/linux/math.h:42:2: note: expanded from macro 'DIV_ROUND_UP_ULL'
           DIV_ROUND_DOWN_ULL((unsigned long long)(ll) + (d) - 1, (d))
           ^
   include/linux/math.h:39:37: note: expanded from macro 'DIV_ROUND_DOWN_ULL'
           ({ unsigned long long _tmp = (ll); do_div(_tmp, d); _tmp; })
                                              ^
   include/asm-generic/div64.h:234:9: note: expanded from macro 'do_div'
           } else if (likely(((n) >> 32) == 0)) {          \
                  ^
   drivers/clk/clk-divider.c:378:14: note: Division by zero
           req->rate = DIV_ROUND_UP_ULL((u64)req->best_parent_rate, div);
                       ^
   include/linux/math.h:42:2: note: expanded from macro 'DIV_ROUND_UP_ULL'
           DIV_ROUND_DOWN_ULL((unsigned long long)(ll) + (d) - 1, (d))
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/math.h:39:37: note: expanded from macro 'DIV_ROUND_DOWN_ULL'
           ({ unsigned long long _tmp = (ll); do_div(_tmp, d); _tmp; })
                                              ^~~~~~~~~~~~~~~
   include/asm-generic/div64.h:235:25: note: expanded from macro 'do_div'
                   __rem = (uint32_t)(n) % __base;         \
                           ~~~~~~~~~~~~~~^~~~~~~~
   include/linux/log2.h:67:13: warning: The result of the left shift is undefined due to shifting by '4294967295', which is greater or equal to the width of type 'unsigned long' [clang-analyzer-core.UndefinedBinaryOperatorResult]
           return 1UL << (fls_long(n) - 1);
                      ^
   drivers/clk/clk-divider.c:240:7: note: Left side of '&&' is false
           up = DIV_ROUND_UP_ULL((u64)parent_rate, rate);
                ^
   include/linux/math.h:42:2: note: expanded from macro 'DIV_ROUND_UP_ULL'
           DIV_ROUND_DOWN_ULL((unsigned long long)(ll) + (d) - 1, (d))
           ^
   include/linux/math.h:39:37: note: expanded from macro 'DIV_ROUND_DOWN_ULL'
           ({ unsigned long long _tmp = (ll); do_div(_tmp, d); _tmp; })
                                              ^
   include/asm-generic/div64.h:223:35: note: expanded from macro 'do_div'
           if (__builtin_constant_p(__base) &&             \
                                            ^
   drivers/clk/clk-divider.c:240:7: note: Left side of '&&' is false
           up = DIV_ROUND_UP_ULL((u64)parent_rate, rate);
                ^
   include/linux/math.h:42:2: note: expanded from macro 'DIV_ROUND_UP_ULL'
           DIV_ROUND_DOWN_ULL((unsigned long long)(ll) + (d) - 1, (d))
           ^
   include/linux/math.h:39:37: note: expanded from macro 'DIV_ROUND_DOWN_ULL'
           ({ unsigned long long _tmp = (ll); do_div(_tmp, d); _tmp; })
                                              ^
   include/asm-generic/div64.h:227:42: note: expanded from macro 'do_div'
           } else if (__builtin_constant_p(__base) &&      \
                                                   ^
   drivers/clk/clk-divider.c:240:7: note: Assuming the condition is true
           up = DIV_ROUND_UP_ULL((u64)parent_rate, rate);
                ^
   include/linux/math.h:42:2: note: expanded from macro 'DIV_ROUND_UP_ULL'
           DIV_ROUND_DOWN_ULL((unsigned long long)(ll) + (d) - 1, (d))
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/math.h:39:37: note: expanded from macro 'DIV_ROUND_DOWN_ULL'
           ({ unsigned long long _tmp = (ll); do_div(_tmp, d); _tmp; })
                                              ^~~~~~~~~~~~~~~
   include/asm-generic/div64.h:234:20: note: expanded from macro 'do_div'
           } else if (likely(((n) >> 32) == 0)) {          \
                      ~~~~~~~^~~~~~~~~~~~~~~~~
   include/linux/compiler.h:77:40: note: expanded from macro 'likely'
   # define likely(x)      __builtin_expect(!!(x), 1)
                                               ^
   drivers/clk/clk-divider.c:240:7: note: Taking true branch
           up = DIV_ROUND_UP_ULL((u64)parent_rate, rate);
                ^
   include/linux/math.h:42:2: note: expanded from macro 'DIV_ROUND_UP_ULL'
           DIV_ROUND_DOWN_ULL((unsigned long long)(ll) + (d) - 1, (d))
           ^
   include/linux/math.h:39:37: note: expanded from macro 'DIV_ROUND_DOWN_ULL'
           ({ unsigned long long _tmp = (ll); do_div(_tmp, d); _tmp; })
                                              ^
   include/asm-generic/div64.h:234:9: note: expanded from macro 'do_div'
           } else if (likely(((n) >> 32) == 0)) {          \
                  ^
   drivers/clk/clk-divider.c:243:6: note: Assuming the condition is true
           if (flags & CLK_DIVIDER_POWER_OF_TWO) {
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/clk/clk-divider.c:243:2: note: Taking true branch
           if (flags & CLK_DIVIDER_POWER_OF_TWO) {
           ^
   drivers/clk/clk-divider.c:245:10: note: Calling '__rounddown_pow_of_two'
                   down = __rounddown_pow_of_two(down);
                          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/log2.h:67:13: note: The result of the left shift is undefined due to shifting by '4294967295', which is greater or equal to the width of type 'unsigned long'
           return 1UL << (fls_long(n) - 1);
                      ^  ~~~~~~~~~~~~~~~~~
   Suppressed 15 warnings (15 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.
   76 warnings generated.
   drivers/block/nbd.c:226:9: warning: Call to function 'sprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
           return sprintf(buf, "%d\n", nbd->pid);
                  ^~~~~~~
   drivers/block/nbd.c:226:9: note: Call to function 'sprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11
           return sprintf(buf, "%d\n", nbd->pid);
                  ^~~~~~~
>> drivers/block/nbd.c:240:9: warning: Call to function 'sprintf' is insecure as it does not provide bounding of the memory buffer or security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
           return sprintf(buf, "%s\n", nbd->backend ?: "");
                  ^~~~~~~
   drivers/block/nbd.c:240:9: note: Call to function 'sprintf' is insecure as it does not provide bounding of the memory buffer or security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11
           return sprintf(buf, "%s\n", nbd->backend ?: "");
                  ^~~~~~~
   drivers/block/nbd.c:458:28: warning: Array access (via field 'socks') results in a null pointer dereference [clang-analyzer-core.NullDereference]
                   struct nbd_sock *nsock = config->socks[cmd->index];
                                            ^       ~~~~~
   drivers/block/nbd.c:404:6: note: Assuming the condition is false
           if (!mutex_trylock(&cmd->lock))
               ^~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/block/nbd.c:404:2: note: Taking false branch
           if (!mutex_trylock(&cmd->lock))
           ^
   drivers/block/nbd.c:407:7: note: Calling 'arch___test_and_clear_bit'
           if (!__test_and_clear_bit(NBD_CMD_INFLIGHT, &cmd->flags)) {
                ^
   include/asm-generic/bitops/non-atomic.h:95:30: note: expanded from macro '__test_and_clear_bit'
   #define __test_and_clear_bit arch___test_and_clear_bit
                                ^
   include/asm-generic/bitops/non-atomic.h:93:9: note: Assuming the condition is true
           return (old & mask) != 0;
                  ^~~~~~~~~~~~~~~~~
   include/asm-generic/bitops/non-atomic.h:93:2: note: Returning the value 1, which participates in a condition later
           return (old & mask) != 0;
           ^~~~~~~~~~~~~~~~~~~~~~~~
   drivers/block/nbd.c:407:7: note: Returning from 'arch___test_and_clear_bit'
           if (!__test_and_clear_bit(NBD_CMD_INFLIGHT, &cmd->flags)) {
                ^
   include/asm-generic/bitops/non-atomic.h:95:30: note: expanded from macro '__test_and_clear_bit'
   #define __test_and_clear_bit arch___test_and_clear_bit
                                ^
   drivers/block/nbd.c:407:2: note: Taking false branch
           if (!__test_and_clear_bit(NBD_CMD_INFLIGHT, &cmd->flags)) {
           ^
   drivers/block/nbd.c:412:7: note: Calling 'refcount_inc_not_zero'
           if (!refcount_inc_not_zero(&nbd->config_refs)) {
                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/refcount.h:245:9: note: Calling '__refcount_inc_not_zero'
           return __refcount_inc_not_zero(r, NULL);
                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/refcount.h:227:9: note: Value assigned to field 'timeout', which participates in a condition later
           return __refcount_add_not_zero(1, r, oldp);
                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/refcount.h:227:2: note: Returning value, which participates in a condition later
           return __refcount_add_not_zero(1, r, oldp);
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/refcount.h:245:9: note: Returning from '__refcount_inc_not_zero'
           return __refcount_inc_not_zero(r, NULL);
                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/refcount.h:245:2: note: Returning value, which participates in a condition later
           return __refcount_inc_not_zero(r, NULL);
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/block/nbd.c:412:7: note: Returning from 'refcount_inc_not_zero'
           if (!refcount_inc_not_zero(&nbd->config_refs)) {
                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/block/nbd.c:412:6: note: Assuming the condition is false
           if (!refcount_inc_not_zero(&nbd->config_refs)) {
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/block/nbd.c:412:2: note: Taking false branch
           if (!refcount_inc_not_zero(&nbd->config_refs)) {
           ^
   drivers/block/nbd.c:419:6: note: Assuming field 'num_connections' is > 1
           if (config->num_connections > 1 ||
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/block/nbd.c:419:34: note: Left side of '||' is true
           if (config->num_connections > 1 ||
                                           ^
   drivers/block/nbd.c:421:3: note: Assuming the condition is false
                   dev_err_ratelimited(nbd_to_dev(nbd),
                   ^
   include/linux/dev_printk.h:218:2: note: expanded from macro 'dev_err_ratelimited'
           dev_level_ratelimited(dev_err, dev, fmt, ##__VA_ARGS__)
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/dev_printk.h:207:6: note: expanded from macro 'dev_level_ratelimited'
           if (__ratelimit(&_rs))                                          \
               ^~~~~~~~~~~~~~~~~
   include/linux/ratelimit_types.h:41:28: note: expanded from macro '__ratelimit'
   #define __ratelimit(state) ___ratelimit(state, __func__)
                              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/block/nbd.c:421:3: note: Taking false branch
                   dev_err_ratelimited(nbd_to_dev(nbd),
                   ^
   include/linux/dev_printk.h:218:2: note: expanded from macro 'dev_err_ratelimited'
           dev_level_ratelimited(dev_err, dev, fmt, ##__VA_ARGS__)
           ^
   include/linux/dev_printk.h:207:2: note: expanded from macro 'dev_level_ratelimited'
           if (__ratelimit(&_rs))                                          \
           ^
   drivers/block/nbd.c:421:3: note: Loop condition is false.  Exiting loop
                   dev_err_ratelimited(nbd_to_dev(nbd),
                   ^
   include/linux/dev_printk.h:218:2: note: expanded from macro 'dev_err_ratelimited'
           dev_level_ratelimited(dev_err, dev, fmt, ##__VA_ARGS__)
           ^
   include/linux/dev_printk.h:202:59: note: expanded from macro 'dev_level_ratelimited'
   #define dev_level_ratelimited(dev_level, dev, fmt, ...)                 \
                                                                           ^
   drivers/block/nbd.c:431:7: note: Assuming field 'socks' is null
                   if (config->socks) {
--
               ^~~~~~~~
   drivers/scsi/libsas/sas_expander.c:1790:2: note: Taking false branch
           if (!rg_resp) {
           ^
   drivers/scsi/libsas/sas_expander.c:1797:8: note: Calling 'smp_execute_task'
           res = smp_execute_task(dev, rg_req, RG_REQ_SIZE, rg_resp,
                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/scsi/libsas/sas_expander.c:151:2: note: Returning without writing to 'resp->result'
           return smp_execute_task_sg(dev, &req_sg, &resp_sg);
           ^
   drivers/scsi/libsas/sas_expander.c:151:2: note: Returning value, which participates in a condition later
           return smp_execute_task_sg(dev, &req_sg, &resp_sg);
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/scsi/libsas/sas_expander.c:1797:8: note: Returning from 'smp_execute_task'
           res = smp_execute_task(dev, rg_req, RG_REQ_SIZE, rg_resp,
                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/scsi/libsas/sas_expander.c:1799:6: note: Assuming 'res' is 0
           if (res)
               ^~~
   drivers/scsi/libsas/sas_expander.c:1799:2: note: Taking false branch
           if (res)
           ^
   drivers/scsi/libsas/sas_expander.c:1801:22: note: The left operand of '!=' is a garbage value
           if (rg_resp->result != SMP_RESP_FUNC_ACC) {
               ~~~~~~~~~~~~~~~ ^
   drivers/scsi/libsas/sas_expander.c:1903:2: warning: Call to function 'memset' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'memset_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
           memset(phy->attached_sas_addr, 0, SAS_ADDR_SIZE);
           ^~~~~~
   drivers/scsi/libsas/sas_expander.c:1903:2: note: Call to function 'memset' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'memset_s' in case of C11
           memset(phy->attached_sas_addr, 0, SAS_ADDR_SIZE);
           ^~~~~~
   drivers/scsi/libsas/sas_expander.c:2009:3: warning: Call to function 'sprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
                   sprintf(msg, ", part of a wide port with phy%02d", sibling);
                   ^~~~~~~
   drivers/scsi/libsas/sas_expander.c:2009:3: note: Call to function 'sprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11
                   sprintf(msg, ", part of a wide port with phy%02d", sibling);
                   ^~~~~~~
   drivers/scsi/libsas/sas_expander.c:2014:2: warning: Call to function 'memset' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'memset_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
           memset(sas_addr, 0, SAS_ADDR_SIZE);
           ^~~~~~
   drivers/scsi/libsas/sas_expander.c:2014:2: note: Call to function 'memset' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'memset_s' in case of C11
           memset(sas_addr, 0, SAS_ADDR_SIZE);
           ^~~~~~
   Suppressed 45 warnings (45 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.
   64 warnings generated.
   drivers/net/ethernet/samsung/sxgbe/sxgbe_mdio.c:166:2: warning: Call to function 'snprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'snprintf_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
           snprintf(mdio_bus->id, MII_BUS_ID_SIZE, "%s-%x",
           ^~~~~~~~
   drivers/net/ethernet/samsung/sxgbe/sxgbe_mdio.c:166:2: note: Call to function 'snprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'snprintf_s' in case of C11
           snprintf(mdio_bus->id, MII_BUS_ID_SIZE, "%s-%x",
           ^~~~~~~~
   drivers/net/ethernet/samsung/sxgbe/sxgbe_mdio.c:210:5: warning: Call to function 'sprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
                                   sprintf(irq_num, "%d", phy->irq);
                                   ^~~~~~~
   drivers/net/ethernet/samsung/sxgbe/sxgbe_mdio.c:210:5: note: Call to function 'sprintf' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11
                                   sprintf(irq_num, "%d", phy->irq);
                                   ^~~~~~~
   Suppressed 62 warnings (62 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.
   64 warnings generated.
   drivers/net/ethernet/samsung/sxgbe/sxgbe_ethtool.c:202:4: warning: Call to function 'memcpy' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'memcpy_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
                           memcpy(p, sxgbe_gstrings_stats[i].stat_string,
                           ^~~~~~
   drivers/net/ethernet/samsung/sxgbe/sxgbe_ethtool.c:202:4: note: Call to function 'memcpy' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'memcpy_s' in case of C11
                           memcpy(p, sxgbe_gstrings_stats[i].stat_string,
                           ^~~~~~
   drivers/net/ethernet/samsung/sxgbe/sxgbe_ethtool.c:451:2: warning: Call to function 'memset' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'memset_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
           memset(reg_space, 0x0, REG_SPACE_SIZE);
           ^~~~~~
   drivers/net/ethernet/samsung/sxgbe/sxgbe_ethtool.c:451:2: note: Call to function 'memset' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'memset_s' in case of C11
           memset(reg_space, 0x0, REG_SPACE_SIZE);
           ^~~~~~
   Suppressed 62 warnings (62 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.
   107 warnings generated.
   drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:557:3: warning: Call to function 'memset' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'memset_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
                   memset(&shhwtstamp, 0, sizeof(struct skb_shared_hwtstamps));
                   ^~~~~~
   drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:557:3: note: Call to function 'memset' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'memset_s' in case of C11
                   memset(&shhwtstamp, 0, sizeof(struct skb_shared_hwtstamps));
                   ^~~~~~
   drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:596:3: warning: Call to function 'memset' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'memset_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
                   memset(shhwtstamp, 0, sizeof(struct skb_shared_hwtstamps));
                   ^~~~~~
   drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:596:3: note: Call to function 'memset' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'memset_s' in case of C11
                   memset(shhwtstamp, 0, sizeof(struct skb_shared_hwtstamps));
                   ^~~~~~
   drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:794:2: warning: Call to function 'memcpy' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'memcpy_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
           memcpy(&priv->tstamp_config, &config, sizeof(config));
           ^~~~~~
   drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:794:2: note: Call to function 'memcpy' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'memcpy_s' in case of C11
           memcpy(&priv->tstamp_config, &config, sizeof(config));
           ^~~~~~
   drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:2826:3: warning: Call to function 'memset' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'memset_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
                   memset(&priv->mmc, 0, sizeof(struct stmmac_counters));
                   ^~~~~~
   drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:2826:3: note: Call to function 'memset' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'memset_s' in case of C11
                   memset(&priv->mmc, 0, sizeof(struct stmmac_counters));
                   ^~~~~~
>> drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:3227:2: warning: Call to function 'sprintf' is insecure as it does not provide bounding of the memory buffer or security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
           sprintf(name, "%s-fpe", priv->dev->name);
           ^~~~~~~
   drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:3227:2: note: Call to function 'sprintf' is insecure as it does not provide bounding of the memory buffer or security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11
           sprintf(name, "%s-fpe", priv->dev->name);
           ^~~~~~~
   drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:3461:2: warning: Call to function 'sprintf' is insecure as it does not provide bounding of the memory buffer or security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
           sprintf(int_name, "%s:%s", dev->name, "mac");
           ^~~~~~~
   drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:3461:2: note: Call to function 'sprintf' is insecure as it does not provide bounding of the memory buffer or security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11
           sprintf(int_name, "%s:%s", dev->name, "mac");
           ^~~~~~~
   drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:3477:3: warning: Call to function 'sprintf' is insecure as it does not provide bounding of the memory buffer or security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
                   sprintf(int_name, "%s:%s", dev->name, "wol");
                   ^~~~~~~
   drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:3477:3: note: Call to function 'sprintf' is insecure as it does not provide bounding of the memory buffer or security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11
                   sprintf(int_name, "%s:%s", dev->name, "wol");
                   ^~~~~~~
   drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:3495:3: warning: Call to function 'sprintf' is insecure as it does not provide bounding of the memory buffer or security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
                   sprintf(int_name, "%s:%s", dev->name, "lpi");
                   ^~~~~~~
   drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:3495:3: note: Call to function 'sprintf' is insecure as it does not provide bounding of the memory buffer or security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11
                   sprintf(int_name, "%s:%s", dev->name, "lpi");
                   ^~~~~~~
   drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:3513:3: warning: Call to function 'sprintf' is insecure as it does not provide bounding of the memory buffer or security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
                   sprintf(int_name, "%s:%s", dev->name, "safety-ce");
                   ^~~~~~~
   drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:3513:3: note: Call to function 'sprintf' is insecure as it does not provide bounding of the memory buffer or security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11
                   sprintf(int_name, "%s:%s", dev->name, "safety-ce");
                   ^~~~~~~
   drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:3531:3: warning: Call to function 'sprintf' is insecure as it does not provide bounding of the memory buffer or security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
                   sprintf(int_name, "%s:%s", dev->name, "safety-ue");
                   ^~~~~~~
   drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:3531:3: note: Call to function 'sprintf' is insecure as it does not provide bounding of the memory buffer or security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11
                   sprintf(int_name, "%s:%s", dev->name, "safety-ue");
                   ^~~~~~~
   drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:3552:3: warning: Call to function 'sprintf' is insecure as it does not provide bounding of the memory buffer or security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
                   sprintf(int_name, "%s:%s-%d", dev->name, "rx", i);
                   ^~~~~~~
   drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:3552:3: note: Call to function 'sprintf' is insecure as it does not provide bounding of the memory buffer or security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11
                   sprintf(int_name, "%s:%s-%d", dev->name, "rx", i);
                   ^~~~~~~
   drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:3577:3: warning: Call to function 'sprintf' is insecure as it does not provide bounding of the memory buffer or security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
                   sprintf(int_name, "%s:%s-%d", dev->name, "tx", i);
                   ^~~~~~~
   drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:3577:3: note: Call to function 'sprintf' is insecure as it does not provide bounding of the memory buffer or security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'sprintf_s' in case of C11
                   sprintf(int_name, "%s:%s-%d", dev->name, "tx", i);
                   ^~~~~~~
   drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:3703:2: warning: Call to function 'memset' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'memset_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
           memset(&priv->xstats, 0, sizeof(struct stmmac_extra_stats));
           ^~~~~~
   drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:3703:2: note: Call to function 'memset' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'memset_s' in case of C11
           memset(&priv->xstats, 0, sizeof(struct stmmac_extra_stats));
           ^~~~~~
   drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:4466:3: warning: Call to function 'memmove' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'memmove_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
                   memmove(skb->data + VLAN_HLEN, veth, ETH_ALEN * 2);
                   ^~~~~~~
   drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:4466:3: note: Call to function 'memmove' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'memmove_s' in case of C11
                   memmove(skb->data + VLAN_HLEN, veth, ETH_ALEN * 2);
                   ^~~~~~~
   drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:4787:2: warning: Call to function 'memcpy' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'memcpy_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
           memcpy(__skb_put(skb, datasize), xdp->data, datasize);
           ^~~~~~
   drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:4787:2: note: Call to function 'memcpy' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'memcpy_s' in case of C11
           memcpy(__skb_put(skb, datasize), xdp->data, datasize);
           ^~~~~~
   drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:4935:3: warning: Value stored to 'buf1_len' is never read [clang-analyzer-deadcode.DeadStores]
                   buf1_len = 0;
                   ^          ~
   drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:4935:3: note: Value stored to 'buf1_len' is never read
                   buf1_len = 0;
                   ^          ~
   drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:5133:3: warning: Value stored to 'buf1_len' is never read [clang-analyzer-deadcode.DeadStores]
                   buf1_len = 0;
                   ^          ~
   drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:5133:3: note: Value stored to 'buf1_len' is never read
                   buf1_len = 0;
                   ^          ~
   drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:5134:3: warning: Value stored to 'buf2_len' is never read [clang-analyzer-deadcode.DeadStores]
                   buf2_len = 0;
                   ^          ~
   drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:5134:3: note: Value stored to 'buf2_len' is never read
                   buf2_len = 0;
                   ^          ~
   drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:5648:4: warning: Value stored to 'status' is never read [clang-analyzer-deadcode.DeadStores]
                           status = stmmac_host_mtl_irq_status(priv, priv->hw,
                           ^
   drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:5648:4: note: Value stored to 'status' is never read
   drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:5703:14: warning: Access to field 'dev' results in a dereference of a null pointer (loaded from variable 'priv') [clang-analyzer-core.NullDereference]
                   netdev_err(priv->dev, "%s: invalid dev pointer\n", __func__);
                              ^~~~
   drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:5699:2: note: 'dev' initialized here
           struct net_device *dev = (struct net_device *)dev_id;
           ^~~~~~~~~~~~~~~~~~~~~~
   drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:5700:41: note: Passing 'dev' via 1st parameter 'dev'
           struct stmmac_priv *priv = netdev_priv(dev);
                                                  ^~~
   drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:5700:2: note: 'priv' initialized here
           struct stmmac_priv *priv = netdev_priv(dev);
           ^~~~~~~~~~~~~~~~~~~~~~~~
   drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:5702:15: note: Assuming 'dev' is null

vim +1257 drivers/net/ethernet/xilinx/ll_temac_main.c

92744989533cbe drivers/net/ll_temac_main.c Grant Likely 2009-04-25  1245  
92744989533cbe drivers/net/ll_temac_main.c Grant Likely 2009-04-25  1246  /* ---------------------------------------------------------------------
92744989533cbe drivers/net/ll_temac_main.c Grant Likely 2009-04-25  1247   * SYSFS device attributes
92744989533cbe drivers/net/ll_temac_main.c Grant Likely 2009-04-25  1248   */
92744989533cbe drivers/net/ll_temac_main.c Grant Likely 2009-04-25  1249  static ssize_t temac_show_llink_regs(struct device *dev,
92744989533cbe drivers/net/ll_temac_main.c Grant Likely 2009-04-25  1250  				     struct device_attribute *attr, char *buf)
92744989533cbe drivers/net/ll_temac_main.c Grant Likely 2009-04-25  1251  {
92744989533cbe drivers/net/ll_temac_main.c Grant Likely 2009-04-25  1252  	struct net_device *ndev = dev_get_drvdata(dev);
92744989533cbe drivers/net/ll_temac_main.c Grant Likely 2009-04-25  1253  	struct temac_local *lp = netdev_priv(ndev);
92744989533cbe drivers/net/ll_temac_main.c Grant Likely 2009-04-25  1254  	int i, len = 0;
92744989533cbe drivers/net/ll_temac_main.c Grant Likely 2009-04-25  1255  
92744989533cbe drivers/net/ll_temac_main.c Grant Likely 2009-04-25  1256  	for (i = 0; i < 0x11; i++)
e44171f115de3d drivers/net/ll_temac_main.c John Linn    2010-04-08 @1257  		len += sprintf(buf + len, "%.8x%s", lp->dma_in(lp, i),
92744989533cbe drivers/net/ll_temac_main.c Grant Likely 2009-04-25  1258  			       (i % 8) == 7 ? "\n" : " ");
92744989533cbe drivers/net/ll_temac_main.c Grant Likely 2009-04-25  1259  	len += sprintf(buf + len, "\n");
92744989533cbe drivers/net/ll_temac_main.c Grant Likely 2009-04-25  1260  
92744989533cbe drivers/net/ll_temac_main.c Grant Likely 2009-04-25  1261  	return len;
92744989533cbe drivers/net/ll_temac_main.c Grant Likely 2009-04-25  1262  }
92744989533cbe drivers/net/ll_temac_main.c Grant Likely 2009-04-25  1263  

:::::: The code at line 1257 was first introduced by commit
:::::: e44171f115de3dedf34064646206deb91549865f Add non-Virtex5 support for LL TEMAC driver

:::::: TO: John Linn <john.linn@xilinx.com>
:::::: CC: David S. Miller <davem@davemloft.net>

-- 
0-DAY CI Kernel Test Service
https://01.org/lkp

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2022-04-07 12:19 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-04-07 12:19 drivers/net/ethernet/xilinx/ll_temac_main.c:1257:10: warning: Call to function 'sprintf' is insecure as it does not provide bounding of the memory buffer or security checks introduced in the C11 standard. Replace with analogous functions that support leng kernel test robot
  -- strict thread matches above, loose matches on Subject: below --
2022-03-31 13:41 kernel test robot

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