On Wed, Dec 10, 2014 at 02:51:43PM +0100, Christian König wrote: > Am 10.12.2014 um 13:55 schrieb Luis Henriques: > >Hi Christian, > > > >On Mon, Dec 08, 2014 at 02:47:33PM +0100, Christian König wrote: > >>As requested a version of the patch rebased on 3.17 is attached. > >> > >Do you think this is also appropriate for the 3.16 kernel? > > The problem that this patch fixes is present since kernel 3.15 but very > unlikely to happen. > > If 3.16 is still maintained then adding this one as well probably won't > hurt. > Great, thanks a lot Christian. I'll use your backport for the 3.16 kernel as well. (And yes, the Ubuntu kernel team is providing extended stable support for the Linux 3.16 kernel: https://lkml.org/lkml/2014/10/30/649 ) Cheers, -- Luís > Regards, > Christian. > > > > >Cheers, > >-- > >Luís > > > >>Regards, > >>Christian. > >> > >>Am 07.12.2014 um 07:09 schrieb gregkh@xxxxxxxxxxxxxxxxxxx: > >>>The patch below does not apply to the 3.17-stable tree. > >>>If someone wants it applied there, or to any other stable or longterm > >>>tree, then please email the backport, including the original git commit > >>>id to <stable@xxxxxxxxxxxxxxx>. > >>> > >>>thanks, > >>> > >>>greg k-h > >>> > >>>------------------ original commit in Linus's tree ------------------ > >>> > >>> From 86b276385c6a986872e4cd144f5940b156053c3f Mon Sep 17 00:00:00 2001 > >>>From: =?UTF-8?q?Christian=20K=C3=B6nig?= <christian.koenig@xxxxxxx> > >>>Date: Thu, 27 Nov 2014 13:12:58 +0100 > >>>Subject: [PATCH] drm/radeon: sync all BOs involved in a CS v2 > >>>MIME-Version: 1.0 > >>>Content-Type: text/plain; charset=UTF-8 > >>>Content-Transfer-Encoding: 8bit > >>> > >>>Not just the userspace relocs, otherwise we won't wait > >>>for a swapped out page tables to be swapped in again. > >>> > >>>v2: rebased on Alex current drm-fixes-3.18 > >>> > >>>Signed-off-by: Christian König <christian.koenig@xxxxxxx> > >>>Cc: stable@xxxxxxxxxxxxxxx > >>>Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx> > >>> > >>>diff --git a/drivers/gpu/drm/radeon/radeon_cs.c b/drivers/gpu/drm/radeon/radeon_cs.c > >>>index a3e7aed7e680..6f377de099f9 100644 > >>>--- a/drivers/gpu/drm/radeon/radeon_cs.c > >>>+++ b/drivers/gpu/drm/radeon/radeon_cs.c > >>>@@ -251,22 +251,19 @@ static int radeon_cs_get_ring(struct radeon_cs_parser *p, u32 ring, s32 priority > >>> static int radeon_cs_sync_rings(struct radeon_cs_parser *p) > >>> { > >>>- int i, r = 0; > >>>+ struct radeon_cs_reloc *reloc; > >>>+ int r; > >>>- for (i = 0; i < p->nrelocs; i++) { > >>>+ list_for_each_entry(reloc, &p->validated, tv.head) { > >>> struct reservation_object *resv; > >>>- if (!p->relocs[i].robj) > >>>- continue; > >>>- > >>>- resv = p->relocs[i].robj->tbo.resv; > >>>+ resv = reloc->robj->tbo.resv; > >>> r = radeon_semaphore_sync_resv(p->rdev, p->ib.semaphore, resv, > >>>- p->relocs[i].tv.shared); > >>>- > >>>+ reloc->tv.shared); > >>> if (r) > >>>- break; > >>>+ return r; > >>> } > >>>- return r; > >>>+ return 0; > >>> } > >>> /* XXX: note that this is called from the legacy UMS CS ioctl as well */ > >>> > >> From 131a7ff8fea48014638b84b25cf58f52c9f3d268 Mon Sep 17 00:00:00 2001 > >>From: =?UTF-8?q?Christian=20K=C3=B6nig?= <christian.koenig@xxxxxxx> > >>Date: Thu, 27 Nov 2014 13:12:58 +0100 > >>Subject: [PATCH] drm/radeon: sync all BOs involved in a CS v3 > >>MIME-Version: 1.0 > >>Content-Type: text/plain; charset=UTF-8 > >>Content-Transfer-Encoding: 8bit > >> > >>Not just the userspace relocs, otherwise we won't wait > >>for a swapped out page tables to be swapped in again. > >> > >>v2: rebased on Alex current drm-fixes-3.18 > >>v3: rebased on 3.17-stable tree > >> > >>Signed-off-by: Christian K??nig <christian.koenig@xxxxxxx> > >>Cc: stable@xxxxxxxxxxxxxxx > >>Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx> > >>--- > >> drivers/gpu/drm/radeon/radeon_cs.c | 9 +++------ > >> 1 file changed, 3 insertions(+), 6 deletions(-) > >> > >>diff --git a/drivers/gpu/drm/radeon/radeon_cs.c b/drivers/gpu/drm/radeon/radeon_cs.c > >>index e244c2d..67f9157 100644 > >>--- a/drivers/gpu/drm/radeon/radeon_cs.c > >>+++ b/drivers/gpu/drm/radeon/radeon_cs.c > >>@@ -226,14 +226,11 @@ static int radeon_cs_get_ring(struct radeon_cs_parser *p, u32 ring, s32 priority > >> static void radeon_cs_sync_rings(struct radeon_cs_parser *p) > >> { > >>- int i; > >>- > >>- for (i = 0; i < p->nrelocs; i++) { > >>- if (!p->relocs[i].robj) > >>- continue; > >>+ struct radeon_cs_reloc *reloc; > >>+ list_for_each_entry(reloc, &p->validated, tv.head) { > >> radeon_semaphore_sync_to(p->ib.semaphore, > >>- p->relocs[i].robj->tbo.sync_obj); > >>+ reloc->robj->tbo.sync_obj); > >> } > >> } > >>-- > >>1.9.1 > >> > > -- > To unsubscribe from this list: send the line "unsubscribe stable" in > the body of a message to majordomo@xxxxxxxxxxxxxxx > More majordomo info at http://vger.kernel.org/majordomo-info.html -- To unsubscribe from this list: send the line "unsubscribe stable" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html