Bug 35682 - [Arrandale] support for >4096x4096 render targets
Summary: [Arrandale] support for >4096x4096 render targets
Status: RESOLVED FIXED
Alias: None
Product: Mesa
Classification: Unclassified
Component: Drivers/DRI/i965 (show other bugs)
Version: unspecified
Hardware: x86-64 (AMD64) Linux (All)
: medium major
Assignee: Chris Wilson
QA Contact: Xorg Project Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-03-25 18:07 UTC by Bryce Harrington
Modified: 2012-03-21 15:25 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments
CurrentDmesg.txt (1.71 KB, text/plain)
2011-03-25 18:09 UTC, Bryce Harrington
Details
BootDmesg.txt (55.11 KB, text/plain)
2011-03-25 18:11 UTC, Bryce Harrington
Details
XorgLog.txt (34.20 KB, text/plain)
2011-03-25 18:11 UTC, Bryce Harrington
Details
Xrandr.txt (5.87 KB, text/plain)
2011-03-25 18:12 UTC, Bryce Harrington
Details
xrandr-with-lvds.txt (6.01 KB, text/plain)
2011-03-25 18:12 UTC, Bryce Harrington
Details
monitors.xml.txt (2.65 KB, text/plain)
2011-03-25 18:12 UTC, Bryce Harrington
Details

Description Bryce Harrington 2011-03-25 18:07:35 UTC
Forwarding this bug from Ubuntu reporter Andres Rodriguez:
http://bugs.launchpad.net/ubuntu/+source/xserver-xorg-video-intel/+bug/737891

[Problem]
Configuring external monitors appears to be broken with arrandale.  Multiple reporters with same chips have confirmed same behavior.

The issue appears when configuring monitors using gnome-display-properties, and is not reproduced when using the xrandr command line tool to perform the same configuration steps.

[Original Description]
While trying to connect external monitors through VGA in my Lenovo x201 with Intel HD Video graphics, gnome-display-properties fails to correctly display in the external monitors IF LVDS is set to off. If LVDS is kept on, then external monitors work correctly (Note that I'm not duplicating screens between LVDS and the external monitors).

To reproduce, do as follows:

1. Connect external monitor to VGA output.
2. Launch gnome-display-properties and enable external monitors.
3. At this point, both LVDS and external monitor should be working just fine.
4. Using gnome-display-properties, turn off LVDS.
5. At this point, the image in the external monitor looks like [1].

Now, note that when disabling LVDS with xrandr instead of gnome-display-properties, then the external monitors have a correct image and [1] is not reproduced.

[1]: http://me.roaksoax.com/dual-monitor.jpeg

DistroRelease: Ubuntu 11.04
Package: x11-xserver-utils 7.6~1
ProcVersionSignature: Ubuntu 2.6.38-7.35-generic 2.6.38
Uname: Linux 2.6.38-7-generic x86_64
Architecture: amd64
CompizPlugins: No value set for `/apps/compiz-1/general/screen0/options/active_plugins'
CompositorRunning: None
DRM.card0.DP.1:
 status: disconnected
 enabled: disabled
 dpms: Off
 modes: 
 edid-base64:
DRM.card0.HDMI.A.1:
 status: disconnected
 enabled: disabled
 dpms: Off
 modes: 
 edid-base64:
DRM.card0.LVDS.1:
 status: connected
 enabled: enabled
 dpms: Off
 modes: 1280x800 1280x800
 edid-base64: AP///////wAwrhFAAAAAAAATAQOAGhB46lzVk1xejiccUFQAAAABAQEBAQEBAQEBAQEBAQEB7hoAgFAgEDAQMBMABaMQAAAZ0BcAxlAgGTAwIDYABaMQAAAZAAAADwCBCjyBCjIWCQBMo0FUAAAA/gBMVE4xMjFBVDA3TDAyADg=
DRM.card0.VGA.1:
 status: connected
 enabled: enabled
 dpms: Off
 modes: 3840x1080 3200x1200 2560x1024 1600x1200 2048x768 1280x1024 1280x1024 1024x768 1024x768 800x600 800x600 640x480 640x480
 edid-base64: AP///////wA2mAAFegldUTMUAQMOKR946GDlo1dLnCURUFQlSwCpQIGAAQEBAQEBAQEBAQEB9WUAUPA4H0AQMDsAOjBBAAAaLUoAmKEAKkAwcBwA0SAhAAAawmWAQMGwI0BAQDcAhlIxAAAayDIAgIIAJjAw4DsAQdggAAAYAKU=
Date: Fri Mar 18 18:52:01 2011
DistUpgraded: Log time: 2011-02-24 12:39:40.003794
DistroCodename: natty
DistroVariant: ubuntu
GraphicsCard:
 Intel Corporation Core Processor Integrated Graphics Controller [8086:0046] (rev 02) (prog-if 00 [VGA controller])
   Subsystem: Lenovo Device [17aa:215a]
InstallationMedia: Ubuntu 10.10 "Maverick Meerkat" - Release amd64 (20101007)
Lsusb:
 Bus 002 Device 002: ID 8087:0020 Intel Corp. Integrated Rate Matching Hub
 Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
 Bus 001 Device 003: ID 17ef:4816 Lenovo 
 Bus 001 Device 002: ID 8087:0020 Intel Corp. Integrated Rate Matching Hub
 Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
MachineType: LENOVO 3249CTO
ProcEnviron:
 LANGUAGE=en_US:en
 LANG=en_US.UTF-8ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-2.6.38-7-generic root=UUID=193869b5-a880-4aca-9234-ae912a4b8d70 ro quiet splash vt.handoff=7
Renderer: Unknown
SourcePackage: x11-xserver-utils
UpgradeStatus: Upgraded to natty on 2011-02-24 (22 days ago)
dmi.bios.date: 10/26/2010
dmi.bios.vendor: LENOVO
dmi.bios.version: 6QET61WW (1.31 )
dmi.board.name: 3249CTO
dmi.board.vendor: LENOVO
dmi.board.version: Not Available
dmi.chassis.asset.tag: No Asset Information
dmi.chassis.type: 10
dmi.chassis.vendor: LENOVO
dmi.chassis.version: Not Available
dmi.modalias: dmi:bvnLENOVO:bvr6QET61WW(1.31):bd10/26/2010:svnLENOVO:pn3249CTO:pvrThinkPadX201:rvnLENOVO:rn3249CTO:rvrNotAvailable:cvnLENOVO:ct10:cvrNotAvailable:
dmi.product.name: 3249CTO
dmi.product.version: ThinkPad X201
dmi.sys.vendor: LENOVO
version.compiz: compiz 1:0.9.4-0ubuntu7
version.libdrm2: libdrm2 2.4.23-1ubuntu3
version.libgl1-mesa-glx: libgl1-mesa-glx 7.10.1-0ubuntu3
version.xserver-xorg: xserver-xorg 1:7.6~3ubuntu11
version.xserver-xorg-video-ati: xserver-xorg-video-ati 1:6.14.0-0ubuntu4
version.xserver-xorg-video-intel: xserver-xorg-video-intel 2:2.14.0-4ubuntu3
version.xserver-xorg-video-nouveau: xserver-xorg-video-nouveau 1:0.0.16+git20110107+b795ca6e-0ubuntu6
Comment 1 Bryce Harrington 2011-03-25 18:09:12 UTC
Created attachment 44870 [details]
CurrentDmesg.txt
Comment 2 Bryce Harrington 2011-03-25 18:11:31 UTC
Created attachment 44871 [details]
BootDmesg.txt
Comment 3 Bryce Harrington 2011-03-25 18:11:52 UTC
Created attachment 44872 [details]
XorgLog.txt
Comment 4 Bryce Harrington 2011-03-25 18:12:10 UTC
Created attachment 44873 [details]
Xrandr.txt
Comment 5 Bryce Harrington 2011-03-25 18:12:29 UTC
Created attachment 44874 [details]
xrandr-with-lvds.txt
Comment 6 Bryce Harrington 2011-03-25 18:12:45 UTC
Created attachment 44875 [details]
monitors.xml.txt
Comment 7 Chris Wilson 2011-03-26 00:01:26 UTC
In the short term, disable compositing.
Comment 8 Bryce Harrington 2011-03-28 11:28:08 UTC
Thanks for the hint Chris.

One question though, why would this work when doing the configuration with xrandr, but not when using gnome-display-properties?  Aren't they using the same Xrandr code underneath?
Comment 9 Bryce Harrington 2011-03-28 14:26:34 UTC
Also, I don't think this is merely a case of exceeding the texture limits of the card.  The user reports reproducing the failure with a single 1920-wide monitor and 1280-wide lvds, with compiz shut off.

---------------
Bryce,

Yes I can confirm that this happens when connecting the laptop directly to the external monitor (not using the dualhead2go).

Now, what I did is (all from Classic Desktop no effects - and from gnome-display-settings:

1. Connect external monitor to VGA
2. Enable mirror screens: WORKED
3. Disable mirror screens and Enable external monitor at 1920x1080: WORKED
4. Disable LVDS and leave VGA as sole monitor: FAILED (You can see what happens in the video: [1])

Now, if I do step 4 with xrandr (disable LVDS with xrandr), it works perfectly.

Furthermore, if I save the configuration (LVDS disabled, VGA1 Enabled) and reboot the computer, then LVDS is off by default and VGA1 should be displaying the image, however, the same occurs as with video [1].

Finally, if I do the steps above but place LVDS *under* the external monitor (using gnome-display-settings), the same as video [1] occurs.

Hope this helps. Please let me know if you need any further info.

[1]: http://me.roaksoax.com/dualmonitor.3gp
Comment 10 Chris Wilson 2011-03-30 00:12:40 UTC
Eric? The bug has nothing to do with X, just the GL compositor failing to render because its render target is too large. One solution is per-crtc-pixmaps (until we get single screen monitors larger than 4096). The other would be to remove the artificial limitation within mesa.
Comment 11 Bryce Harrington 2011-03-30 00:49:53 UTC
"One solution is per-crtc-pixmaps (until we get single screen monitors larger than 4096)."

A dualhead2go will display a couple 2560x1440 or whatever monitors as a single monitor with >4096 horiz rez.  So this is not a theoretical problem.
Comment 12 haitzer 2011-05-09 02:24:17 UTC
I just want to mention that I have the same problem with a X201 too - however:

My external display only has 1680x1050 and the internal has 1440x900 screen resolution.

Which leaves me puzzled why this problem relates to 4096 pixel?

If you need any more information about my configuration I am happy to provide what I can.
Comment 13 Chris Wilson 2011-06-16 13:01:10 UTC
Hmm, mesa.git now supports 8192x8192 textures on Ironlake so it will be worth seeing if that does indeed make a difference here. (Note that you can't actually fit a 8192x8192 into the AGP aperture so if you do try the GL application will be killed by a SIGBUS currently.)
Comment 14 Chris Wilson 2012-03-21 15:25:12 UTC
Support is in mesa, caveat the potential SIGBUS issue.


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.