On Sat, 14 Mar 2015 20:58:32 +1100
Mon Dec 10 10:49:46 2012 -0600 Jonathan Gray <[email protected]> wrote:
> On Tue, Mar 10, 2015 at 07:14:28AM -0400, dan mclaughlin wrote:
> > 
> > that did do something. before the screen would just freeze with its 
> > contents.
> > now it freezes like that for a second, and then goes blank. i reproduced it
> > twice. the first time took about the same amount of time as before, the 
> > second
> > went a bit longer before hanging. it seems there is also enough time before 
> > it
> > freezes to get error messages now. the first time i got the expected 
> > messages:
> > 
> > Mar  9 17:15:48 node02 /bsd: error: [drm:pid2359:i915_hangcheck_hung] 
> > *ERROR* Ha
> > ngcheck timer elapsed... GPU hung
> > Mar  9 17:15:48 node02 /bsd: error: [drm:pid11430:i915_reset] *ERROR* 
> > Failed to
> > reset chip.
> > 
> > the second time though i got this though:
> > 
> > Mar 10 06:37:01 node02 /bsd: error: 
> > [drm:pid27180:i915_get_vblank_timestamp] *ER
> > ROR* Invalid crtc 1
> > Mar 10 06:37:01 node02 /bsd: uvm_fault(0xd5c34634, 0x80038000, 0, 1) -> e
> > 
> > i do get occational vblank_timestamp errors but they have never seemed to 
> > cause
> > any significant problem before (although i don't use graphics too 
> > intensely).
> 
> The 845g hardware has a single display pipe.  I had hoped the problems
> people had encountered with it were gone when the 'pipe a force' quirks
> were removed for it.
> 
> I'm not entirely sure where to look for the source of getting the pipe
> wrong.
> 
> I would be interested to hear if the following diff makes any difference.
> From:
> 
> commit 21a245d2d62ef617978316203af032d499805cd2
> Author: Rob Clark <[email protected]>
> Date:   Mon Dec 10 10:49:46 2012 -0600
> 
>     drm: small fix in drm_send_vblank_event()
>     
>     Initialize e->pipe.. some drivers set this themselves, others do not.
>     Setting it in drm_send_vblank_event() should help ensure more consistent
>     behavior with the different drivers.
>     
> Index: sys/dev/pci/drm/drm_irq.c
> ===================================================================
> RCS file: /cvs/src/sys/dev/pci/drm/drm_irq.c,v
> retrieving revision 1.59
> diff -u -p -r1.59 drm_irq.c
> --- sys/dev/pci/drm/drm_irq.c 12 Feb 2015 08:48:32 -0000      1.59
> +++ sys/dev/pci/drm/drm_irq.c 12 Mar 2015 12:50:29 -0000
> @@ -885,6 +885,7 @@ void drm_send_vblank_event(struct drm_de
>  
>               now = get_drm_timestamp();
>       }
> +     e->pipe = crtc;
>       send_vblank_event(dev, e, seq, &now);
>  }
>  EXPORT_SYMBOL(drm_send_vblank_event);

no luck.

i was using qiv, and when changing a picture, it paused for a second or two
(no response) and then resumed, showing some blue lines across the middle for
a fraction of a second. everything was fine for a few more seconds, and then i
tried to use fullscreen, and it froze after blanking.

i got a few errors, but don't know exactly what caused them.

Mar 14 07:35:50 node02 /bsd: error: [drm:pid16745:i915_get_vblank_timestamp] 
*ERROR* Invalid crtc 1
Mar 14 07:35:59 node02 /bsd: error: [drm:pid31156:i915_hangcheck_hung] *ERROR* 
Hangcheck timer elapsed... GPU hung
Mar 14 07:35:59 node02 /bsd: error: [drm:pid11046:i915_reset] *ERROR* Failed to 
reset chip.

BTW, this was with the other patch applied as well.

Reply via email to