* [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
@ 2020-10-28 10:53 kernel test robot
0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2020-10-28 10:53 UTC (permalink / raw)
To: Evan Quan
Cc: kbuild-all, clang-built-linux, Linux Memory Management List,
Alex Deucher
[-- Attachment #1: Type: text/plain, Size: 7390 bytes --]
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 <lkp@intel.com>
All warnings (new ones prefixed by >>):
>> 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;
^
= 0
>> 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
[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 41823 bytes --]
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2020-10-28 10:53 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-10-28 10:53 [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 kernel test robot
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox