Preso no Unity2D, o Intel video borked, o NVidia discreto parece funcionar (configuração do Bumblebee)

1

Eu tenho ficado preso com o Unity 2D durante todo o dia em 1024x768, tentei todos os tipos de soluções alternativas sem sucesso. Meus problemas começaram quando atualizei para mesa9.0 no ubuntu-x-swat/x-updates PPA. Após a reinicialização, fui expulso do Unity2D e não consegui fazer o 3D funcionar novamente. Eu reduzi todos os pacotes manualmente para 8.0.4, esperando que isso resolvesse o problema, mas isso não aconteceu. Eu já passei por todos os tópicos em AskUbuntu e Fóruns do Ubuntu, segui todos os conselhos que eu poderia encontrar e ainda nada. Meu sistema parece estar em um estado de fluxo do qual não posso sair.

TL; DR; SOLUÇÃO

Depois de lutar por horas a fio, finalmente encontrei um relatório de bug do CentOS em que alguém estava tendo problemas parecidos. Acontece que durante um apt-get upgrade , um pacote (eu realmente não sei dizer qual) adicionou nomodeset como opção para GRUB_CMDLINE_LINUX_DEFAULT em /etc/default/grub . Uma vez que foi removido (estranhamente havia um vga=1 também, se livrou disso também), os drivers da Intel funcionam como esperado novamente.

Vou tentar outra atualização para o Mesa 9 no fim de semana, espero que isso não me leve de volta a este tópico.

Eu tentei praticamente tudo que pude encontrar:

$ _ 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

Então, basicamente, eu purgei tudo, re-instalei tudo e ainda nada.

Eu segui o conselho em Habilitar efeitos de área de trabalho acelerados por hardware com o NVIDIA Optimus / Bumblebee :

$ ls -l /usr/lib/x86_64-linux-gnu/xorg/extra-modules

lrwxrwxrwx 1 raiz raiz 53 18 de outubro 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 raiz do 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

Meu pensamento é que o Bumblebee está funcionando como esperado, no entanto eu não sou capaz de fazer uso do vídeo da Intel e recorre ao VESA.

Alguém poderia lançar alguma luz e possivelmente me ajudar?

Para a plenitude, aqui está o arquivo Xorg.0.log .

EDIT 1 : Eu restaurei um backup do meu diretório /etc antes da atualização e comparei todos os arquivos novamente com a versão atual. Não há mudanças em nenhum dos arquivos em /etc/X11 , então isso me leva a pensar novamente que deve haver alguma biblioteca presa em algum lugar causando caos.

EDIT 2 : conforme sugerido, xserver-xorg-core foi reinstalado:

$ 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

Arquivos de registro e problemas enfrentados permanecem os mesmos.

    
por StanAngeloff 18.10.2012 / 17:21

1 resposta

0

$ 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

Esta sequência está errada, você reinstalou um pacote fornecendo libglx.so e removeu esse arquivo novamente. Use o link (ou dpkg -S libglx.so ) para descobrir qual pacote fornece esse arquivo. Em seguida, reinstale:

sudo apt-get install --reinstall xserver-xorg-core
    
por Lekensteyn 18.10.2012 / 23:34