mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [jsarha:topic/cros-sof-v4.14-rebase 2219/9999] drivers/gpu/drm/i915/intel_pm.c:5103:25: error: variable 'crtc' set but not used
@ 2022-04-15  6:52 kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2022-04-15  6:52 UTC (permalink / raw)
  To: Mahesh Kumar
  Cc: kbuild-all, linux-kernel, Juha-Pekka Heikkila, Shashank Sharma,
	Vidya Srinivas, Maarten Lankhorst, Carlos Santa,
	Stéphane Marchesin

Hi Mahesh,

FYI, the error/warning still remains.

tree:   https://github.com/jsarha/linux topic/cros-sof-v4.14-rebase
head:   18a233f3f676a98dde00947535d99ab1a54da340
commit: f3f74d31fd569a167450cb3845589755aa39e989 [2219/9999] UPSTREAM: drm/i915/skl: split skl_compute_ddb function
config: i386-randconfig-a011-20220411 (https://download.01.org/0day-ci/archive/20220415/202204151416.NqZgp8Zo-lkp@intel.com/config)
compiler: gcc-7 (Ubuntu 7.5.0-6ubuntu2) 7.5.0
reproduce (this is a W=1 build):
        # https://github.com/jsarha/linux/commit/f3f74d31fd569a167450cb3845589755aa39e989
        git remote add jsarha https://github.com/jsarha/linux
        git fetch --no-tags jsarha topic/cros-sof-v4.14-rebase
        git checkout f3f74d31fd569a167450cb3845589755aa39e989
        # save the config file to linux build tree
        mkdir build_dir
        make W=1 O=build_dir ARCH=i386 SHELL=/bin/bash drivers/gpu/drm/i915/

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>

All errors (new ones prefixed by >>):

   drivers/gpu/drm/i915/intel_pm.c: In function 'pipes_modified':
   drivers/gpu/drm/i915/intel_pm.c:4982:25: error: variable 'cstate' set but not used [-Werror=unused-but-set-variable]
     struct drm_crtc_state *cstate;
                            ^~~~~~
   drivers/gpu/drm/i915/intel_pm.c: In function 'skl_print_wm_changes':
   drivers/gpu/drm/i915/intel_pm.c:5069:31: error: variable 'cstate' set but not used [-Werror=unused-but-set-variable]
     const struct drm_crtc_state *cstate;
                                  ^~~~~~
   drivers/gpu/drm/i915/intel_pm.c: In function 'skl_ddb_add_affected_pipes':
   drivers/gpu/drm/i915/intel_pm.c:5104:31: error: variable 'cstate' set but not used [-Werror=unused-but-set-variable]
     const struct drm_crtc_state *cstate;
                                  ^~~~~~
>> drivers/gpu/drm/i915/intel_pm.c:5103:25: error: variable 'crtc' set but not used [-Werror=unused-but-set-variable]
     const struct drm_crtc *crtc;
                            ^~~~
   cc1: all warnings being treated as errors


vim +/crtc +5103 drivers/gpu/drm/i915/intel_pm.c

  5097	
  5098	static int
  5099	skl_ddb_add_affected_pipes(struct drm_atomic_state *state, bool *changed)
  5100	{
  5101		struct drm_device *dev = state->dev;
  5102		const struct drm_i915_private *dev_priv = to_i915(dev);
> 5103		const struct drm_crtc *crtc;
  5104		const struct drm_crtc_state *cstate;
  5105		struct intel_crtc *intel_crtc;
  5106		struct intel_atomic_state *intel_state = to_intel_atomic_state(state);
  5107		uint32_t realloc_pipes = pipes_modified(state);
  5108		int ret, i;
  5109	
  5110		/*
  5111		 * When we distrust bios wm we always need to recompute to set the
  5112		 * expected DDB allocations for each CRTC.
  5113		 */
  5114		if (dev_priv->wm.distrust_bios_wm)
  5115			(*changed) = true;
  5116	
  5117		/*
  5118		 * If this transaction isn't actually touching any CRTC's, don't
  5119		 * bother with watermark calculation.  Note that if we pass this
  5120		 * test, we're guaranteed to hold at least one CRTC state mutex,
  5121		 * which means we can safely use values like dev_priv->active_crtcs
  5122		 * since any racing commits that want to update them would need to
  5123		 * hold _all_ CRTC state mutexes.
  5124		 */
  5125		for_each_new_crtc_in_state(state, crtc, cstate, i)
  5126			(*changed) = true;
  5127	
  5128		if (!*changed)
  5129			return 0;
  5130	
  5131		/*
  5132		 * If this is our first atomic update following hardware readout,
  5133		 * we can't trust the DDB that the BIOS programmed for us.  Let's
  5134		 * pretend that all pipes switched active status so that we'll
  5135		 * ensure a full DDB recompute.
  5136		 */
  5137		if (dev_priv->wm.distrust_bios_wm) {
  5138			ret = drm_modeset_lock(&dev->mode_config.connection_mutex,
  5139					       state->acquire_ctx);
  5140			if (ret)
  5141				return ret;
  5142	
  5143			intel_state->active_pipe_changes = ~0;
  5144	
  5145			/*
  5146			 * We usually only initialize intel_state->active_crtcs if we
  5147			 * we're doing a modeset; make sure this field is always
  5148			 * initialized during the sanitization process that happens
  5149			 * on the first commit too.
  5150			 */
  5151			if (!intel_state->modeset)
  5152				intel_state->active_crtcs = dev_priv->active_crtcs;
  5153		}
  5154	
  5155		/*
  5156		 * If the modeset changes which CRTC's are active, we need to
  5157		 * recompute the DDB allocation for *all* active pipes, even
  5158		 * those that weren't otherwise being modified in any way by this
  5159		 * atomic commit.  Due to the shrinking of the per-pipe allocations
  5160		 * when new active CRTC's are added, it's possible for a pipe that
  5161		 * we were already using and aren't changing at all here to suddenly
  5162		 * become invalid if its DDB needs exceeds its new allocation.
  5163		 *
  5164		 * Note that if we wind up doing a full DDB recompute, we can't let
  5165		 * any other display updates race with this transaction, so we need
  5166		 * to grab the lock on *all* CRTC's.
  5167		 */
  5168		if (intel_state->active_pipe_changes) {
  5169			realloc_pipes = ~0;
  5170			intel_state->wm_results.dirty_pipes = ~0;
  5171		}
  5172	
  5173		/*
  5174		 * We're not recomputing for the pipes not included in the commit, so
  5175		 * make sure we start with the current state.
  5176		 */
  5177		for_each_intel_crtc_mask(dev, intel_crtc, realloc_pipes) {
  5178			struct intel_crtc_state *cstate;
  5179	
  5180			cstate = intel_atomic_get_crtc_state(state, intel_crtc);
  5181			if (IS_ERR(cstate))
  5182				return PTR_ERR(cstate);
  5183		}
  5184	
  5185		return 0;
  5186	}
  5187	

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

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2022-04-15  6:53 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-04-15  6:52 [jsarha:topic/cros-sof-v4.14-rebase 2219/9999] drivers/gpu/drm/i915/intel_pm.c:5103:25: error: variable 'crtc' set but not used 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

all inboxes | Powered by JetHome®