On Mon, Feb 22, 2021 at 11:05:17PM +0000, Simon Ser wrote:
On Monday, February 22nd, 2021 at 8:25 PM, Souptick Joarder jrdr.linux@gmail.com wrote:
drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm.c:9804:38: warning: variable 'i' is uninitialized when used here [-Wuninitialized]
timing = &edid->detailed_timings[i]; ^
drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm.c:9714:7: note: initialize the variable 'i' to silence this warning int i; ^ = 0 1 warning generated.
Initialize the variable 'i'.
Hm, I see this variable already initialized in the loop:
for (i = 0; i < 4; i++) {
This is the branch agd5f/drm-next.
That is in the
if (amdgpu_dm_connector->dc_sink->sink_signal == SIGNAL_TYPE_DISPLAY_PORT || amdgpu_dm_connector->dc_sink->sink_signal == SIGNAL_TYPE_EDP) {
branch not the
} else if (edid && amdgpu_dm_connector->dc_sink->sink_signal == SIGNAL_TYPE_HDMI_TYPE_A) {
branch, where i is indeed used uninitialized like clang complains about.
I am not at all familiar with the code so I cannot say if this fix is the proper one but it is definitely a legitimate issue.
Cheers, Nathan
Reported-by: kernel test robot lkp@intel.com Signed-off-by: Souptick Joarder jrdr.linux@gmail.com
drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c index a22a53d..e96d3d9 100644 --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c @@ -9717,7 +9717,7 @@ static bool parse_hdmi_amd_vsdb(struct amdgpu_dm_connector *aconnector, void amdgpu_dm_update_freesync_caps(struct drm_connector *connector, struct edid *edid) {
- int i;
- int i = 0; struct detailed_timing *timing; struct detailed_non_pixel *data; struct detailed_data_monitor_range *range;
-- 1.9.1