[Intel-gfx] opengl acceleration on intel 945gm with virtual screen size > 2048
Mateusz Jasiński
matt1606 at gmail.com
Tue Dec 22 16:04:02 CET 2009
Hello,
I'm rather searching for a problem resolution. I'm running debian sid and a
custom built linux-2.6.32 krenel with built-in drm_i915 driver for my intel
945gm integrated graphics controller. While everything was working correctly
on single monitor setup with DRI, I've connected a second monitor. My setup
was: LVDS1 1280x800 and VGA1 1024x768.
I've set up dual screen mode using 'xrandr --output LVDS1 --auto --output VGA1
--auto --right-of LVDS1' command. After this my opengl accelerated compositing
effects (KDE4.3.4) were gone. I've investigated the case and found that the
GL_MAX_TEXTURE_SIZE = 2048 was causing the problem since my virtual monitor
size exceeds 2048 pixel dimension. But since drm_i915 in 2.6.32 is able to
display 4096x4096 max texture size reported by xrandr:
Screen 0: minimum 320 x 200, current 1280 x 800, maximum 4096 x 4096
I've manually patched and compiled the xorg-video-intel and mesa package to be
enable the 4096 texture size.
In xorg-video-intel it was:
src/i915_render.c @187
- if ((w > 2048) || (h > 2048))
+ if ((w > 4096) || (h > 4096))
In mesa it was:
src/mesa/drivers/dri/i915/i915_context.c @197
- ctx->Const.MaxTextureLevels = 12;
+ ctx->Const.MaxTextureLevels = 13;
ctx->Const.Max3DTextureLevels = 9;
ctx->Const.MaxCubeTextureLevels = 12;
- ctx->Const.MaxTextureRectSize = (1 << 11);
+ ctx->Const.MaxTextureRectSize = (1 << 12);
ctx->Const.MaxTextureUnits = I915_TEX_UNITS;
After recompiling and installing the packages in glxinfo I've got:
GL_MAX_TEXTURE_SIZE = 4096
So I've tried to run my dual screen setup.
Without opengl desktop effects everything is wirking like before patching.
When I turn on the opengl rendering on dual screen I've get black screen on
both monitors with only moveable cursor. The resolutions are set correctly
(noiced this while observing the cursor size). In dmesg I get:
[drm] DAC-6: set mode 1e
[drm:i915_hangcheck_elapsed] ERROR Hangcheck timer elapsed... GPU hung
render error detected, EIR: 0x00000000
i915: Waking up sleeping processes
reboot required
[drm:i915_gem_execbuffer] ERROR Execbuf while wedged
[drm:i915_gem_execbuffer] ERROR Execbuf while wedged
Is there a possible resolution of this problem? Since dmesg is reporting an
error in the kernel drm_i915 driver?
I've sometimes observed the same error on single monitor setup earlier during
linux 2.6.31 and 2.6.32 developement cycle.
To sum up: all I want to achieve is to have dual screen setup with dri and
opengl acceleration on intel 945gm with virtual screen size > 2048.
Versions of my xorg and mesa packages are:
xserver-xorg-video-intel 2:2.9.1-1
xserver-xorg 1:7.4+4
xserver-xorg-core 2:1.6.5-1
libgl1-mesa-dri 7.6.1~rc3-1
libgl1-mesa-glx 7.6.1~rc3-1
libglu1-mesa 7.6.1~rc3-1
I'm attaching my dmesg.log, Xorg.0.log files.
Thanks in advance for any help in this matter.
Regards,
Mateusz Jasiński
-------------- next part --------------
A non-text attachment was scrubbed...
Name: dmesg.log
Type: text/x-log
Size: 63099 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/intel-gfx/attachments/20091222/05ca54ae/attachment.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Xorg.0.log
Type: text/x-log
Size: 29690 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/intel-gfx/attachments/20091222/05ca54ae/attachment-0001.bin>
More information about the Intel-gfx
mailing list