Bug 22746 - [KMS] tri-viewport broken on rv280 in DRI2 mode
Summary: [KMS] tri-viewport broken on rv280 in DRI2 mode
Status: RESOLVED FIXED
Alias: None
Product: Mesa
Classification: Unclassified
Component: Drivers/DRI/r200 (show other bugs)
Version: git
Hardware: x86 (IA32) Linux (All)
: medium normal
Assignee: Default DRI bug account
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-07-13 04:33 UTC by Andrew Randrianasulu
Modified: 2009-08-24 12:32 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments
broken/wrong tri-viewport (8.11 KB, image/jpeg)
2009-07-13 04:34 UTC, Andrew Randrianasulu
Details
image corrected by simple enabling composite manager (21.65 KB, image/jpeg)
2009-07-13 04:35 UTC, Andrew Randrianasulu
Details

Description Andrew Randrianasulu 2009-07-13 04:33:34 UTC
I have this video hw:

01:00.0 VGA compatible controller: ATI Technologies Inc RV280 [Radeon 9200 SE] (rev 01) (prog-if 00 [VGA controller])
        Subsystem: Hightech Information System Ltd. Excalibur 9200SE VIVO 128M
        Flags: bus master, 66MHz, medium devsel, latency 64, IRQ 16
        Memory at c8000000 (32-bit, prefetchable) [size=128M]
        I/O ports at b800 [size=256]
        Memory at d7ef0000 (32-bit, non-prefetchable) [size=64K]
        Expansion ROM at d7ec0000 [disabled] [size=128K]
        Capabilities: [58] AGP version 2.0
        Capabilities: [50] Power Management version 2
        Kernel driver in use: radeon
        Kernel modules: radeon, radeonfb

(ignore radeonfb, it's blacklisted and NOT loaded)

with following software setup

kernel - Linus tree master branch commit  7638d5322bd89d49e013a03fe2afaeb6d214fabd (Date:   Sun Jul 12 12:24:35 2009 -0700
    Merge branch 'kmemleak' of git://linux-arm.org/linux-2.6)

libdrm - master branch commit 3f3c5be6f908272199ccf53f108b1124bfe0a00e (Date:   Thu Jul 9 17:49:46 2009 -0700
    intel: Free buffers in the BO cache that haven't been reused in a while.)

mesa - master branch, commit bb4c70358778f28f644ae493b5d8163e76e9fddb (Date:   Tue Jul 14 01:22:17 2009 +1000
    radeon: port more front fixes from intel.)

xserver - master commit 9f1570c8f4f549cdd2fbae1234011290fcc73e18 (Date:   Fri Jun 26 09:12:47 2009 +1000
    input: include effective modifiers in device events.)

xf86-video-ati - master commit 035e8d1d5593c12828bb079de4e663cf1b1f1674 (Date:   Sun Jul 12 13:45:29 2009 +0200
    Fix a warning)

i have broken tri-viewport in non-composited case, so nearly all OpenGL demos are broken. If i enable compositing in e16 config menus - tri-viewport show correct, full image in it's window. It was like this for some time, i'm sure latest mesa commits not responsible for this breakage, but i don't remember correct mesa/xserver combo. At least around 

"Date:   Mon Jun 29 20:15:47 2009 +1000
    Revert "r200: make use of DMA buffers for Elts a lot better."

it was working ... but i see no point in bisecting  this - since this there  was new libdrm interface, fixed xserver dri2 interface .. everyone want new code fixed, no? Probably, i just need to add few printfs inside r200UpdateWindow, or it's callers? Or something like this into xserver dri2 code (just for seeing waht values were send by X server to driver and down to stack)
Comment 1 Andrew Randrianasulu 2009-07-13 04:34:49 UTC
Created attachment 27625 [details]
broken/wrong tri-viewport
Comment 2 Andrew Randrianasulu 2009-07-13 04:35:48 UTC
Created attachment 27626 [details]
image corrected by simple enabling composite manager
Comment 3 Andrew Randrianasulu 2009-07-19 12:52:21 UTC
OK, not using  render/composite operations (bare X server) leave tri-viewport  in working state. But e16 window manager unfortunately uses Xrender even without actual compositing, so only way to workaround this bug was Option  "EXANoComposite" "1". May be wrong 3d state uploaded by DDX?
Comment 4 Andrew Randrianasulu 2009-07-19 12:57:41 UTC
Additional info. If i run X server with radeon ddx and EXANoComposite set to 0, just once, bug will persist until reboot, i mean _just_ X restart even without Render Acceleration this time will give me wrong/buggy 3d window. 
Comment 5 Andrew Randrianasulu 2009-08-07 05:37:18 UTC
Fixed, at least with this  combination

mesa commit  239c8bfb10d3cd61547ccc460f0b89062f3520bc ( radeon: enable tiling fallbacks in 3D driver.)

xf86-video-ati commit cd99d9f0d715f1f74de4fe22f2fd30046f2c7568 (Properly let radeon_cs_flush_indirect() re-emit 2D state if necessary.)
Comment 6 Adam Jackson 2009-08-24 12:32:50 UTC
Mass version move, cvs -> git


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.