On 07.09.2014 12:06, Christian König wrote: > From: Christian König <christian.koenig@xxxxxxx> > > Semaphore values have 64 bits, not 32. This fixes a very subtle bug > that disables synchronization when the upper 32bits wasn't zero. > So essentially, half the semaphore values were never properly initialized and some loads with a lot of semaphore synchronization going on tried to use the uninitialized semaphores. I think the description in the commit could be improved according to that. I didn't get any DMA L2T copy hangs with semaphores disabled completely, but unfortunately this doesn't fix the hangs. Anyway, Reviewed-By: Grigori Goronzy <greg@xxxxxxxxxxxx> Grigori > Signed-off-by: Christian König <christian.koenig@xxxxxxx> > Cc: stable@xxxxxxxxxxxxxxx > --- > drivers/gpu/drm/radeon/radeon_semaphore.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/radeon/radeon_semaphore.c b/drivers/gpu/drm/radeon/radeon_semaphore.c > index 56d9fd6..abd6753 100644 > --- a/drivers/gpu/drm/radeon/radeon_semaphore.c > +++ b/drivers/gpu/drm/radeon/radeon_semaphore.c > @@ -34,7 +34,7 @@ > int radeon_semaphore_create(struct radeon_device *rdev, > struct radeon_semaphore **semaphore) > { > - uint32_t *cpu_addr; > + uint64_t *cpu_addr; > int i, r; > > *semaphore = kmalloc(sizeof(struct radeon_semaphore), GFP_KERNEL); >
Attachment:
signature.asc
Description: OpenPGP digital signature
_______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/dri-devel