All of lore.kernel.org
 help / color / mirror / Atom feed
* drivers/gpu/drm/amd/amdgpu/../display/dc/dc_dmub_srv.c:311 dc_dmub_srv_p_state_delegate() warn: variable dereferenced before check 'dc' (see line 309)
@ 2022-08-25 14:46 ` Dan Carpenter
  0 siblings, 0 replies; 3+ messages in thread
From: kernel test robot @ 2022-08-25 14:17 UTC (permalink / raw)
  To: kbuild

[-- Attachment #1: Type: text/plain, Size: 4918 bytes --]

BCC: lkp(a)intel.com
CC: kbuild-all(a)lists.01.org
CC: linux-kernel(a)vger.kernel.org
TO: Rodrigo Siqueira <Rodrigo.Siqueira@amd.com>
CC: Alex Deucher <alexander.deucher@amd.com>

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   c40e8341e3b3bb27e3a65b06b5b454626234c4f0
commit: 00fa7f031dd4b885175da390e24cb02f6a45977e drm/amd/display: Add basic infrastructure for enabling FAMS
date:   7 weeks ago
:::::: branch date: 2 days ago
:::::: commit date: 7 weeks ago
config: microblaze-randconfig-m041-20220824 (https://download.01.org/0day-ci/archive/20220825/202208252240.i49DVUes-lkp(a)intel.com/config)
compiler: microblaze-linux-gcc (GCC) 12.1.0

If you fix the issue, kindly add following tag where applicable
Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>

smatch warnings:
drivers/gpu/drm/amd/amdgpu/../display/dc/dc_dmub_srv.c:311 dc_dmub_srv_p_state_delegate() warn: variable dereferenced before check 'dc' (see line 309)

vim +/dc +311 drivers/gpu/drm/amd/amdgpu/../display/dc/dc_dmub_srv.c

00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  302  
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  303  bool dc_dmub_srv_p_state_delegate(struct dc *dc, bool should_manage_pstate, struct dc_state *context)
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  304  {
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  305  	union dmub_rb_cmd cmd = { 0 };
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  306  	struct dmub_cmd_fw_assisted_mclk_switch_config *config_data = &cmd.fw_assisted_mclk_switch.config_data;
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  307  	int i = 0;
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  308  	int ramp_up_num_steps = 1; // TODO: Ramp is currently disabled. Reenable it.
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16 @309  	uint8_t visual_confirm_enabled = dc->debug.visual_confirm == VISUAL_CONFIRM_FAMS;
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  310  
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16 @311  	if (dc == NULL)
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  312  		return false;
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  313  
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  314  	// Format command.
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  315  	cmd.fw_assisted_mclk_switch.header.type = DMUB_CMD__FW_ASSISTED_MCLK_SWITCH;
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  316  	cmd.fw_assisted_mclk_switch.header.sub_type = DMUB_CMD__FAMS_SETUP_FW_CTRL;
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  317  	cmd.fw_assisted_mclk_switch.config_data.fams_enabled = should_manage_pstate;
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  318  	cmd.fw_assisted_mclk_switch.config_data.visual_confirm_enabled = visual_confirm_enabled;
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  319  
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  320  	for (i = 0; context && i < context->stream_count; i++) {
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  321  		struct dc_stream_state *stream = context->streams[i];
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  322  		uint8_t min_refresh_in_hz = (stream->timing.min_refresh_in_uhz + 999999) / 1000000;
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  323  		int  tg_inst = dc_dmub_srv_get_timing_generator_offset(dc, stream);
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  324  
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  325  		config_data->pipe_data[tg_inst].pix_clk_100hz = stream->timing.pix_clk_100hz;
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  326  		config_data->pipe_data[tg_inst].min_refresh_in_hz = min_refresh_in_hz;
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  327  		config_data->pipe_data[tg_inst].max_ramp_step = ramp_up_num_steps;
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  328  		config_data->pipe_data[tg_inst].pipes = dc_dmub_srv_get_pipes_for_stream(dc, stream);
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  329  	}
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  330  
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  331  	cmd.fw_assisted_mclk_switch.header.payload_bytes =
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  332  		sizeof(cmd.fw_assisted_mclk_switch) - sizeof(cmd.fw_assisted_mclk_switch.header);
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  333  
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  334  	// Send the command to the DMCUB.
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  335  	dc_dmub_srv_cmd_queue(dc->ctx->dmub_srv, &cmd);
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  336  	dc_dmub_srv_cmd_execute(dc->ctx->dmub_srv);
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  337  	dc_dmub_srv_wait_idle(dc->ctx->dmub_srv);
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  338  
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  339  	return true;
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  340  }
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  341  

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

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

* drivers/gpu/drm/amd/amdgpu/../display/dc/dc_dmub_srv.c:311 dc_dmub_srv_p_state_delegate() warn: variable dereferenced before check 'dc' (see line 309)
@ 2022-08-25 14:46 ` Dan Carpenter
  0 siblings, 0 replies; 3+ messages in thread
From: Dan Carpenter @ 2022-08-25 14:46 UTC (permalink / raw)
  To: kbuild, Rodrigo Siqueira; +Cc: lkp, kbuild-all, linux-kernel, Alex Deucher

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   c40e8341e3b3bb27e3a65b06b5b454626234c4f0
commit: 00fa7f031dd4b885175da390e24cb02f6a45977e drm/amd/display: Add basic infrastructure for enabling FAMS
config: microblaze-randconfig-m041-20220824 (https://download.01.org/0day-ci/archive/20220825/202208252240.i49DVUes-lkp@intel.com/config)
compiler: microblaze-linux-gcc (GCC) 12.1.0

If you fix the issue, kindly add following tag where applicable
Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>

smatch warnings:
drivers/gpu/drm/amd/amdgpu/../display/dc/dc_dmub_srv.c:311 dc_dmub_srv_p_state_delegate() warn: variable dereferenced before check 'dc' (see line 309)

vim +/dc +311 drivers/gpu/drm/amd/amdgpu/../display/dc/dc_dmub_srv.c

00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  303  bool dc_dmub_srv_p_state_delegate(struct dc *dc, bool should_manage_pstate, struct dc_state *context)
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  304  {
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  305  	union dmub_rb_cmd cmd = { 0 };
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  306  	struct dmub_cmd_fw_assisted_mclk_switch_config *config_data = &cmd.fw_assisted_mclk_switch.config_data;
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  307  	int i = 0;
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  308  	int ramp_up_num_steps = 1; // TODO: Ramp is currently disabled. Reenable it.
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16 @309  	uint8_t visual_confirm_enabled = dc->debug.visual_confirm == VISUAL_CONFIRM_FAMS;
                                                                                         ^^^^^^^^^^^^^^^^^^^^^^^^
Dereference

00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  310  
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16 @311  	if (dc == NULL)
                                                            ^^^^^^^^^^
Too late

00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  312  		return false;
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  313  
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  314  	// Format command.
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  315  	cmd.fw_assisted_mclk_switch.header.type = DMUB_CMD__FW_ASSISTED_MCLK_SWITCH;
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  316  	cmd.fw_assisted_mclk_switch.header.sub_type = DMUB_CMD__FAMS_SETUP_FW_CTRL;

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


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

* drivers/gpu/drm/amd/amdgpu/../display/dc/dc_dmub_srv.c:311 dc_dmub_srv_p_state_delegate() warn: variable dereferenced before check 'dc' (see line 309)
@ 2022-08-25 14:46 ` Dan Carpenter
  0 siblings, 0 replies; 3+ messages in thread
From: Dan Carpenter @ 2022-08-25 14:46 UTC (permalink / raw)
  To: kbuild-all

[-- Attachment #1: Type: text/plain, Size: 2454 bytes --]

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   c40e8341e3b3bb27e3a65b06b5b454626234c4f0
commit: 00fa7f031dd4b885175da390e24cb02f6a45977e drm/amd/display: Add basic infrastructure for enabling FAMS
config: microblaze-randconfig-m041-20220824 (https://download.01.org/0day-ci/archive/20220825/202208252240.i49DVUes-lkp(a)intel.com/config)
compiler: microblaze-linux-gcc (GCC) 12.1.0

If you fix the issue, kindly add following tag where applicable
Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>

smatch warnings:
drivers/gpu/drm/amd/amdgpu/../display/dc/dc_dmub_srv.c:311 dc_dmub_srv_p_state_delegate() warn: variable dereferenced before check 'dc' (see line 309)

vim +/dc +311 drivers/gpu/drm/amd/amdgpu/../display/dc/dc_dmub_srv.c

00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  303  bool dc_dmub_srv_p_state_delegate(struct dc *dc, bool should_manage_pstate, struct dc_state *context)
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  304  {
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  305  	union dmub_rb_cmd cmd = { 0 };
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  306  	struct dmub_cmd_fw_assisted_mclk_switch_config *config_data = &cmd.fw_assisted_mclk_switch.config_data;
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  307  	int i = 0;
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  308  	int ramp_up_num_steps = 1; // TODO: Ramp is currently disabled. Reenable it.
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16 @309  	uint8_t visual_confirm_enabled = dc->debug.visual_confirm == VISUAL_CONFIRM_FAMS;
                                                                                         ^^^^^^^^^^^^^^^^^^^^^^^^
Dereference

00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  310  
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16 @311  	if (dc == NULL)
                                                            ^^^^^^^^^^
Too late

00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  312  		return false;
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  313  
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  314  	// Format command.
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  315  	cmd.fw_assisted_mclk_switch.header.type = DMUB_CMD__FW_ASSISTED_MCLK_SWITCH;
00fa7f031dd4b88 Rodrigo Siqueira 2022-06-16  316  	cmd.fw_assisted_mclk_switch.header.sub_type = DMUB_CMD__FAMS_SETUP_FW_CTRL;

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

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

end of thread, other threads:[~2022-08-25 14:47 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-08-25 14:17 drivers/gpu/drm/amd/amdgpu/../display/dc/dc_dmub_srv.c:311 dc_dmub_srv_p_state_delegate() warn: variable dereferenced before check 'dc' (see line 309) kernel test robot
2022-08-25 14:46 ` Dan Carpenter
2022-08-25 14:46 ` Dan Carpenter

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.