[Nouveau] [PATCH 2/2] drm/nouveau: implement precise vblank timestamping

2012-04-25 Thread Lucas Stach
This patch implements the driver hooks needed for precise vblank timestamping. This is a complementary patch to Mario Kleiner's patches to improve swap scheduling. With the complete patchset applied nouveau will be able to provide correct and precise pageflip timestamps (compliant to OML_sync_contr

[Nouveau] [PATCH 1/2] drm/nouveau: Use drm_vblank_count_and_time() for pageflip completion events.

2012-04-25 Thread Lucas Stach
From: Mario Kleiner Emit kms pageflip completion events with proper vblank count and timestamp for the vblank interval in which the pageflip completed. This makes the timestamps and counts consistent with what the OML_sync_control spec defines. v2 Lucas Stach: rebased on top of nouveau tree and

Re: [Nouveau] [PATCH v2 4/4] drm/nouveau: gpu lockup recovery

2012-04-25 Thread Marcin Slusarz
On Wed, Apr 25, 2012 at 11:20:36PM +0200, Marcin Slusarz wrote: > Overall idea: > Detect lockups by watching for timeouts (vm flush / fence), return -EIOs, > handle them at ioctl level, reset the GPU and repeat last ioctl. > > GPU reset is done by doing suspend / resume cycle with few tweaks: > -

[Nouveau] [Bug 48890] dmesg full of DATA_ERROR SEMANTIC_PTSZ_OVER_LIMIT errors on nouveau driver

2012-04-25 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=48890 Lucas Stach changed: What|Removed |Added Status|NEW |RESOLVED Resolution|

[Nouveau] [PATCH v2 4/4] drm/nouveau: gpu lockup recovery

2012-04-25 Thread Marcin Slusarz
Overall idea: Detect lockups by watching for timeouts (vm flush / fence), return -EIOs, handle them at ioctl level, reset the GPU and repeat last ioctl. GPU reset is done by doing suspend / resume cycle with few tweaks: - CPU-only bo eviction - ignoring vm flush / fence timeouts - shortening waits

[Nouveau] [PATCH v2 3/4] drm/nv50: let applications hanging on vm flush to be killed

2012-04-25 Thread Marcin Slusarz
Signed-off-by: Marcin Slusarz --- drivers/gpu/drm/nouveau/nv50_graph.c |5 + 1 files changed, 5 insertions(+), 0 deletions(-) diff --git a/drivers/gpu/drm/nouveau/nv50_graph.c b/drivers/gpu/drm/nouveau/nv50_graph.c index 6899547..a61853f 100644 --- a/drivers/gpu/drm/nouveau/nv50_graph.c

[Nouveau] [PATCH v2 2/4] drm/nouveau: propagate errors from vm flushes

2012-04-25 Thread Marcin Slusarz
We need this for lockup recovery. Signed-off-by: Marcin Slusarz --- drivers/gpu/drm/nouveau/nouveau_bo.c |9 +++-- drivers/gpu/drm/nouveau/nouveau_drv.h |6 +++--- drivers/gpu/drm/nouveau/nouveau_vm.c | 20 ++-- drivers/gpu/drm/nouveau/nouveau_vm.h | 18 +++

[Nouveau] [PATCH v2 1/4] drm/nouveau: base fence timeout on time of emission

2012-04-25 Thread Marcin Slusarz
Wait loop can be interrupted by signal, so if signals are raised periodically (e.g. SIGALRM) this loop may never finish. Use emission time as a base for fence timeout. Signed-off-by: Marcin Slusarz --- drivers/gpu/drm/nouveau/nouveau_fence.c |5 - 1 files changed, 4 insertions(+), 1 dele

[Nouveau] [Bug 48890] dmesg full of DATA_ERROR SEMANTIC_PTSZ_OVER_LIMIT errors on nouveau driver

2012-04-25 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=48890 --- Comment #6 from Alen Skondro 2012-04-25 14:04:48 PDT --- Confirmed, there are no error messages anymore. Thank you! -- Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email --- You are receiving this mail because: --

[Nouveau] [Bug 49148] nv20_state_fb.c:50: get_rt_format: Assertion `0' failed.

2012-04-25 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=49148 --- Comment #1 from Lucas Stach 2012-04-25 12:51:55 PDT --- Created attachment 60588 --> https://bugs.freedesktop.org/attachment.cgi?id=60588 proposed fix Could you please try the attached patch? It's only compile tested, as I don't have any v

[Nouveau] [Bug 49148] New: nv20_state_fb.c:50: get_rt_format: Assertion `0' failed.

2012-04-25 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=49148 Bug #: 49148 Summary: nv20_state_fb.c:50: get_rt_format: Assertion `0' failed. Classification: Unclassified Product: xorg Version: unspecified Platform: x86 (IA32)

[Nouveau] [Bug 49142] New: [NV4A] OpengGL content corruption when width >= 2048

2012-04-25 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=49142 Bug #: 49142 Summary: [NV4A] OpengGL content corruption when width >= 2048 Classification: Unclassified Product: Mesa Version: git Platform: Other OS/Version: All Stat

Re: [Nouveau] [RFC PATCH 5/5] drm/nouveau: gpu lockup recovery

2012-04-25 Thread Christoph Bumiller
On 04/23/2012 06:32 PM, Marcin Slusarz wrote: > You can run fs-discard-exit-2 test first - for me it causes instant GPU > lockup. > That's because it's designed (but not supposed) to do that, it also locks up with the blob, it's a harmless shader infinite loop. (May be a bug in the MPs or a wro