On 02.07.2014 12:11, Michel D?nzer wrote:
> On 02.07.2014 12:01, Dieter N?tzel wrote:
>> Am 02.07.2014 02:29, schrieb Michel D?nzer:
>>> On 02.07.2014 01:46, Dieter N?tzel wrote:
>>>> Am 01.07.2014 10:14, schrieb Michel D?nzer:
>>>>> From: Michel D?nzer <michel.daenzer at amd.com>
>>>>>
>>>>> But move the programming back to the vertical blank interrupt handler.
>>>>> And signal the flip as being completed immediately after programming it
>>>>> to the hardware.
>>>>>
>>>>> This way we don't have to guess whether or not the hardware will
>>>>> execute
>>>>> the flip in a given vertical blank period, avoiding a whole lot of
>>>>> trouble.
>>>>>
>>>>> Also, not using the page flip interrupt anymore avoids problems due to
>>>>> completing page flips earlier than expected by userspace.
>>>>>
>>>>> Signed-off-by: Michel D?nzer <michel.daenzer at amd.com>
>>>>
>>>> Michel,
>>>>
>>>> against which tree is this first one?
>>>> Don't apply clean on 3.16-rc2.
>>>>
>>>> Can't find this in 'my' source (radeon_display.c).
>>>>
>>>>>>        radeon_crtc->flip_status = RADEON_FLIP_SUBMITTED; <<<
>>>>         spin_unlock_irqrestore(&crtc->dev->event_lock, flags);
>>>>         up_read(&rdev->exclusive_lock);
>>>
>>> The patch applies on top of my previous page flipping fix.
>>
>> Had some trouble with the first one but...
>> After digikam -> OpenGL Viewer (r600g/RV730 AGP)
>>
>> [-]
>> [   503.736] (II) RADEON(0): Modeline "1920x1080"x60.0  172.80  1920
>> 2040 2248 2576  1080 1081 1084 1118 -hsync +vsync (67.1 kHz e)
>> [   999.627] (WW) RADEON(0): flip queue failed: Device or resource busy
>> [   999.627] (WW) RADEON(0): Page flip failed: Device or resource busy
> 
> I saw these as well. It means the Xorg driver tried to submit another
> page flip before the previous one completed. That should be a Xorg
> driver / Mesa issue, but I think the Xorg driver handles this case
> gracefully with a copy instead of a flip.

I can also reproduce these with 3.15 without any additional page
flipping changes (and probably could with older kernels as well). It
happens for me when changing some GL apps from windowed to fullscreen
mode. I think the first flip is from kwin and the second, failing one
from the client.


-- 
Earthling Michel D?nzer            |                  http://www.amd.com
Libre software enthusiast          |                Mesa and X developer

Reply via email to