[Bug 28341] Flickering screen in Neverball on drm-radeon-testing

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

 



https://bugs.freedesktop.org/show_bug.cgi?id=28341

--- Comment #20 from Mario Kleiner <mario.kleiner@xxxxxxxxxxxxxxxx> 2010-07-25 08:26:41 PDT ---
Created an attachment (id=37368)
 View: https://bugs.freedesktop.org/attachment.cgi?id=37368
 Review: https://bugs.freedesktop.org/review?bug=28341&attachment=37368

Proof of concept "fix" for R600/R700. Act on dri2InvalidateDrawable(). 

This patch together with the previous patch applied to current mesa git master
eliminates the flicker problem on my tested apps with a R600 card.

A new function radeon_prepare_render() checks the timestamps that get updated
by dri2InvalidateDrawable() to find out if a swap is in progress / buffers are
invalidated.
If so, it uses radeon_update_buffers() to get "new" buffers. That function will
also throttle
the client if a swap is still in progress. We'd need to add a call to
radeon_prepare_render() to
various places in the driver. This is what the intel driver does with
intel_prepare_render() to
avoid artifacts.

I've only added a check to r700DrawPrims() to see if it works at all. I don't
know at which other
locations such calls would be needed (and i'm a bloody beginner), so this is a
pretty sketchy start. 

-mario

-- 
Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for 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