# 3D on Intel SandyBridge?



## YZMSQ (Apr 21, 2013)

Hi, all:

I've a FreeBSD 9.1 box running on Intel Sandy Bridge chips and have installed the latest Xorg and Intel driver from xorg-dev with KMS enabled (I also tried the new Xorg in our official ports but nothing different). It works fine for normal usage, however, every time I try to run some 3D applications, such as astro/stellarium, astro/google-earth and so on, my X hangs and keyboard is unresponsive (mouse is working though), so I've to reboot it manually. 

I searched on our forum and found some guys say they can run 3D applications on FreeBSD with KMS flawlessly. So, is my box not able to run 3D applications? Need I do some tweaks? Thank you

P.S.:

1) When my X hangs, the `sysctl hw.dri.0.info.i915_error_state` shows:
https://www.dropbox.com/s/gfy1poe20g2s0lt/i915_error_state.log

2) What about my system:

```
justin@darkgeek.pts/2 ~ % uname -a
FreeBSD darkgeek 9.1-RELEASE FreeBSD 9.1-RELEASE #0 r243826: Tue Dec  4 06:55:39 UTC 2012     [email]root@obrian.cse.buffalo.edu[/email]:/usr/obj/usr/src/sys/GENERIC  i386
[email]justin@darkgeek.pts[/email]/2 ~ % pkg info | grep xorg-server
xorg-server-1.12.4,1           X.Org X server and related programs
[email]justin@darkgeek.pts[/email]/2 ~ % pkg info | grep libdrm
libdrm-2.4.43_1                Userspace interface to kernel Direct Rendering Module services
[email]justin@darkgeek.pts[/email]/2 ~ % pkg info | grep libGL
libGL-8.0.5_3                  OpenGL library that renders using GLX or DRI
libGLU-8.0.5                   OpenGL utility library
[email]justin@darkgeek.pts[/email]/2 ~ % pciconf -lvb
hostb0@pci0:0:0:0:	class=0x060000 card=0x01001849 chip=0x01008086 rev=0x09 hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '2nd Generation Core Processor Family DRAM Controller'
    class      = bridge
    subclass   = HOST-PCI
vgapci0@pci0:0:2:0:	class=0x030000 card=0x01021849 chip=0x01028086 rev=0x09 hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '2nd Generation Core Processor Family Integrated Graphics Controller'
    class      = display
    subclass   = VGA
    bar   [10] = type Memory, range 64, base 0xf7800000, size 4194304, enabled
    bar   [18] = type Prefetchable Memory, range 64, base 0xe0000000, size 268435456, enabled
    bar   [20] = type I/O Port, range 32, base 0xf000, size 64, enabled
none0@pci0:0:22:0:	class=0x078000 card=0x1c3a1849 chip=0x1c3a8086 rev=0x04 hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '6 Series/C200 Series Chipset Family MEI Controller'
    class      = simple comms
    bar   [10] = type Memory, range 64, base 0xf7c09000, size 16, enabled
ehci0@pci0:0:26:0:	class=0x0c0320 card=0x1c2d1849 chip=0x1c2d8086 rev=0x05 hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '6 Series/C200 Series Chipset Family USB Enhanced Host Controller'
    class      = serial bus
    subclass   = USB
    bar   [10] = type Memory, range 32, base 0xf7c07000, size 1024, enabled
hdac0@pci0:0:27:0:	class=0x040300 card=0x03971849 chip=0x1c208086 rev=0x05 hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '6 Series/C200 Series Chipset Family High Definition Audio Controller'
    class      = multimedia
    subclass   = HDA
    bar   [10] = type Memory, range 64, base 0xf7c00000, size 16384, enabled
pcib1@pci0:0:28:0:	class=0x060400 card=0x1c101849 chip=0x1c108086 rev=0xb5 hdr=0x01
    vendor     = 'Intel Corporation'
    device     = '6 Series/C200 Series Chipset Family PCI Express Root Port 1'
    class      = bridge
    subclass   = PCI-PCI
pcib2@pci0:0:28:2:	class=0x060400 card=0x1c141849 chip=0x1c148086 rev=0xb5 hdr=0x01
    vendor     = 'Intel Corporation'
    device     = '6 Series/C200 Series Chipset Family PCI Express Root Port 3'
    class      = bridge
    subclass   = PCI-PCI
ehci1@pci0:0:29:0:	class=0x0c0320 card=0x1c261849 chip=0x1c268086 rev=0x05 hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '6 Series/C200 Series Chipset Family USB Enhanced Host Controller'
    class      = serial bus
    subclass   = USB
    bar   [10] = type Memory, range 32, base 0xf7c06000, size 1024, enabled
isab0@pci0:0:31:0:	class=0x060100 card=0x1c5c1849 chip=0x1c5c8086 rev=0x05 hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'H61 Express Chipset Family LPC Controller'
    class      = bridge
    subclass   = PCI-ISA
atapci0@pci0:0:31:2:	class=0x01018f card=0x1c001849 chip=0x1c008086 rev=0x05 hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '6 Series/C200 Series Chipset Family 4 port SATA IDE Controller'
    class      = mass storage
    subclass   = ATA
    bar   [10] = type I/O Port, range 32, base 0xf110, size  8, enabled
    bar   [14] = type I/O Port, range 32, base 0xf100, size  4, enabled
    bar   [18] = type I/O Port, range 32, base 0xf0f0, size  8, enabled
    bar   [1c] = type I/O Port, range 32, base 0xf0e0, size  4, enabled
    bar   [20] = type I/O Port, range 32, base 0xf0d0, size 16, enabled
    bar   [24] = type I/O Port, range 32, base 0xf0c0, size 16, enabled
none1@pci0:0:31:3:	class=0x0c0500 card=0x1c221849 chip=0x1c228086 rev=0x05 hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '6 Series/C200 Series Chipset Family SMBus Controller'
    class      = serial bus
    subclass   = SMBus
    bar   [10] = type Memory, range 64, base 0xf7c05000, size 256, enabled
    bar   [20] = type I/O Port, range 32, base 0xf040, size 32, enabled
atapci1@pci0:0:31:5:	class=0x010185 card=0x1c081849 chip=0x1c088086 rev=0x05 hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '6 Series/C200 Series Chipset Family 2 port SATA IDE Controller'
    class      = mass storage
    subclass   = ATA
    bar   [10] = type I/O Port, range 32, base 0xf0b0, size  8, enabled
    bar   [14] = type I/O Port, range 32, base 0xf0a0, size  4, enabled
    bar   [18] = type I/O Port, range 32, base 0xf090, size  8, enabled
    bar   [1c] = type I/O Port, range 32, base 0xf080, size  4, enabled
    bar   [20] = type I/O Port, range 32, base 0xf070, size 16, enabled
    bar   [24] = type I/O Port, range 32, base 0xf060, size 16, enabled
re0@pci0:2:0:0:	class=0x020000 card=0x81361849 chip=0x813610ec rev=0x05 hdr=0x00
    vendor     = 'Realtek Semiconductor Co., Ltd.'
    device     = 'RTL8101E/RTL8102E PCI Express Fast Ethernet controller'
    class      = network
    subclass   = ethernet
    bar   [10] = type I/O Port, range 32, base 0xe000, size 256, enabled
    bar   [18] = type Prefetchable Memory, range 64, base 0xf0004000, size 4096, enabled
    bar   [20] = type Prefetchable Memory, range 64, base 0xf0000000, size 16384, enabled
```

3) My xorg.conf is uploaded in the attachment.


----------



## bkouhi (Apr 21, 2013)

Hello @YZMSQ,

I have an Intel Sandy Bridge card too. I installed games/tuxracer for testing 3D support. That's a simple 3D game and doesn't need very resources in general. Well, It seems that games/tuxracer is a heavy game for me :e It's not playable on my laptop and it has very low FPS. I'll test astro/google-earth astro/stellarium.


----------



## YZMSQ (Apr 21, 2013)

bkouhi said:
			
		

> Hello @YZMSQ,
> 
> I have an Intel Sandy Bridge card too. I installed games/tuxracer for testing 3D support. That's a simple 3D game that no need very resources in general. Well, It seems that games/tuxracer is a heavy game for me :e It's not playable on my laptop and it has very low fps. I'll test astro/google-earth astro/stellarium.


Thank you. Have you encountered "X freezing" problem when running those 3D applications? To be frank, even running a webgl demo in Chromium for several minutes can also lead my X to freeze. Very annoying.:\


----------



## cpm@ (Apr 21, 2013)

For information purposes, see the PR ports/160422 related with google-earth issue.


----------



## YZMSQ (Apr 21, 2013)

cpu82 said:
			
		

> For information purposes, see the PR ports/160422 related with google-earth issue.


Hi, thank you. Google Earth itself doesn't crash, it makes X to freeze after running several seconds. Some other 3D applications are also like this.


----------



## bkouhi (Apr 21, 2013)

Well, I installed astro/stellarium. It's very slow (about 1.5 FPS) but it doesn't crash. Unfortunately, I can't test astro/google-earth since I'm on amd64. (astro/google-earth only works on i386)



> Have you encountered "X freezing" problem when running those 3D applications?



No. 3D applications works for me and doesn't crash but they are very slow. The only problem I have is sometimes I encounter with some red strips on my screen.




> it makes X to freeze after running several seconds. Some other 3D applications are also like this.



Please add this line in your /etc/X11/xorg.conf and post your /var/log/Xorg.0.log and /var/log/message the next time it happened:


```
Option "Log" "sync"
```

I'm not sure but it might help.


----------



## YZMSQ (Apr 22, 2013)

bkouhi said:
			
		

> Well, I installed astro/stellarium. It's very slow (about 1.5 FPS) but it doesn't crash. Unfortunately, I can't test astro/google-earth since I'm on amd64. (astro/google-earth only works on i386)
> 
> 
> 
> ...


Thank you. I'll add this line to the /etc/X11/xorg.conf and post more information next time when it happens. And one more thing, could you share your /etc/X11/xorg.conf, `uname -a` command output and the version of your Xorg, libdrm, libGL, xf86-video-intel with us?:e


----------



## bkouhi (Apr 22, 2013)

Of course :e

I use a custom kernel:

```
[CMD]# uname -a[/CMD]
FreeBSD minootux 9.1-STABLE FreeBSD 9.1-STABLE #0 r249476: Sun Apr 14 19:27:02 IRDT 2013     root@minootux:/usr/obj/usr/src/sys/GIGABYTE  amd64
```

My xorg.conf is default with a few changes. I've just deleted extra sections to avoid confusion and also added L10n:

```
[CMD]# cat /etc/X11/xorg.conf[/CMD]
Section "ServerLayout"
        Identifier     "X.org Configured"
        Screen      0  "Screen0" 0 0
        InputDevice    "Mouse0" "CorePointer"
        InputDevice    "Keyboard0" "CoreKeyboard"
        Option         "DontVTSwitch"                # Disable Ctrl+Alt+Fn since KMS doesn't support it
        Option         "DontZap"                     # Disable Ctrl+Alt+Backspace
        Option         "AutoAddDevices"  "Off"       # I don't use hald
EndSection

Section "Files"
        ModulePath   "/usr/local/lib/xorg/modules"
        FontPath     "${prefix}/share/fonts/X11/misc/"
        FontPath     "${prefix}/share/fonts/X11/TTF/"
        FontPath     "${prefix}/share/fonts/X11/OTF/"
        FontPath     "${prefix}/share/fonts/X11/Type1/"
        FontPath     "${prefix}/share/fonts/X11/100dpi/"
        FontPath     "${prefix}/share/fonts/X11/75dpi/"
        FontPath     "/usr/local/lib/X11/fonts/webfonts/" # Avoid if you're not installed this font
        FontPath     "/usr/local/lib/X11/fonts/dejavu/"   # Avoid if you're not installed this font
        FontPath     "/usr/local/lib/X11/fonts/Droid/"    # Avoid if you're not installed this font
EndSection

Section "Module"
        Load  "record"
        Load  "glx"
        Load  "dri2"
        Load  "dri"
        Load  "dbe"
        Load  "extmod"
        Load  "freetype"
EndSection

Section "InputDevice"
        Identifier  "Keyboard0"
        Driver      "kbd"
        Option      "XkbLayout"    "us,ir"                # L10n, avoid
        Option      "XkbOptions"   "grp:alt_shift_toggle,ctrl:nocaps"
EndSection

Section "InputDevice"
        Identifier  "Mouse0"
        Identifier   "Monitor0"
        VendorName   "Monitor Vendor"
        ModelName    "Monitor Model"
EndSection

Section "Device"
        ### Available Driver options are:-
        ### Values: <i>: integer, <f>: float, <bool>: "True"/"False",
        ### <string>: "String", <freq>: "<f> Hz/kHz/MHz",
        ### <percent>: "<f>%"
        ### [arg]: arg optional
        #Option     "DRI"                       # [<bool>]
        #Option     "ColorKey"                  # <i>
        #Option     "VideoKey"                  # <i>
        #Option     "FallbackDebug"             # [<bool>]
        #Option     "Tiling"                    # [<bool>]
        #Option     "LinearFramebuffer"         # [<bool>]
        #Option     "Shadow"                    # [<bool>]
        #Option     "SwapbuffersWait"           # [<bool>]
        #Option     "TripleBuffer"              # [<bool>]
        #Option     "XvPreferOverlay"           # [<bool>]
        #Option     "DebugFlushBatches"         # [<bool>]
        #Option     "DebugFlushCaches"          # [<bool>]
        #Option     "DebugWait"                 # [<bool>]
        #Option     "HotPlug"                   # [<bool>]
        #Option     "RelaxedFencing"            # [<bool>]
        Identifier  "Card0"
        Driver      "intel"                     # intel driver
        BusID       "PCI:0:2:0"                 # My sandy bridge card BUS address, pciconf -lv shows it.
EndSection

Section "Screen"
        Identifier "Screen0"
        Device     "Card0"
        Monitor    "Monitor0"
        DefaultDepth    24
        SubSection "Display"
                Viewport   0 0
                Depth     24
        EndSubSection
EndSection
```

EDIT:
I've commented xorg.conf.


```
[CMD]# pkg_info -I -x xorg -x libdrm -x intel -x libGL[/CMD]
libGL-7.11.2_3      OpenGL library that renders using GLX or DRI
libGLU-7.11.2_2     OpenGL utility library
libdrm-2.4.31_1     Userspace interface to kernel Direct Rendering Module servi
xf86-video-intel-2.17.0_1 Driver for Intel integrated graphics chipsets
xorg-fonts-truetype-7.5.1 X.Org TrueType fonts
xorg-minimal-7.5.2  X.Org minimal distribution metaport
xorg-server-1.10.6_2,1 X.Org X server and related programs
```

I also have this lines in my /etc/make.conf:


```
[CMD]% cat /etc/make.conf[/CMD]
WITH_KMS=       yes
WITH_NEW_XORG=  yes
VIDEO_DRIVER=   intel
..
# unrelated stuff.
```

My machine is a GIGABYTE Q2532N.


----------



## YZMSQ (Apr 22, 2013)

bkouhi said:
			
		

> Of course :e
> 
> I use a custom kernel:
> 
> ...


Thank you very much for your sharing!:e
It seems that there is no Option "AIGLX" "True" enabled in xorg.conf, while I have it enabled in my box. So could you try it?:e


----------



## bkouhi (Apr 22, 2013)

I've added that line:


```
[CMD]% grep AIG /var/log/Xorg.0.log[/CMD]
[    34.084] (**) Option "AIGLX" "True"
[    34.214] (**) AIGLX enabled
[    35.661] (EE) AIGLX error: dlopen of /usr/local/lib/dri/i965_dri.so failed (Cannot open "/usr/local/lib/dri/i965_dri.so")
[    35.661] (EE) AIGLX: reverting to software rendering
[    35.661] (II) AIGLX: Screen 0 is not DRI capable
[    35.975] (II) AIGLX: Loaded and initialized /usr/local/lib/dri/swrast_dri.so
```

There are some error messages. I'm not sure if it enabled correctly. Although, it doesn't have any effect. Low FPS without any crash. Can you explain what is that AIGLX please? Do you really need that line?


----------



## zspider (Apr 22, 2013)

bkouhi said:
			
		

> I've added that line:
> 
> 
> ```
> ...



One thing I notice in your lines is "reverting to software rendering", I don't get that message in mine. Also can you verify that the i965_dri.so exists and has the appropriate permissions.

I can also confirm that the current Intel driver works with OpenGL(just not with the Linuxulator on AMD64, yet) because I just installed Cube2: Sauerbraten last night, I'm getting a solid 60 FPS.


----------



## YZMSQ (Apr 22, 2013)

bkouhi said:
			
		

> I've added that line:
> 
> 
> ```
> ...


Well, it's said that 3D performance will be improved with AIGLX enabled, not confirmed yet. Anyway, thank you very much for your help.:e Hopefully this issue will be fixed in the next release.


----------



## YZMSQ (Apr 22, 2013)

zspider said:
			
		

> One thing I notice in your lines is "reverting to software rendering", I don't get that message in mine. Also can you verify that the i965_dri.so exists and has the appropriate permissions.
> 
> I can also confirm that the current Intel driver works with OpenGL(just not with the Linuxulator on AMD64, yet) because I just installed Cube2: Sauerbraten last night, I'm getting a solid 60 FPS.


Do you use 9.1-RELEASE or -STABLE? Or 10.0-CURRENT?


----------



## zspider (Apr 22, 2013)

YZMSQ said:
			
		

> Do you use 9.1 release or stable? Or 10.0 current?



I use 9.1-RELEASE-P2.


----------



## YZMSQ (Apr 22, 2013)

zspider said:
			
		

> I use 9.1-RELEASE-P2.


And SandyBridge?


----------



## zspider (Apr 22, 2013)

YZMSQ said:
			
		

> And SandyBridge?



IvyBridge, the next one up. But I'm pretty sure SandyBridge works too.


----------



## YZMSQ (Apr 22, 2013)

zspider said:
			
		

> IvyBridge, the next one up. But I'm pretty sure SandyBridge works too.


Hi, thank you for your reply. And could you tell me the version of Xorg, libdrm, libGL, xf86-video-intel that you use?


----------



## zspider (Apr 22, 2013)

YZMSQ said:
			
		

> Hi, thank you for your reply. And could you tell me the version of Xorg, libdrm, libGL, xf86-video-intel that you use?



Sure, these are my versions:

Xorg-7.5.2

libdrm-2.4.31_1

libGL-7.11.2_3

xf86-video-intel-2.17.0_1


----------



## cpm@ (Apr 22, 2013)

bkouhi said:
			
		

> Can you explain what is that AIGLX please?


Accelerated Indirect GLX (AIGLX) is an X server architecture designed to use 3D graphic rendering via OpenGL for acceleration of 2D functions, such as desktop and window management.  AIGLX is very similar to Xgl except Xgl was developed by Novell, a private corporation, and AIGLX was developed in an open source environment. See also wiki AIGLX article.


----------



## cpm@ (Apr 26, 2013)

@YZMSQ,

Check if VT-x is enabled in your BIOS. As recommended in this  thread, disable "Virtualization" may help.

**EDIT**
Digging more I found this problem related: https://bugs.freedesktop.org/show_bug.cgi?id=47535.


----------



## YZMSQ (Apr 26, 2013)

cpu82 said:
			
		

> @YZMSQ,
> 
> Check if VT-x is enabled in your BIOS. As recommended in this  thread, disable "Virtualization" may help.


Thank you, let me try later.:e


----------



## YZMSQ (Apr 26, 2013)

cpu82 said:
			
		

> @YZMSQ,
> 
> Check if VT-x is enabled in your BIOS. As recommended in this  thread, disable "Virtualization" may help.
> 
> ...


Hi,
I disabled VT-X on BIOS just now and tried some 3D apps, for instance, astro/celestia-gtk, unfortunately, GPU crashed again. I saw these lines in my xorg.0.log:

```
[   486.342] [mi] EQ overflowing. The server is probably stuck in an infinite loop.
[   489.004] (EE) intel(0): Detected a hung GPU, disabling acceleration.
[   489.006] (EE) intel(0): When reporting this, please include i915_error_state from debugfs and the full dmesg.
```

Edit: My X didn't freeze, it just appeared rather slow due to the "disabling acceleration".


----------



## cpm@ (Apr 26, 2013)

"EQ overflowing" means the X server's input event queue is overflowing. A good explanation of what it is, can be read here.

Please, attach your full Xorg.0.log.

P.S. Remove anything related to eventual VESA entries in xorg.conf.


----------



## wblock@ (Apr 26, 2013)

Please put log files on pastebin.com.


----------



## YZMSQ (Apr 27, 2013)

cpu82 said:
			
		

> "EQ overflowing" means the X server's input event queue is overflowing. A good explanation of what it is, can be read here.
> 
> Please, attach your full Xorg.0.log.
> 
> P.S. Remove anything related to eventual VESA entries in xorg.conf.


Hi, I put my xorg.0.log and xorg.conf in pastebin.com:
1) xorg.0.log
http://pastebin.com/aTerEfY0
2) xorg.conf
http://pastebin.com/pJcWkR0Y


----------



## cpm@ (Apr 27, 2013)

```
drmOpenDevice: node name is /dev/dri/card0
Failed to change owner or group for file /dev/dri! 2: No such file or directory
Failed to change owner or group for file /dev/dri/card0! 2: No such file or directory
drmOpenDevice: open result is -1, (No such file or directory)
Failed to change owner or group for file /dev/dri/card0! 2: No such file or directory
drmOpenDevice: open result is -1, (No such file or directory)
drmOpenDevice: Open failed
```

Problem seems that X looks for drm source in card0 but this node is not created under /dev/dri directory.

Please, show following outputs `# ll /dev/dri` and `# glxinfo | grep direct`


----------



## YZMSQ (Apr 27, 2013)

cpu82 said:
			
		

> ```
> drmOpenDevice: node name is /dev/dri/card0
> Failed to change owner or group for file /dev/dri! 2: No such file or directory
> Failed to change owner or group for file /dev/dri/card0! 2: No such file or directory
> ...


Hi, thank you for your reply, your commands give me these outputs:

```
justin@darkgeek.pts/2 ~ % ll /dev/dri
total 0
crw-rw----  1 root  wheel    0, 136  4 27 22:08 card0
justin@darkgeek.pts/2 ~ % glxinfo | grep direct
direct rendering: Yes
```
And what's more, there're also these lines in the xorg.0.log which you might have missed:

```
[    70.154] drmOpenByBusid: Searching for BusID pci:0000:00:02.0
[    70.154] drmOpenDevice: node name is /dev/dri/card0
[    70.155] drmOpenDevice: open result is 10, (OK)
```


----------



## pkubaj (Apr 27, 2013)

I seem to have a similar issue:
xorg.conf: http://pastebin.com/1pAB7c6T
/var/log/Xorg.0.log: http://pastebin.com/AAxfLvuy
/var/log/Xorg.1.log: http://pastebin.com/x3XcNfA4
Any ideas?
I use 10.0-CURRENT, but the same happened on 9.1-RELEASE.


----------



## cpm@ (Apr 27, 2013)

Try using this temporal workaround, use flag LIBGL_ALWAYS_INDIRECT related to the Mesa 3D client-side OpenGL implementation, tells Mesa to ignore normal direct rendering and use instead indirect rendering.

```
# setenv LIBGL_ALWAYS_INDIRECT 1
```

Then OpenGL is forced to use indirect rendering using an environment variable, meaning that all rendering commands are sent to the X server. However, the X server actually uses hardware accelerated rendering.

```
# glxinfo | grep direct
direct rendering: No (LIBGL_ALWAYS_INDIRECT set)
# glxinfo | grep renderer
OpenGL renderer string: Mesa DRI R300 (RV350 4153) 20090101 AGP 4x x86/MMX/SSE2 TCL
```

Add to your .cshrc

```
setenv LIBGL_ALWAYS_INDIRECT 1
```

Definitely, when the underlying issue is fixed, you will remove this flag environment variable. You will experience a low performance due to OpenGL is fast, and Mesa driver is slow.


----------



## cpm@ (Apr 27, 2013)

Take a look to Kosachenko's thread. Note that the patch included, solved the Sandy Bridge IRQ stalls.


----------



## pkubaj (Apr 27, 2013)

I forgot to add that when having run `glxinfo`, I get 
	
	



```
name of display: :0.0
Error: couldn't find RGB GLX visual or fbconfig
Error: couldn't find RGB GLX visual or fbconfig
```


----------



## YZMSQ (Apr 28, 2013)

cpu82 said:
			
		

> Try using this temporal workaround, use flag LIBGL_ALWAYS_INDIRECT related to the Mesa 3D client-side OpenGL implementation, tells Mesa to ignore normal direct rendering and use instead indirect rendering.
> 
> ```
> # setenv LIBGL_ALWAYS_INDIRECT 1
> ...


With this variable set, my GPU has not hanged for a long time (3D and WebGL apps seem not able to run though).


----------

