On Saturday 07 Jun 2014 12:21:51 Mick wrote:
> On Tuesday 11 Mar 2014 14:47:26 Mick wrote:
> > On Tuesday 11 Mar 2014 08:00:43 Carsten Haitzler wrote:
> > > On Tue, 11 Mar 2014 06:51:59 +0000 Mick <[email protected]>
said:
> > > > Hi All,
> > > >
> > > > I thought of asking here first. When I wake up the machine from
> > > > hibernation the radeon driver starts throwing all these errors up and
> > > > eventually the xsession is terminated, knocking me out of e18:
> > > > ==========================================================
> > > > Mar 10 22:56:05 dell_xps kernel: hub 1-0:1.0: hub_suspend
> > > > Mar 10 22:56:05 dell_xps kernel: usb usb1: bus auto-suspend, wakeup 1
> > > > Mar 10 22:56:05 dell_xps kernel: ehci-pci 0000:00:1a.0: suspend root
> > > > hub Mar 10 22:56:07 dell_xps kernel: radeon 0000:02:00.0:
> > > > ffff880075e91000 pin failed
> > > > Mar 10 22:56:07 dell_xps kernel: [drm:radeon_crtc_page_flip] *ERROR*
> > > > failed to pin new rbo buffer before flip
> > > > Mar 10 22:56:07 dell_xps kernel: radeon 0000:02:00.0:
> > > > ffff880075e91000 pin failed
> > > > Mar 10 22:56:07 dell_xps kernel: [drm:radeon_crtc_page_flip] *ERROR*
> > > > failed to pin new rbo buffer before flip
> > > > Mar 10 22:56:07 dell_xps kernel: radeon 0000:02:00.0:
> > > > ffff880075e91000 pin failed
> > > > Mar 10 22:56:07 dell_xps kernel: [drm:radeon_crtc_page_flip] *ERROR*
> > > > failed to pin new rbo buffer before flip
> > > > Mar 10 22:56:07 dell_xps kernel: radeon 0000:02:00.0:
> > > > ffff880075e91000 pin failed
> > > > Mar 10 22:56:07 dell_xps kernel: [drm:radeon_crtc_page_flip] *ERROR*
> > > > failed to pin new rbo buffer before flip
> > > > Mar 10 22:56:07 dell_xps kernel: radeon 0000:02:00.0:
> > > > ffff880075e91000 pin failed
> > > > Mar 10 22:56:07 dell_xps kernel: [drm:radeon_crtc_page_flip] *ERROR*
> > > > failed to pin new rbo buffer before flip
> > > > Mar 10 22:56:07 dell_xps kernel: radeon 0000:02:00.0:
> > > > ffff880075e91000 pin failed
> > > > Mar 10 22:56:07 dell_xps kernel: [drm:radeon_crtc_page_flip] *ERROR*
> > > > failed to pin new rbo buffer before flip
> > > > Mar 10 22:56:07 dell_xps kernel: radeon 0000:02:00.0:
> > > > ffff880075e91000 pin failed
> > > > Mar 10 22:56:07 dell_xps kernel: [drm:radeon_crtc_page_flip] *ERROR*
> > > > failed to pin new rbo buffer before flip
> > > > Mar 10 22:56:07 dell_xps kernel: radeon 0000:02:00.0:
> > > > ffff880075e91000 pin failed
> > > > Mar 10 22:56:07 dell_xps kernel: [drm:radeon_crtc_page_flip] *ERROR*
> > > > failed to pin new rbo buffer before flip
> > > > Mar 10 22:56:07 dell_xps kernel: radeon 0000:02:00.0:
> > > > ffff880075e91000 pin failed
> > > > Mar 10 22:56:07 dell_xps kernel: [drm:radeon_crtc_page_flip] *ERROR*
> > > > failed to pin new rbo buffer before flip
> > > > Mar 10 22:56:07 dell_xps kernel: radeon 0000:02:00.0:
> > > > ffff880075e91000 pin failed
> > > > [snip ...]
> > > >
> > > > Mar 10 22:56:31 dell_xps kernel: radeon 0000:02:00.0:
> > > > ffff880075e91000 pin failed
> > > > Mar 10 22:56:31 dell_xps kernel: [drm:radeon_crtc_page_flip] *ERROR*
> > > > failed to pin new rbo buffer before flip
> > > > Mar 10 22:56:31 dell_xps kernel: usb 2-1.2: unlink
> > > > qh8-0601/ffff8801323ab400 start 3 [1/2 us]
> > > > Mar 10 22:56:31 dell_xps kdm[1544]: X server for display :0
> > > > terminated unexpectedly
> > > > ==========================================================
> > > >
> > > > Even if I re-log into e18 within a few seconds X will crash and kick
> > > > me out. The only way out of this is to reboot. If I do not build
> > > > the respective binary blob in the firmware then this problem does
> > > > not occur.
> > > >
> > > > This is what I have specified in the kernel:
> > > > CONFIG_EXTRA_FIRMWARE="radeon/R700_rlc.bin radeon/RV730_smc.bin
> > > > radeon/RV710_uvd.bin"
> > > >
> > > >
> > > > Shall I file a bug for the radeon driver, or is it something else
> > > > causing this?
> > >
> > > almost definitely. a low level bug. from the messages i might guess
> > > that it's trying to force your buffer to be non-swappable (cannot be
> > > removed from memory and written to disk with hibernation or swapping
> > > in ay way) and that is failing. a scanout buffer MUST be in memory and
> > > cannot be paged in by kernel +mmu traps. it cannot move around in
> > > memory - likely required to be at the exact same physical address and
> > > possibly not fragmented (in one continuous chunk) and tryng to force
> > > the buffer to do this is failing for whatever reason (likely
> > > hibernation forced the memory to become "virtual" to be able to be
> > > written out to disk, and once virtual it can no longer be converted
> > > back to physical "pinnable" mode - likely a driver limitation).
> > > technically if this is a limit then the driver should re-allocate the
> > > buffer somewhere else in memory and ensure that it is physically
> > > accessible like scanout wants (pinnable - i am guessing here - i know
> > > nothing of radeon internals), and ifr needed copy the buffer contents
> > > from virtual to the new physical pinned buffer, free the old virtual
> > > buffer and simply re-program pagetables to point the SAeM virtual
> > > address that userspace saw to point to the new REAL physical buffer
> > > location... but it's not doing this as someone simply didn't bother
> > > writing the support code to handle this case.
> > >
> > > until the driver is fixed, don't hibernate, as that can't FORCE the
> > > memory out of its current "pinnable" mode. :) (alternative for driver
> > > is to deny/fail the hibernate since its impossible to hibernate the
> > > memory).
> >
> > Thanks Raster for a crash course on Radeon's non-swappable buffers! :-)
> >
> > I'll file a bug if one has not been filed already, if only to give the
> > devs a chance to look into it.
>
> This was a kernel bug and with 3.12.21-r1 I can hibernate again. Now I get
> this in the log:
>
> Jun 7 12:14:11 dell_xps kernel: radeon 0000:02:00.0: GPU lockup CP stall
> for more than 10000msec
> Jun 7 12:14:11 dell_xps kernel: radeon 0000:02:00.0: GPU lockup (waiting
> for 0x0000000000000004 last fence id 0x0000000000000002)
> Jun 7 12:14:11 dell_xps kernel: [drm:uvd_v1_0_ib_test] *ERROR* radeon:
> fence wait failed (-35).
> Jun 7 12:14:11 dell_xps kernel: [drm:radeon_ib_ring_tests] *ERROR* radeon:
> failed testing IB on ring 5 (-35).
> Jun 7 12:14:11 dell_xps kernel: PM: restore of devices complete after
> 11655.171 msecs
> Jun 7 12:14:11 dell_xps kernel: PM: Image restored successfully.
>
>
> but no crashes so far. :-)
Oops! Spoke too fast. :-(
and also lost the URL with the kernel bug that I had found.
--
Regards,
Mick
------------------------------------------------------------------------------
Learn Graph Databases - Download FREE O'Reilly Book
"Graph Databases" is the definitive new guide to graph databases and their
applications. Written by three acclaimed leaders in the field,
this first edition is now available. Download your free book today!
http://p.sf.net/sfu/NeoTech
_______________________________________________
enlightenment-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-users