[Intel-gfx] [drm-intel:for-linux-next-fixes 4/4] drivers/gpu//drm/i915/i915_gem.c:3223:8: error: 'struct drm_i915_private' has no member named 'caps'; did you mean 'ips'?

Rodrigo Vivi rodrigo.vivi at intel.com
Mon Mar 12 20:35:17 UTC 2018


On Tue, Mar 13, 2018 at 03:48:38AM +0800, kbuild test robot wrote:
> tree:   git://anongit.freedesktop.org/drm-intel for-linux-next-fixes
> head:   ab30b9c117f37f9f33bec6b92818e2b402791f54
> commit: ab30b9c117f37f9f33bec6b92818e2b402791f54 [4/4] drm/i915: Wrap engine->schedule in RCU locks for set-wedge protection

Sorry for the noise on a back cherry-pick for fixes.
Patch removed for now so fixes trees can compile again.

> config: i386-randconfig-x010-201810 (attached as .config)
> compiler: gcc-7 (Debian 7.3.0-1) 7.3.0
> reproduce:
>         git checkout ab30b9c117f37f9f33bec6b92818e2b402791f54
>         # save the attached .config to linux build tree
>         make ARCH=i386 
> 
> All errors (new ones prefixed by >>):
> 
>    drivers/gpu//drm/i915/i915_gem.c: In function 'i915_gem_set_wedged':
> >> drivers/gpu//drm/i915/i915_gem.c:3223:8: error: 'struct drm_i915_private' has no member named 'caps'; did you mean 'ips'?
>      i915->caps.scheduler = 0;
>            ^~~~
>            ips
> 
> vim +3223 drivers/gpu//drm/i915/i915_gem.c
> 
>   3206	
>   3207	void i915_gem_set_wedged(struct drm_i915_private *i915)
>   3208	{
>   3209		struct intel_engine_cs *engine;
>   3210		enum intel_engine_id id;
>   3211	
>   3212		/*
>   3213		 * First, stop submission to hw, but do not yet complete requests by
>   3214		 * rolling the global seqno forward (since this would complete requests
>   3215		 * for which we haven't set the fence error to EIO yet).
>   3216		 */
>   3217		for_each_engine(engine, i915, id) {
>   3218			i915_gem_reset_prepare_engine(engine);
>   3219	
>   3220			engine->submit_request = nop_submit_request;
>   3221			engine->schedule = NULL;
>   3222		}
> > 3223		i915->caps.scheduler = 0;
>   3224	
>   3225		/*
>   3226		 * Make sure no one is running the old callback before we proceed with
>   3227		 * cancelling requests and resetting the completion tracking. Otherwise
>   3228		 * we might submit a request to the hardware which never completes.
>   3229		 */
>   3230		synchronize_rcu();
>   3231	
>   3232		for_each_engine(engine, i915, id) {
>   3233			/* Mark all executing requests as skipped */
>   3234			engine->cancel_requests(engine);
>   3235	
>   3236			/*
>   3237			 * Only once we've force-cancelled all in-flight requests can we
>   3238			 * start to complete all requests.
>   3239			 */
>   3240			engine->submit_request = nop_complete_submit_request;
>   3241		}
>   3242	
>   3243		/*
>   3244		 * Make sure no request can slip through without getting completed by
>   3245		 * either this call here to intel_engine_init_global_seqno, or the one
>   3246		 * in nop_complete_submit_request.
>   3247		 */
>   3248		synchronize_rcu();
>   3249	
>   3250		for_each_engine(engine, i915, id) {
>   3251			unsigned long flags;
>   3252	
>   3253			/* Mark all pending requests as complete so that any concurrent
>   3254			 * (lockless) lookup doesn't try and wait upon the request as we
>   3255			 * reset it.
>   3256			 */
>   3257			spin_lock_irqsave(&engine->timeline->lock, flags);
>   3258			intel_engine_init_global_seqno(engine,
>   3259						       intel_engine_last_submit(engine));
>   3260			spin_unlock_irqrestore(&engine->timeline->lock, flags);
>   3261	
>   3262			i915_gem_reset_finish_engine(engine);
>   3263		}
>   3264	
>   3265		set_bit(I915_WEDGED, &i915->gpu_error.flags);
>   3266		wake_up_all(&i915->gpu_error.reset_queue);
>   3267	}
>   3268	
> 
> ---
> 0-DAY kernel test infrastructure                Open Source Technology Center
> https://lists.01.org/pipermail/kbuild-all                   Intel Corporation


> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx



More information about the Intel-gfx mailing list