lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Date:   Fri, 15 Apr 2022 14:52:23 +0800
From:   kernel test robot <lkp@...el.com>
To:     Mahesh Kumar <mahesh1.kumar@...el.com>
Cc:     kbuild-all@...ts.01.org, linux-kernel@...r.kernel.org,
        Juha-Pekka Heikkila <juhapekka.heikkila@...il.com>,
        Shashank Sharma <shashank.sharma@...el.com>,
        Vidya Srinivas <vidya.srinivas@...el.com>,
        Maarten Lankhorst <maarten.lankhorst@...ux.intel.com>,
        Carlos Santa <carlos.santa@...el.com>,
        Stéphane Marchesin <marcheu@...omium.org>
Subject: [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

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@...el.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

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ