Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1592858 > unrolled thread

[regression] Re: 4.11-rc0, thinkpad x220: GPU hang

Started byPavel Machek <pavel@ucw.cz>
First post2017-03-06 00:10 +0100
Last post2017-03-06 13:30 +0100
Articles 5 — 2 participants

Back to article view | Back to linux.kernel

This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by below is the oldest one visible, not the original post.


Contents

  [regression] Re: 4.11-rc0, thinkpad x220: GPU hang Pavel Machek <pavel@ucw.cz> - 2017-03-06 00:10 +0100
    Re: [regression] Re: 4.11-rc0, thinkpad x220: GPU hang Chris Wilson <chris@chris-wilson.co.uk> - 2017-03-06 12:20 +0100
      Re: [regression] Re: 4.11-rc0, thinkpad x220: GPU hang Chris Wilson <chris@chris-wilson.co.uk> - 2017-03-06 13:10 +0100
      Re: [regression] Re: 4.11-rc0, thinkpad x220: GPU hang Pavel Machek <pavel@ucw.cz> - 2017-03-06 13:20 +0100
        Re: [regression] Re: 4.11-rc0, thinkpad x220: GPU hang Chris Wilson <chris@chris-wilson.co.uk> - 2017-03-06 13:30 +0100

#1592858 — [regression] Re: 4.11-rc0, thinkpad x220: GPU hang

FromPavel Machek <pavel@ucw.cz>
Date2017-03-06 00:10 +0100
Subject[regression] Re: 4.11-rc0, thinkpad x220: GPU hang
Message-ID<thNrP-7sc-11@gated-at.bofh.it>

[Multipart message — attachments visible in raw view] — view raw

Hi!

> > mplayer stopped working after a while. Dmesg says:
> > 
> > [ 3000.266533] cdc_ether 2-1.2:1.0 usb0: register 'cdc_ether' at

Now I'm pretty sure it is a regression in v4.11-rc0. Any ideas what to
try? Bisect will be slow and nasty :-(.

									Pavel
-- 
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html

[toc] | [next] | [standalone]


#1593206

FromChris Wilson <chris@chris-wilson.co.uk>
Date2017-03-06 12:20 +0100
Message-ID<thYQh-7rD-13@gated-at.bofh.it>
In reply to#1592858
On Mon, Mar 06, 2017 at 12:01:51AM +0100, Pavel Machek wrote:
> Hi!
> 
> > > mplayer stopped working after a while. Dmesg says:
> > > 
> > > [ 3000.266533] cdc_ether 2-1.2:1.0 usb0: register 'cdc_ether' at
> 
> Now I'm pretty sure it is a regression in v4.11-rc0. Any ideas what to
> try? Bisect will be slow and nasty :-(.

I came the conclusion that #99671 is the ring HEAD overtaking the TAIL,
and under the presumption that your bug matches (as the symptoms do):

diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c b/drivers/gpu/drm/i915/intel_ringbuffer.c
index 4ffa35faff49..62e31a7438ac 100644
--- a/drivers/gpu/drm/i915/intel_ringbuffer.c
+++ b/drivers/gpu/drm/i915/intel_ringbuffer.c
@@ -782,10 +782,10 @@ static void i9xx_submit_request(struct drm_i915_gem_request *request)
 {
        struct drm_i915_private *dev_priv = request->i915;
 
-       i915_gem_request_submit(request);
-
        GEM_BUG_ON(!IS_ALIGNED(request->tail, 8));
        I915_WRITE_TAIL(request->engine, request->tail);
+
+       i915_gem_request_submit(request);
 }
 
 static void i9xx_emit_breadcrumb(struct drm_i915_gem_request *req, u32 *cs)


-- 
Chris Wilson, Intel Open Source Technology Centre

[toc] | [prev] | [next] | [standalone]


#1593252

FromChris Wilson <chris@chris-wilson.co.uk>
Date2017-03-06 13:10 +0100
Message-ID<thZCF-7XE-1@gated-at.bofh.it>
In reply to#1593206
On Mon, Mar 06, 2017 at 11:15:28AM +0000, Chris Wilson wrote:
> On Mon, Mar 06, 2017 at 12:01:51AM +0100, Pavel Machek wrote:
> > Hi!
> > 
> > > > mplayer stopped working after a while. Dmesg says:
> > > > 
> > > > [ 3000.266533] cdc_ether 2-1.2:1.0 usb0: register 'cdc_ether' at
> > 
> > Now I'm pretty sure it is a regression in v4.11-rc0. Any ideas what to
> > try? Bisect will be slow and nasty :-(.
> 
> I came the conclusion that #99671 is the ring HEAD overtaking the TAIL,
> and under the presumption that your bug matches (as the symptoms do):
> 
> diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c b/drivers/gpu/drm/i915/intel_ringbuffer.c
> index 4ffa35faff49..62e31a7438ac 100644
> --- a/drivers/gpu/drm/i915/intel_ringbuffer.c
> +++ b/drivers/gpu/drm/i915/intel_ringbuffer.c
> @@ -782,10 +782,10 @@ static void i9xx_submit_request(struct drm_i915_gem_request *request)
>  {
>         struct drm_i915_private *dev_priv = request->i915;
>  
> -       i915_gem_request_submit(request);
> -
>         GEM_BUG_ON(!IS_ALIGNED(request->tail, 8));
>         I915_WRITE_TAIL(request->engine, request->tail);
> +
> +       i915_gem_request_submit(request);

Hmm. request->tail is not set until i915_gem_request_submit() Uh oh.
-Chris

-- 
Chris Wilson, Intel Open Source Technology Centre

[toc] | [prev] | [next] | [standalone]


#1593260

FromPavel Machek <pavel@ucw.cz>
Date2017-03-06 13:20 +0100
Message-ID<thZMm-83M-11@gated-at.bofh.it>
In reply to#1593206

[Multipart message — attachments visible in raw view] — view raw

On Mon 2017-03-06 11:15:28, Chris Wilson wrote:
> On Mon, Mar 06, 2017 at 12:01:51AM +0100, Pavel Machek wrote:
> > Hi!
> > 
> > > > mplayer stopped working after a while. Dmesg says:
> > > > 
> > > > [ 3000.266533] cdc_ether 2-1.2:1.0 usb0: register 'cdc_ether' at
> > 
> > Now I'm pretty sure it is a regression in v4.11-rc0. Any ideas what to
> > try? Bisect will be slow and nasty :-(.
> 
> I came the conclusion that #99671 is the ring HEAD overtaking the TAIL,
> and under the presumption that your bug matches (as the symptoms do):
> 
> diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c b/drivers/gpu/drm/i915/intel_ringbuffer.c
> index 4ffa35faff49..62e31a7438ac 100644
> --- a/drivers/gpu/drm/i915/intel_ringbuffer.c
> +++ b/drivers/gpu/drm/i915/intel_ringbuffer.c
> @@ -782,10 +782,10 @@ static void i9xx_submit_request(struct drm_i915_gem_request *request)
>  {
>         struct drm_i915_private *dev_priv = request->i915;
>  
> -       i915_gem_request_submit(request);
> -
>         GEM_BUG_ON(!IS_ALIGNED(request->tail, 8));
>         I915_WRITE_TAIL(request->engine, request->tail);
> +
> +       i915_gem_request_submit(request);
>  }
>  
>  static void i9xx_emit_breadcrumb(struct drm_i915_gem_request *req, u32 *cs)

I applied it as:

diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c b/drivers/gpu/drm/i915/intel_ringbuffer.c
index 91bc4ab..9c49c7a 100644
--- a/drivers/gpu/drm/i915/intel_ringbuffer.c
+++ b/drivers/gpu/drm/i915/intel_ringbuffer.c
@@ -1338,9 +1338,9 @@ static void i9xx_submit_request(struct drm_i915_gem_request *request)
 {
 	struct drm_i915_private *dev_priv = request->i915;
 
-	i915_gem_request_submit(request);
-
 	I915_WRITE_TAIL(request->engine, request->tail);
+
+	i915_gem_request_submit(request);
 }
 
 static void i9xx_emit_breadcrumb(struct drm_i915_gem_request *req,

Hmm. But your next mail suggest that it may not be smart to try to
boot it? :-).

										Pavel

-- 
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html

[toc] | [prev] | [next] | [standalone]


#1593267

FromChris Wilson <chris@chris-wilson.co.uk>
Date2017-03-06 13:30 +0100
Message-ID<thZW1-880-3@gated-at.bofh.it>
In reply to#1593260
On Mon, Mar 06, 2017 at 01:10:48PM +0100, Pavel Machek wrote:
> On Mon 2017-03-06 11:15:28, Chris Wilson wrote:
> > On Mon, Mar 06, 2017 at 12:01:51AM +0100, Pavel Machek wrote:
> > > Hi!
> > > 
> > > > > mplayer stopped working after a while. Dmesg says:
> > > > > 
> > > > > [ 3000.266533] cdc_ether 2-1.2:1.0 usb0: register 'cdc_ether' at
> > > 
> > > Now I'm pretty sure it is a regression in v4.11-rc0. Any ideas what to
> > > try? Bisect will be slow and nasty :-(.
> > 
> > I came the conclusion that #99671 is the ring HEAD overtaking the TAIL,
> > and under the presumption that your bug matches (as the symptoms do):
> > 
> > diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c b/drivers/gpu/drm/i915/intel_ringbuffer.c
> > index 4ffa35faff49..62e31a7438ac 100644
> > --- a/drivers/gpu/drm/i915/intel_ringbuffer.c
> > +++ b/drivers/gpu/drm/i915/intel_ringbuffer.c
> > @@ -782,10 +782,10 @@ static void i9xx_submit_request(struct drm_i915_gem_request *request)
> >  {
> >         struct drm_i915_private *dev_priv = request->i915;
> >  
> > -       i915_gem_request_submit(request);
> > -
> >         GEM_BUG_ON(!IS_ALIGNED(request->tail, 8));
> >         I915_WRITE_TAIL(request->engine, request->tail);
> > +
> > +       i915_gem_request_submit(request);
> >  }
> >  
> >  static void i9xx_emit_breadcrumb(struct drm_i915_gem_request *req, u32 *cs)
> 
> I applied it as:
> 
> diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c b/drivers/gpu/drm/i915/intel_ringbuffer.c
> index 91bc4ab..9c49c7a 100644
> --- a/drivers/gpu/drm/i915/intel_ringbuffer.c
> +++ b/drivers/gpu/drm/i915/intel_ringbuffer.c
> @@ -1338,9 +1338,9 @@ static void i9xx_submit_request(struct drm_i915_gem_request *request)
>  {
>  	struct drm_i915_private *dev_priv = request->i915;
>  
> -	i915_gem_request_submit(request);
> -
>  	I915_WRITE_TAIL(request->engine, request->tail);
> +
> +	i915_gem_request_submit(request);
>  }
>  
>  static void i9xx_emit_breadcrumb(struct drm_i915_gem_request *req,
> 
> Hmm. But your next mail suggest that it may not be smart to try to
> boot it? :-).

Don't bother, it'll promptly hang.
-Chris

-- 
Chris Wilson, Intel Open Source Technology Centre

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web