[Bug 90741] Radeon: System pauses on TAHITI

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



https://bugzilla.kernel.org/show_bug.cgi?id=90741

--- Comment #50 from Maarten Lankhorst <bugs@xxxxxxxxxxxxxx> ---
Ok never mind that approach then..

in radeon_fence.c, add a
WARN_ON((int)atomic_read(&rdev->irq.ring_int[fence->ring]) <= 0); after the
sw_irq_get, it should never fire.

in si.c you have a few lines like this:

    if (atomic_read(&rdev->irq.ring_int[RADEON_RING_TYPE_GFX_INDEX])) {
        DRM_DEBUG("si_irq_set: sw int gfx\n");
        cp_int_cntl |= TIME_STAMP_INT_ENABLE;
    }
    if (atomic_read(&rdev->irq.ring_int[CAYMAN_RING_TYPE_CP1_INDEX])) {
        DRM_DEBUG("si_irq_set: sw int cp1\n");
        cp_int_cntl1 |= TIME_STAMP_INT_ENABLE;
    }
    if (atomic_read(&rdev->irq.ring_int[CAYMAN_RING_TYPE_CP2_INDEX])) {
        DRM_DEBUG("si_irq_set: sw int cp2\n");
        cp_int_cntl2 |= TIME_STAMP_INT_ENABLE;
    }

Can you first change all of the conditions to atomic_read(..) || 1 so it always
sets the irqs? That should fix the hangs at some cpu overhead..

If that works and you no longer get hangs, can you remove the || 1 for
RADEON_RING_TYPE_GFX_INDEX, see if the hangs are still gone?

-- 
You are receiving this mail because:
You are watching the assignee of the bug.
_______________________________________________
dri-devel mailing list
dri-devel@xxxxxxxxxxxxxxxxxxxxx
http://lists.freedesktop.org/mailman/listinfo/dri-devel





[Index of Archives]     [Linux DRI Users]     [Linux Intel Graphics]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux