[linux-next:master 2048/2270] drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/smu7_hwmgr.c:1743:13: warning: variable 'min' is used uninitialized whenever 'if' condition is false
From: kernel test robot <hidden>
Date: 2020-10-28 10:53:59
Also in:
oe-kbuild-all
Hi Evan, FYI, the error/warning still remains. tree: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master head: 1c86f90a16d413621918ae1403842b43632f0b3d commit: a90e6fbe47ff6707a57e55aa578e623b10f79b10 [2048/2270] drm/amd/pm: correct the settings for ro range minimum and maximum config: arm64-randconfig-r004-20201028 (attached as .config) compiler: clang version 12.0.0 (https://github.com/llvm/llvm-project 50dfa19cc799ae7cddd39a95dbfce675a12672ad) 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 arm64 cross compiling tool for clang build # apt-get install binutils-aarch64-linux-gnu # https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=a90e6fbe47ff6707a57e55aa578e623b10f79b10 git remote add linux-next https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git git fetch --no-tags linux-next master git checkout a90e6fbe47ff6707a57e55aa578e623b10f79b10 # save the attached .config to linux build tree COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=arm64 If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <redacted> All warnings (new ones prefixed by >>):
quoted
drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/smu7_hwmgr.c:1743:13: warning: variable 'min' is used uninitialized whenever 'if' condition is false [-Wsometimes-uninitialized]
} else if ((hwmgr->chip_id == CHIP_POLARIS11) ||
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/smu7_hwmgr.c:1749:27: note: uninitialized use occurs here
data->ro_range_minimum = min;
^~~
drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/smu7_hwmgr.c:1743:9: note: remove the 'if' if its condition is always true
} else if ((hwmgr->chip_id == CHIP_POLARIS11) ||
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/smu7_hwmgr.c:1738:15: warning: variable 'min' is used uninitialized whenever 'if' condition is false [-Wsometimes-uninitialized]
} else if (evv_revision == 2) {
^~~~~~~~~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/smu7_hwmgr.c:1749:27: note: uninitialized use occurs here
data->ro_range_minimum = min;
^~~
drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/smu7_hwmgr.c:1738:11: note: remove the 'if' if its condition is always true
} else if (evv_revision == 2) {
^~~~~~~~~~~~~~~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/smu7_hwmgr.c:1706:43: note: initialize the variable 'min' to silence this warning
uint32_t asicrev1, evv_revision, max, min;
^
= 0quoted
drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/smu7_hwmgr.c:1743:13: warning: variable 'max' is used uninitialized whenever 'if' condition is false [-Wsometimes-uninitialized]
} else if ((hwmgr->chip_id == CHIP_POLARIS11) ||
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/smu7_hwmgr.c:1750:27: note: uninitialized use occurs here
data->ro_range_maximum = max;
^~~
drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/smu7_hwmgr.c:1743:9: note: remove the 'if' if its condition is always true
} else if ((hwmgr->chip_id == CHIP_POLARIS11) ||
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/smu7_hwmgr.c:1738:15: warning: variable 'max' is used uninitialized whenever 'if' condition is false [-Wsometimes-uninitialized]
} else if (evv_revision == 2) {
^~~~~~~~~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/smu7_hwmgr.c:1750:27: note: uninitialized use occurs here
data->ro_range_maximum = max;
^~~
drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/smu7_hwmgr.c:1738:11: note: remove the 'if' if its condition is always true
} else if (evv_revision == 2) {
^~~~~~~~~~~~~~~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/smu7_hwmgr.c:1706:38: note: initialize the variable 'max' to silence this warning
uint32_t asicrev1, evv_revision, max, min;
^
= 0
drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/smu7_hwmgr.c:5286:5: warning: no previous prototype for function 'smu7_init_function_pointers' [-Wmissing-prototypes]
int smu7_init_function_pointers(struct pp_hwmgr *hwmgr)
^
drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/smu7_hwmgr.c:5286:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
int smu7_init_function_pointers(struct pp_hwmgr *hwmgr)
^
static
5 warnings generated.
vim +1743 drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/smu7_hwmgr.c
1701
1702 static int smu7_calculate_ro_range(struct pp_hwmgr *hwmgr)
1703 {
1704 struct smu7_hwmgr *data = (struct smu7_hwmgr *)(hwmgr->backend);
1705 struct amdgpu_device *adev = hwmgr->adev;
1706 uint32_t asicrev1, evv_revision, max, min;
1707
1708 atomctrl_read_efuse(hwmgr, STRAP_EVV_REVISION_LSB, STRAP_EVV_REVISION_MSB,
1709 &evv_revision);
1710
1711 atomctrl_read_efuse(hwmgr, 568, 579, &asicrev1);
1712
1713 if (ASICID_IS_P20(adev->pdev->device, adev->pdev->revision) ||
1714 ASICID_IS_P30(adev->pdev->device, adev->pdev->revision)) {
1715 min = 1200;
1716 max = 2500;
1717 } else if (ASICID_IS_P21(adev->pdev->device, adev->pdev->revision) ||
1718 ASICID_IS_P31(adev->pdev->device, adev->pdev->revision)) {
1719 min = 900;
1720 max= 2100;
1721 } else if (hwmgr->chip_id == CHIP_POLARIS10) {
1722 if (adev->pdev->subsystem_vendor == 0x106B) {
1723 min = 1000;
1724 max = 2300;
1725 } else {
1726 if (evv_revision == 0) {
1727 min = 1000;
1728 max = 2300;
1729 } else if (evv_revision == 1) {
1730 if (asicrev1 == 326) {
1731 min = 1200;
1732 max = 2500;
1733 /* TODO: PATCH RO in VBIOS */
1734 } else {
1735 min = 1200;
1736 max = 2000;
1737 }
1738 } else if (evv_revision == 2) {
1739 min = 1200;
1740 max = 2500;
1741 }
1742 }1743 } else if ((hwmgr->chip_id == CHIP_POLARIS11) ||
1744 (hwmgr->chip_id == CHIP_POLARIS12)) {
1745 min = 1100;
1746 max = 2100;
1747 }
1748
1749 data->ro_range_minimum = min;
1750 data->ro_range_maximum = max;
1751
1752 /* TODO: PATCH RO in VBIOS here */
1753
1754 return 0;
1755 }
1756
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org Attachments
- .config.gz [application/gzip] 41823 bytes