I've been stuck with Unity 2D all day at 1024x768, tried all sorts of workarounds to no avail. My issues started when I upgraded to mesa9.0 in the ubuntu-x-swat/x-updates
PPA. After a reboot, I was kicked in Unity2D and couldn't get 3D to work again. I downgraded all packages manually to 8.0.4 hoping this would solve the issue, but it didn't. I've been through all topics on AskUbuntu and Ubuntu Forums, followed all advise I could find and still nothing. My system seems to be in a state of flux which I can't get out of.
TL;DR; SOLUTION
After struggling for hours on end on this one, I finally stumbled upon a bug report for CentOS where someone was having similar issues. It turns out that during an apt-get upgrade
, a package (I really cannot tell which) added nomodeset
as as option to GRUB_CMDLINE_LINUX_DEFAULT
in /etc/default/grub
. Once that was removed (oddly there was a vga=1
as well, got rid of that too), the Intel drivers work as expected again.
I will attempt another upgrade to Mesa 9 over the weekend, hopefully it won't lead me straight back to this thread.
I tried pretty much everything I could find:
$ _ apt-get purge 'bumblebee*' 'nvidia-current*' 'nvidia-settings*'
$ _ reboot
$ _ apt-get install libgl1-mesa-dri libgl1-mesa-dri:i386 libgl1-mesa-dev mesa-common-dev libgl1-mesa-glx:i386 libgl1-mesa-glx libglapi-mesa libglapi-mesa:i386 libgles2-mesa libgles1-mesa libegl1-mesa-drivers libopenvg1-mesa libegl1-mesa libosmesa6:i386 libosmesa6 libdrm-nouveau1a libdrm-nouveau1a:i386 xserver-xorg-core libdrm-dev libdrm2 libdrm2:i386 libdrm-radeon1 libdrm-radeon1:i386 libdrm-nouveau1a libdrm-nouveau1a:i386 libdrm-intel1:i386 libdrm-intel1 libkms1 libgbm1 --reinstall
$ _ reboot
$ _ rm -f /usr/lib/xorg/modules/extensions/libglx.so* /usr/lib/xorg/modules/extensions/nvidia_drv.so
$ _ reboot
$ _ rm /etc/X11/xorg.conf
$ _ reboot
$ _ apt-get install bumblebee
So essentially, I purged everything, re-installed everything and still nothing.
I followed the advise in Enable hardware-accelerated desktop effects with NVIDIA Optimus/Bumblebee:
$ ls -l /usr/lib/x86_64-linux-gnu/xorg/extra-modules
lrwxrwxrwx 1 root root 53 Oct 18 17:58 /usr/lib/x86_64-linux-gnu/xorg/extra-modules -> /etc/alternatives/x86_64-linux-gnu_xorg_extra_modules $ ls -l /etc/alternatives/x86_64-linux-gnu_xorg_extra_modules lrwxrwxrwx 1 root root 48 Oct 18 17:58 /etc/alternatives/x86_64-linux-gnu_xorg_extra_modules -> /usr/lib/x86_64-linux-gnu/xorg/x11-extra-modules $ ls -l /usr/lib/x86_64-linux-gnu/xorg/x11-extra-modules total 0
$ uname -a
Linux stan-inspiron 3.2.0-32-generic #51-Ubuntu SMP Wed Sep 26 21:33:09 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux
$ $ cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=12.04
DISTRIB_CODENAME=precise
DISTRIB_DESCRIPTION="Ubuntu 12.04.1 LTS"
$ update-alternatives --display x86_64-linux-gnu_gl_conf
x86_64-linux-gnu_gl_conf - manual mode
link currently points to /usr/lib/x86_64-linux-gnu/mesa/ld.so.conf
/usr/lib/nvidia-current/ld.so.conf - priority 9700
slave x86_64-linux-gnu_grub_fb_blacklist: /usr/share/nvidia-current/nvidia-current.grub-gfxpayload
slave x86_64-linux-gnu_libOpenCL.so: /usr/lib/nvidia-current/libOpenCL.so
slave x86_64-linux-gnu_libOpenCL.so_lib32: /usr/lib32/nvidia-current/libOpenCL.so
slave x86_64-linux-gnu_libvdpau_nvidia.so: /usr/lib/nvidia-current/vdpau/libvdpau_nvidia.so
slave x86_64-linux-gnu_libvdpau_nvidia.so.1: /usr/lib/nvidia-current/vdpau/libvdpau_nvidia.so.1
slave x86_64-linux-gnu_libvdpau_nvidia.so.1_lib32: /usr/lib32/nvidia-current/vdpau/libvdpau_nvidia.so.1
slave x86_64-linux-gnu_libvdpau_nvidia.so_lib32: /usr/lib32/nvidia-current/vdpau/libvdpau_nvidia.so
slave x86_64-linux-gnu_man_nvidiaxconfig.gz: /usr/share/man/man1/alt-nvidia-current-xconfig.1.gz
slave x86_64-linux-gnu_nvidia-autostart.desktop: /usr/share/nvidia-current/nvidia-autostart.desktop
slave x86_64-linux-gnu_nvidia-smi.1.gz: /usr/share/man/man1/alt-nvidia-current-smi.1.gz
slave x86_64-linux-gnu_nvidia.icd: /usr/share/nvidia-current/nvidia.icd
slave x86_64-linux-gnu_nvidia_bug_report: /usr/lib/nvidia-current/bin/nvidia-bug-report.sh
slave x86_64-linux-gnu_nvidia_desktop: /usr/share/nvidia-current/ubuntu-nvidia-settings.desktop
slave x86_64-linux-gnu_nvidia_drv: /usr/lib/nvidia-current/xorg/nvidia_drv.so
slave x86_64-linux-gnu_nvidia_modconf: /lib/nvidia-current/modprobe.conf
slave x86_64-linux-gnu_nvidia_smi: /usr/lib/nvidia-current/bin/nvidia-smi
slave x86_64-linux-gnu_nvidia_xconfig: /usr/lib/nvidia-current/bin/nvidia-xconfig
slave x86_64-linux-gnu_xorg_extra_modules: /usr/lib/nvidia-current/xorg
slave x86_64-linux-gnu_xvmcconfig: /usr/lib/nvidia-current/XvMCConfig
/usr/lib/x86_64-linux-gnu/mesa/ld.so.conf - priority 500
slave x86_64-linux-gnu_xorg_extra_modules: /usr/lib/x86_64-linux-gnu/xorg/x11-extra-modules
Current 'best' version is '/usr/lib/nvidia-current/ld.so.conf'.
$ LIBGL_DEBUG=verbose /usr/lib/nux/unity_support_test -p
libGL: screen 0 does not appear to be DRI2 capable
libGL: OpenDriver: trying /usr/lib/x86_64-linux-gnu/dri/tls/swrast_dri.so
libGL: OpenDriver: trying /usr/lib/x86_64-linux-gnu/dri/swrast_dri.so
libGL: Can't open configuration file /etc/drirc: No such file or directory.
libGL: Can't open configuration file /home/stan/.drirc: No such file or directory.
OpenGL vendor string: VMware, Inc.
OpenGL renderer string: Gallium 0.4 on llvmpipe (LLVM 0x300)
OpenGL version string: 2.1 Mesa 8.0.4
Not software rendered: no
Not blacklisted: yes
GLX fbconfig: yes
GLX texture from pixmap: yes
GL npot or rect textures: yes
GL vertex program: yes
GL fragment program: yes
GL vertex buffer object: yes
GL framebuffer object: yes
GL version is 1.4+: yes
Unity 3D supported: no
$ lspci -vnn | grep '\''[030[02]\]'
00:02.0 VGA compatible controller [0300]: Intel Corporation 2nd Generation Core Processor Family Integrated Graphics Controller [8086:0116] (rev 09) (prog-if 00 [VGA controller])
01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GF108 [GeForce GT 540M] [10de:0df5] (rev ff) (prog-if ff)
$ LIBGL_DEBUG=verbose optirun /usr/lib/nux/unity_support_test -p
OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: GeForce GT 525M/PCIe/SSE2
OpenGL version string: 4.2.0 NVIDIA 304.51
Not software rendered: yes
Not blacklisted: yes
GLX fbconfig: yes
GLX texture from pixmap: no
GL npot or rect textures: yes
GL vertex program: yes
GL fragment program: yes
GL vertex buffer object: yes
GL framebuffer object: yes
GL version is 1.4+: yes
Unity 3D supported: no
My thinking is that Bumblebee is working as expected, however I am not able to make use of the Intel video and it fallbacks to VESA.
Could anyone shed any light and possibly help me?
For fullness, here is the Xorg.0.log file.
EDIT 1: I restored a back-up of my /etc
directory from before the upgrade and compared all files againt their current version. There are no changes in any of the files in /etc/X11
so it leads me to think again it must be some library stuck somewhere causing mayhem.
EDIT 2: As suggested, xserver-xorg-core
was re-installed:
$ dpkg -S libglx.so
nvidia-current: /usr/lib/nvidia-current/xorg/libglx.so
nvidia-current: /usr/lib/nvidia-current/xorg/libglx.so.304.51
xserver-xorg-core: /usr/lib/xorg/modules/extensions/libglx.so
$ _ apt-get install --reinstall xserver-xorg-core
Reading package lists... Done
Building dependency tree
Reading state information... Done
0 upgraded, 0 newly installed, 1 reinstalled, 0 to remove and 0 not upgraded.
Need to get 0 B/1,719 kB of archives.
After this operation, 0 B of additional disk space will be used.
(Reading database ... 342599 files and directories currently installed.)
Preparing to replace xserver-xorg-core 2:1.11.4-0ubuntu10.8 (using .../xserver-xorg-core_2%3a1.11.4-0ubuntu10.8_amd64.deb) ...
Unpacking replacement xserver-xorg-core ...
Processing triggers for man-db ...
Setting up xserver-xorg-core (2:1.11.4-0ubuntu10.8) ...
localepurge: Disk space freed in /usr/share/locale: 0 KiB
localepurge: Disk space freed in /usr/share/man: 0 KiB
localepurge: Disk space freed in /usr/share/gnome/help: 0 KiB
localepurge: Disk space freed in /usr/share/omf: 0 KiB
Total disk space freed by localepurge: 0 KiB
$ _ reboot
$ LIBGL_DEBUG=verbose glxgears
libGL: screen 0 does not appear to be DRI2 capable
libGL: OpenDriver: trying /usr/lib/x86_64-linux-gnu/dri/tls/swrast_dri.so
libGL: OpenDriver: trying /usr/lib/x86_64-linux-gnu/dri/swrast_dri.so
libGL: Can't open configuration file /etc/drirc: No such file or directory.
libGL: Can't open configuration file /home/stan/.drirc: No such file or directory.
8434 frames in 5.0 seconds = 1686.685 FPS
XIO: fatal IO error 11 (Resource temporarily unavailable) on X server ":0"
after 31148 requests (31148 known processed) with 0 events remaining.
$ _ updatedb
$ locate libglx.so
/usr/lib/nvidia-current/xorg/libglx.so
/usr/lib/nvidia-current/xorg/libglx.so.304.51
/usr/lib/xorg/modules/extensions/libglx.so
Log files and issue experienced remain the same.