From mboxrd@z Thu Jan 1 00:00:00 1970 From: bugzilla-daemon@freedesktop.org Subject: [Bug 62959] r600g (HD 6950 Cayman) fails piglit tests and hangs system Date: Fri, 05 Apr 2013 23:45:18 +0000 Message-ID: References: Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="===============1303266318==" Return-path: Received: from culpepper.freedesktop.org (unknown [131.252.210.165]) by gabe.freedesktop.org (Postfix) with ESMTP id 53396E5C54 for ; Fri, 5 Apr 2013 16:45:18 -0700 (PDT) In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: dri-devel-bounces+sf-dri-devel=m.gmane.org@lists.freedesktop.org Errors-To: dri-devel-bounces+sf-dri-devel=m.gmane.org@lists.freedesktop.org To: dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org --===============1303266318== Content-Type: multipart/alternative; boundary="1365205518.A3AA0.25830"; charset="us-ascii" --1365205518.A3AA0.25830 Date: Fri, 5 Apr 2013 23:45:18 +0000 MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable https://bugs.freedesktop.org/show_bug.cgi?id=3D62959 --- Comment #13 from Marek Ol=C5=A1=C3=A1k --- This kernel patch fixes everything: diff --git a/drivers/gpu/drm/radeon/radeon_cs.c b/drivers/gpu/drm/radeon/radeon_cs.c index 70d3824..748a933 100644 --- a/drivers/gpu/drm/radeon/radeon_cs.c +++ b/drivers/gpu/drm/radeon/radeon_cs.c @@ -459,6 +459,7 @@ static int radeon_cs_ib_vm_chunk(struct radeon_device *rdev, if (r) { goto out; } + radeon_fence_wait(vm->fence, false); radeon_cs_sync_rings(parser); radeon_ib_sync_to(&parser->ib, vm->fence); radeon_ib_sync_to(&parser->ib, radeon_vm_grab_id( It's merely a workaround and it kills performance, but it's now pretty clear there is a synchronization issue in the kernel affecting all NI chips with virtual memory, and it should now be easier to find the bug. I'm not really familiar with the kernel code. I had to do some code reading before I found= the right place to put the wait call in. --=20 You are receiving this mail because: You are the assignee for the bug. --1365205518.A3AA0.25830 Date: Fri, 5 Apr 2013 23:45:18 +0000 MIME-Version: 1.0 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable

Commen= t # 13 on bug 62959<= /a> from Marek Ol=C5=A1=C3=A1k
This kernel patch fixes everything:

diff --git a/drivers/gpu/drm/radeon/radeon_cs.c
b/drivers/gpu/drm/radeon/radeon_cs.c
index 70d3824..748a933 100644
--- a/drivers/gpu/drm/radeon/radeon_cs.c
+++ b/drivers/gpu/drm/radeon/radeon_cs.c
@@ -459,6 +459,7 @@ static int radeon_cs_ib_vm_chunk(struct=
 radeon_device
*rdev,
        if (r) {
                goto out;
        }
+       radeon_fence_wait(vm->fence, false);
        radeon_cs_sync_rings(parser);
        radeon_ib_sync_to(&parser->ib, vm->fence);
        radeon_ib_sync_to(&parser->ib, radeon_vm_grab_id(

It's merely a workaround and it kills performance, but it's now pretty clear
there is a synchronization issue in the kernel affecting all NI chips with
virtual memory, and it should now be easier to find the bug. I'm not really
familiar with the kernel code. I had to do some code reading before I found=
 the
right place to put the wait call in.


You are receiving this mail because: =20=20=20=20=20=20
  • You are the assignee for the bug.
--1365205518.A3AA0.25830-- --===============1303266318== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ dri-devel mailing list dri-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/dri-devel --===============1303266318==--