Bumblebee-Project / Bumblebee

Bumblebee daemon and client rewritten in C
http://www.bumblebee-project.org/
GNU General Public License v3.0
1.3k stars 142 forks source link

Bumblebee broken after recent update #276

Closed kaelris closed 11 years ago

kaelris commented 11 years ago

Hi,

I use bumblebee to run Starcraft 2 in archlinux (x86_64) with playonlinux. It used to work fine, but yesterday I did a package update (to 3.6 kernel) and now when I try to run the game (or any other game using optirun) I get this:

libGL: screen 0 does not appear to be DRI2 capable
libGL: OpenDriver: trying /usr/lib32/xorg/modules/dri/tls/swrast_dri.so
libGL: OpenDriver: trying /usr/lib32/xorg/modules/dri/swrast_dri.so
libGL error: failed to load driver: swrast
Direct3D9 is not available without OpenGL.
libGL: screen 0 does not appear to be DRI2 capable
libGL: OpenDriver: trying /usr/lib32/xorg/modules/dri/tls/swrast_dri.so
libGL: OpenDriver: trying /usr/lib32/xorg/modules/dri/swrast_dri.so
libGL error: failed to load driver: swrast
Direct3D9 is not available without OpenGL.

And after that the game crashes.

I tried to downgrade pretty much every package related to xorg or libgl but it didn't help. I also tried to manually enable DRI2 in the xorg conf file, didn't work.

Strange thing is, when I run optirun nvidia-settings -c :8 the max resolution I can get is 1024x768, when my screen is supposed to be 1920x1080. I guess there is a problem with screen detection by the nvidia driver, the xorg log talks about an EDID problem too.

The GPU is:

00:02.0 VGA compatible controller: Intel Corporation 3rd Gen Core processor Graphics Controller (rev 09)
01:00.0 VGA compatible controller: NVIDIA Corporation GK107 [GeForce GT 650M] (rev ff)

Package versions:

linux 3.6.5-1
bumblebee 3.0.1-3
lib32-nvidia-utils-bumblebee 304.60-2
nvidia-bumblebee 304.60-3
nvidia-utils-bumblebee 304.60-4
libgl 9.0-1
lib32-libgl 9.0-1
xorg-server 1.13.0-3
xorg-server-common 1.13.0-3

I don't have a /etc/X11/xorg.conf (never had one). My /etc/bumblebee/xorg.conf.nvidia looks like this:

Section "ServerLayout"
    Identifier "Layout0"
    Option "AutoAddDevices" "false"
EndSection

Section "Device"
    Identifier "Device1"
    Driver "nvidia"
    VendorName "NVIDIA Corporation"
    Option "NoLogo" "true"
    Option "UseEDID" "false"
    Option "ConnectedMonitor" "CRT"
EndSection

/var/log/Xorg.8.log :

[  1208.002]
X.Org X Server 1.13.0
Release Date: 2012-09-05
[  1208.002] X Protocol Version 11, Revision 0
[  1208.002] Build Operating System: Linux 3.6.2-1-ARCH x86_64
[  1208.002] Current Operating System: Linux arch-inspiron17-denis 3.6.5-1-ARCH #1 SMP PREEMPT Wed Oct 31 20:57:39 CET 2012 x86_64
[  1208.002] Kernel command line: BOOT_IMAGE=/vmlinuz-linux root=UUID=d6144970-e90b-425e-a015-d0192ce128ea ro quiet
[  1208.002] Build Date: 19 October 2012  03:54:56PM
[  1208.002] 
[  1208.002] Current version of pixman: 0.26.2
[  1208.002]    Before reporting problems, check http://wiki.x.org
   to make sure that you have the latest version.
[  1208.002] Markers: (--) probed, (**) from config file, (==) default setting,
   (++) from command line, (!!) notice, (II) informational,
   (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
[  1208.002] (==) Log file: "/var/log/Xorg.8.log", Time: Sun Nov  4 15:43:00 2012
[  1208.002] (++) Using config file: "/etc/bumblebee/xorg.conf.nvidia"
[  1208.002] (==) Using config directory: "/etc/X11/xorg.conf.d"
[  1208.002] (==) ServerLayout "Layout0"
[  1208.002] (==) No screen section available. Using defaults.
[  1208.002] (**) |-->Screen "Default Screen Section" (0)
[  1208.002] (**) |   |-->Monitor ""
[  1208.003] (==) No device specified for screen "Default Screen Section".
   Using the first device section listed.
[  1208.003] (**) |   |-->Device "Device1"
[  1208.003] (==) No monitor specified for screen "Default Screen Section".
   Using a default monitor configuration.
[  1208.003] (**) Option "AutoAddDevices" "false"
[  1208.003] (**) Not automatically adding devices
[  1208.003] (==) Automatically enabling devices
[  1208.003] (==) Automatically adding GPU devices
[  1208.003] (WW) The directory "/usr/share/fonts/OTF/" does not exist.
[  1208.003]    Entry deleted from font path.
[  1208.003] (WW) `fonts.dir' not found (or not valid) in "/usr/share/fonts/100dpi/".
[  1208.003]    Entry deleted from font path.
[  1208.003]    (Run 'mkfontdir' on "/usr/share/fonts/100dpi/").
[  1208.003] (WW) `fonts.dir' not found (or not valid) in "/usr/share/fonts/75dpi/".
[  1208.003]    Entry deleted from font path.
[  1208.003]    (Run 'mkfontdir' on "/usr/share/fonts/75dpi/").
[  1208.003] (==) FontPath set to:
   /usr/share/fonts/misc/,
   /usr/share/fonts/TTF/,
   /usr/share/fonts/Type1/
[  1208.003] (++) ModulePath set to "/usr/lib/nvidia-bumblebee/xorg/,/usr/lib/xorg/modules"
[  1208.003] (==) |-->Input Device ""
[  1208.003] (==) |-->Input Device ""
[  1208.003] (==) The core pointer device wasn't specified explicitly in the layout.
   Using the default mouse configuration.
[  1208.003] (==) The core keyboard device wasn't specified explicitly in the layout.
   Using the default keyboard configuration.
[  1208.003] (II) Loader magic: 0x7fcc20
[  1208.003] (II) Module ABI versions:
[  1208.003]    X.Org ANSI C Emulation: 0.4
[  1208.003]    X.Org Video Driver: 13.0
[  1208.003]    X.Org XInput driver : 18.0
[  1208.003]    X.Org Server Extension : 7.0
[  1208.004] (II) config/udev: Adding drm device (/dev/dri/card0)
[  1208.004] setversion 1.4 failed
[  1208.005] (--) PCI:*(0:1:0:0) 10de:0fd1:1028:0578 rev 161, Mem @ 0xf0000000/16777216, 0xc0000000/268435456, 0xd0000000/33554432, I/O @ 0x00003000/128
[  1208.005] (WW) Open ACPI failed (/var/run/acpid.socket) (No such file or directory)
[  1208.005] Initializing built-in extension Generic Event Extension
[  1208.005] Initializing built-in extension SHAPE
[  1208.005] Initializing built-in extension MIT-SHM
[  1208.005] Initializing built-in extension XInputExtension
[  1208.005] Initializing built-in extension XTEST
[  1208.005] Initializing built-in extension BIG-REQUESTS
[  1208.005] Initializing built-in extension SYNC
[  1208.005] Initializing built-in extension XKEYBOARD
[  1208.005] Initializing built-in extension XC-MISC
[  1208.005] Initializing built-in extension SECURITY
[  1208.005] Initializing built-in extension XINERAMA
[  1208.005] Initializing built-in extension XFIXES
[  1208.005] Initializing built-in extension RENDER
[  1208.006] Initializing built-in extension RANDR
[  1208.006] Initializing built-in extension COMPOSITE
[  1208.006] Initializing built-in extension DAMAGE
[  1208.006] Initializing built-in extension MIT-SCREEN-SAVER
[  1208.006] Initializing built-in extension DOUBLE-BUFFER
[  1208.006] Initializing built-in extension RECORD
[  1208.006] Initializing built-in extension DPMS
[  1208.006] Initializing built-in extension X-Resource
[  1208.006] Initializing built-in extension XVideo
[  1208.006] Initializing built-in extension XVideo-MotionCompensation
[  1208.006] Initializing built-in extension XFree86-VidModeExtension
[  1208.006] Initializing built-in extension XFree86-DGA
[  1208.006] Initializing built-in extension XFree86-DRI
[  1208.006] Initializing built-in extension DRI2
[  1208.006] (II) LoadModule: "glx"
[  1208.006] (II) Loading /usr/lib/nvidia-bumblebee/xorg/modules/extensions/libglx.so
[  1208.012] (II) Module glx: vendor="NVIDIA Corporation"
[  1208.012]    compiled for 4.0.2, module version = 1.0.0
[  1208.012]    Module class: X.Org Server Extension
[  1208.012] (II) NVIDIA GLX Module  304.60  Sun Oct 14 20:44:54 PDT 2012
[  1208.012] Loading extension GLX
[  1208.012] (II) LoadModule: "nvidia"
[  1208.012] (II) Loading /usr/lib/xorg/modules/drivers/nvidia_drv.so
[  1208.012] (II) Module nvidia: vendor="NVIDIA Corporation"
[  1208.012]    compiled for 4.0.2, module version = 1.0.0
[  1208.012]    Module class: X.Org Video Driver
[  1208.012] (II) LoadModule: "mouse"
[  1208.012] (II) Loading /usr/lib/xorg/modules/input/mouse_drv.so
[  1208.012] (II) Module mouse: vendor="X.Org Foundation"
[  1208.012]    compiled for 1.13.0, module version = 1.8.1
[  1208.012]    Module class: X.Org XInput Driver
[  1208.012]    ABI class: X.Org XInput driver, version 18.0
[  1208.012] (II) LoadModule: "kbd"
[  1208.012] (WW) Warning, couldn't open module kbd
[  1208.012] (II) UnloadModule: "kbd"
[  1208.012] (II) Unloading kbd
[  1208.012] (EE) Failed to load module "kbd" (module does not exist, 0)
[  1208.013] (II) NVIDIA dlloader X Driver  304.60  Sun Oct 14 20:24:42 PDT 2012
[  1208.013] (II) NVIDIA Unified Driver for all Supported NVIDIA GPUs
[  1208.013] (--) using VT number 7

[  1208.013] (II) Loading sub module "fb"
[  1208.013] (II) LoadModule: "fb"
[  1208.013] (II) Loading /usr/lib/xorg/modules/libfb.so
[  1208.013] (II) Module fb: vendor="X.Org Foundation"
[  1208.013]    compiled for 1.13.0, module version = 1.0.0
[  1208.013]    ABI class: X.Org ANSI C Emulation, version 0.4
[  1208.013] (II) Loading sub module "wfb"
[  1208.013] (II) LoadModule: "wfb"
[  1208.013] (II) Loading /usr/lib/xorg/modules/libwfb.so
[  1208.013] (II) Module wfb: vendor="X.Org Foundation"
[  1208.013]    compiled for 1.13.0, module version = 1.0.0
[  1208.013]    ABI class: X.Org ANSI C Emulation, version 0.4
[  1208.013] (II) Loading sub module "ramdac"
[  1208.013] (II) LoadModule: "ramdac"
[  1208.013] (II) Module "ramdac" already built-in
[  1208.013] (II) NVIDIA(0): Creating default Display subsection in Screen section
   "Default Screen Section" for depth/fbbpp 24/32
[  1208.013] (==) NVIDIA(0): Depth 24, (==) framebuffer bpp 32
[  1208.013] (==) NVIDIA(0): RGB weight 888
[  1208.013] (==) NVIDIA(0): Default visual is TrueColor
[  1208.013] (==) NVIDIA(0): Using gamma correction (1.0, 1.0, 1.0)
[  1208.013] (**) NVIDIA(0): Option "NoLogo" "true"
[  1208.013] (**) NVIDIA(0): Option "UseEDID" "false"
[  1208.013] (**) NVIDIA(0): Option "ConnectedMonitor" "CRT"
[  1208.013] (**) NVIDIA(0): Enabling 2D acceleration
[  1208.013] (**) NVIDIA(0): ConnectedMonitor string: "CRT"
[  1208.013] (**) NVIDIA(0): Ignoring EDIDs
[  1208.775] (**) NVIDIA(GPU-0): Using ConnectedMonitor string "CRT-0".
[  1208.775] (II) NVIDIA(GPU-0): Not probing EDID on CRT-0.
[  1208.776] (II) NVIDIA(0): NVIDIA GPU GeForce GT 650M (GK107) at PCI:1:0:0 (GPU-0)
[  1208.776] (--) NVIDIA(0): Memory: 2097152 kBytes
[  1208.776] (--) NVIDIA(0): VideoBIOS: 80.07.35.00.0c
[  1208.776] (II) NVIDIA(0): Detected PCI Express Link width: 16X
[  1208.776] (--) NVIDIA(0): Interlaced video modes are supported on this GPU
[  1208.779] (--) NVIDIA(0): Valid display device(s) on GeForce GT 650M at PCI:1:0:0
[  1208.779] (--) NVIDIA(0):     CRT-0 (connected)
[  1208.779] (--) NVIDIA(0): CRT-0: 400.0 MHz maximum pixel clock
[  1208.779] (**) NVIDIA(0): Using HorizSync/VertRefresh ranges from the EDID for display
[  1208.779] (**) NVIDIA(0):     device CRT-0 (Using EDID frequencies has been enabled on
[  1208.779] (**) NVIDIA(0):     all display devices.)
[  1208.782] (==) NVIDIA(0):
[  1208.782] (==) NVIDIA(0): No modes were requested; the default mode "nvidia-auto-select"
[  1208.782] (==) NVIDIA(0):     will be used as the requested mode.
[  1208.782] (==) NVIDIA(0):
[  1208.782] (II) NVIDIA(0): Validated MetaModes:
[  1208.782] (II) NVIDIA(0):     "CRT-0:nvidia-auto-select"
[  1208.782] (II) NVIDIA(0): Virtual screen size determined to be 1024 x 768
[  1208.787] (WW) NVIDIA(0): Unable to get display device CRT-0's EDID; cannot compute DPI
[  1208.787] (WW) NVIDIA(0):     from CRT-0's EDID.
[  1208.787] (==) NVIDIA(0): DPI set to (75, 75); computed from built-in default
[  1208.787] (--) Depth 24 pixmap format is 32 bpp
[  1208.787] (II) NVIDIA: Using 3072.00 MB of virtual memory for indirect memory
[  1208.787] (II) NVIDIA:     access.
[  1208.890] (II) NVIDIA(0): ACPI: failed to connect to the ACPI event daemon; the daemon
[  1208.890] (II) NVIDIA(0):     may not be running or the "AcpidSocketPath" X
[  1208.890] (II) NVIDIA(0):     configuration option may not be set correctly.  When the
[  1208.890] (II) NVIDIA(0):     ACPI event daemon is available, the NVIDIA X driver will
[  1208.890] (II) NVIDIA(0):     try to use it to receive ACPI event notifications.  For
[  1208.890] (II) NVIDIA(0):     details, please see the "ConnectToAcpid" and
[  1208.890] (II) NVIDIA(0):     "AcpidSocketPath" X configuration options in Appendix B: X
[  1208.890] (II) NVIDIA(0):     Config Options in the README.
[  1208.895] (II) NVIDIA(0): Setting mode "CRT-0:nvidia-auto-select"
[  1208.925] Loading extension NV-GLX
[  1208.942] (==) NVIDIA(0): Disabling shared memory pixmaps
[  1208.942] (==) NVIDIA(0): Backing store disabled
[  1208.942] (==) NVIDIA(0): Silken mouse enabled
[  1208.942] (==) NVIDIA(0): DPMS enabled
[  1208.943] Loading extension NV-CONTROL
[  1208.943] Loading extension XINERAMA
[  1208.943] (II) Loading sub module "dri2"
[  1208.943] (II) LoadModule: "dri2"
[  1208.943] (II) Module "dri2" already built-in
[  1208.943] (II) NVIDIA(0): [DRI2] Setup complete
[  1208.943] (II) NVIDIA(0): [DRI2]   VDPAU driver: nvidia
[  1208.943] (--) RandR disabled
[  1208.948] (II) Initializing extension GLX
[  1208.983] (II) Using input driver 'mouse' for ''
[  1208.983] (**) Option "CorePointer" "on"
[  1208.983] (**) : always reports core events
[  1208.983] (WW) : No Device specified, looking for one...
[  1208.983] (II) : Setting Device option to "/dev/input/mice"
[  1208.983] (--) : Device: "/dev/input/mice"
[  1208.983] (==) : Protocol: "Auto"
[  1208.983] (**) : always reports core events
[  1208.983] (**) Option "Device" "/dev/input/mice"
[  1208.984] (==) : Emulate3Buttons, Emulate3Timeout: 50
[  1208.984] (**) : ZAxisMapping: buttons 4 and 5
[  1208.984] (**) : Buttons: 9
[  1208.984] (II) XINPUT: Adding extended input device "" (type: MOUSE, id 6)
[  1208.984] (**) : (accel) keeping acceleration scheme 1
[  1208.984] (**) : (accel) acceleration profile 0
[  1208.984] (**) : (accel) acceleration factor: 2.000
[  1208.984] (**) : (accel) acceleration threshold: 4
[  1208.984] (II) : Setting mouse protocol to "ExplorerPS/2"
[  1209.276] (II) : ps2EnableDataReporting: succeeded
[  1209.276] (II) LoadModule: "kbd"
[  1209.277] (WW) Warning, couldn't open module kbd
[  1209.277] (II) UnloadModule: "kbd"
[  1209.277] (II) Unloading kbd
[  1209.277] (EE) Failed to load module "kbd" (module does not exist, 0)
[  1209.277] (EE) No input driver matching `kbd'
[  1209.279] (II) config/udev: Adding input device Power Button (/dev/input/event5)
[  1209.279] (II) AutoAddDevices is off - not adding device.
[  1209.279] (II) config/udev: Adding input device Video Bus (/dev/input/event15)
[  1209.280] (II) AutoAddDevices is off - not adding device.
[  1209.280] (II) config/udev: Adding input device Video Bus (/dev/input/event14)
[  1209.280] (II) AutoAddDevices is off - not adding device.
[  1209.280] (II) config/udev: Adding input device Power Button (/dev/input/event2)
[  1209.280] (II) AutoAddDevices is off - not adding device.
[  1209.280] (II) config/udev: Adding input device Lid Switch (/dev/input/event4)
[  1209.280] (II) AutoAddDevices is off - not adding device.
[  1209.281] (II) config/udev: Adding input device Sleep Button (/dev/input/event3)
[  1209.281] (II) AutoAddDevices is off - not adding device.
[  1209.281] (II) config/udev: Adding drm device (/dev/dri/card0)
[  1209.281] (II) config/udev: Adding drm device (/dev/dri/card0)
[  1209.281] setversion 1.4 failed
[  1209.282] (II) config/udev: Adding input device Logitech Logitech G930 Headset (/dev/input/event7)
[  1209.282] (II) AutoAddDevices is off - not adding device.
[  1209.282] (II) config/udev: Adding input device DATACOMP SteelS쀁̄Љ̒DATA (/dev/input/event8)
[  1209.282] (II) AutoAddDevices is off - not adding device.
[  1209.282] (II) config/udev: Adding input device DATACOMP SteelS쀁̄Љ̒DATA (/dev/input/event9)
[  1209.282] (II) AutoAddDevices is off - not adding device.
[  1209.283] (II) config/udev: Adding input device Logitech USB Receiver (/dev/input/event10)
[  1209.283] (II) AutoAddDevices is off - not adding device.
[  1209.283] (II) config/udev: Adding input device Logitech USB Receiver (/dev/input/mouse0)
[  1209.283] (II) AutoAddDevices is off - not adding device.
[  1209.284] (II) config/udev: Adding input device Logitech USB Receiver (/dev/input/event11)
[  1209.284] (II) AutoAddDevices is off - not adding device.
[  1209.284] (II) config/udev: Adding input device Integrated Webcam (/dev/input/event12)
[  1209.284] (II) AutoAddDevices is off - not adding device.
[  1209.284] (II) config/udev: Adding input device HDA Digital PCBeep (/dev/input/event16)
[  1209.284] (II) AutoAddDevices is off - not adding device.
[  1209.285] (II) config/udev: Adding input device HDA Intel PCH HDMI/DP,pcm=3 (/dev/input/event17)
[  1209.285] (II) AutoAddDevices is off - not adding device.
[  1209.285] (II) config/udev: Adding input device HDA Intel PCH Mic (/dev/input/event18)
[  1209.285] (II) AutoAddDevices is off - not adding device.
[  1209.285] (II) config/udev: Adding input device HDA Intel PCH Headphone (/dev/input/event19)
[  1209.285] (II) AutoAddDevices is off - not adding device.
[  1209.286] (II) config/udev: Adding input device AT Translated Set 2 keyboard (/dev/input/event0)
[  1209.286] (II) AutoAddDevices is off - not adding device.
[  1209.286] (II) config/udev: Adding input device PS/2 Generic Mouse (/dev/input/event13)
[  1209.286] (II) AutoAddDevices is off - not adding device.
[  1209.287] (II) config/udev: Adding input device PS/2 Generic Mouse (/dev/input/mouse1)
[  1209.287] (II) AutoAddDevices is off - not adding device.
[  1209.287] (II) config/udev: Adding input device PC Speaker (/dev/input/event1)
[  1209.287] (II) AutoAddDevices is off - not adding device.
[  1209.287] (II) config/udev: Adding input device Dell WMI hotkeys (/dev/input/event6)
[  1209.287] (II) AutoAddDevices is off - not adding device.
[  1223.115] (II) UnloadModule: "mouse"
[  1223.169] Server terminated successfully (0). Closing log file.

Any idea? Thanks for the help.

amonakov commented 11 years ago

Your problem is that VirtualGL seems to load Mesa libGL instead of nVidia libGL. Do optirun glxinfo and optirun glxinfo32 (from packages mesa-demos and lib32-mesa-demos) work and show NVIDIA in the renderer string? Did you update wine with that system update you mention?

dariomadeo commented 11 years ago

Hi all! I'm experiencing similar problem with Virtualbox

$ LIBGL_DEBUG=verbose optirun VirtualBox -startvm Winzozz
Error opening file for reading: Permission denied
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 error: failed to load driver: swrast

When giving optirun glxinfo all seems to be ok.

$ optirun glxinfo | grep rend
direct rendering: Yes
OpenGL renderer string: GeForce GT 630M/PCIe/SSE2
    GL_NV_conditional_render, GL_NV_copy_depth_to_color, GL_NV_copy_image, 
    GL_NV_parameter_buffer_object2, GL_NV_path_rendering, 
    GL_NVX_conditional_render, GL_NVX_gpu_memory_info, 
    GL_OES_depth_texture, GL_OES_element_index_uint, GL_OES_fbo_render_mipmap, 
kaelris commented 11 years ago

optirun glxinfo returns that, amongst other things:

direct rendering: Yes
OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: GeForce GT 650M/PCIe/SSE2
OpenGL version string: 4.2.0 NVIDIA 304.60
OpenGL shading language version string: 4.20 NVIDIA via Cg compiler

But more interesting, optirun glxinfo32:

name of display: :0.0
libGL error: failed to load driver: swrast
libGL error: Try again with LIBGL_DEBUG=verbose for more details.
Error: couldn't find RGB GLX visual or fbconfig
libGL error: failed to load driver: i965
libGL error: Try again with LIBGL_DEBUG=verbose for more details.
[VGL] ERROR: in glXGetConfig--
[VGL]    917: Could not obtain Pbuffer-capable RGB visual on the server

With LIBGL_DEBUG=verbose:

name of display: :0.0
libGL: screen 0 does not appear to be DRI2 capable
libGL: OpenDriver: trying /usr/lib32/xorg/modules/dri/tls/swrast_dri.so
libGL: OpenDriver: trying /usr/lib32/xorg/modules/dri/swrast_dri.so
libGL error: failed to load driver: swrast
Error: couldn't find RGB GLX visual or fbconfig
libGL: OpenDriver: trying /usr/lib32/xorg/modules/dri/tls/i965_dri.so
libGL: OpenDriver: trying /usr/lib32/xorg/modules/dri/i965_dri.so
libGL error: dlopen /usr/lib32/xorg/modules/dri/i965_dri.so failed (/usr/lib32/xorg/modules/dri/i965_dri.so: cannot open shared object file: No such file or directory)
libGL error: unable to load driver: i965_dri.so
libGL error: driver pointer missing
libGL error: failed to load driver: i965
libGL: OpenDriver: trying /usr/lib32/xorg/modules/dri/tls/swrast_dri.so
libGL: OpenDriver: trying /usr/lib32/xorg/modules/dri/swrast_dri.so
[VGL] ERROR: in glXGetConfig--
[VGL]    917: Could not obtain Pbuffer-capable RGB visual on the server

Does this mean I miss some lib32 library? And yes, wine was updated with the system update, but I tried to tell playonlinux to use older versions of wine and it didn't change anything.

amonakov commented 11 years ago

@Kaelris, your lib32-virtualgl seems to be broken. And 32-bit direct rendering libraries seem to be missing or broken as well.

Lekensteyn commented 11 years ago

This is weird:

libGL: screen 0 does not appear to be DRI2 capable

Intel is DRi2 capable. I suggest looking in your /var/log/Xorg.0.log file. For optirun with virtualgl you need to use lib32-virtualgl. If you check the steps on https://wiki.archlinux.org/index.php/Bumblebee, have you missed anything obvious?

kaelris commented 11 years ago

Ok so I uninstalled virtualgl, lib32-virtualgl and bumblebee (since it has virtualgl as a dependency). When I tried to reinstall virtualgl from AUR, I got this:

CMake Error: The following variables are used in this project, but they are set to NOTFOUND.
Please set them or make sure they are set and tested correctly in the CMake files:
OPENGL_glu_LIBRARY (ADVANCED)

So I reinstalled glu and lib32-glu, and then virtualgl. It seems that glu at least was broken. After that I was able to reinstall everything, but I still have the same error with optirun glxinfo32, so I guess something else is broken. I also reinstalled libgl and lib32-libgl as a precaution, but it didn't help.

Related to DRI2, I found this in Xorg.0.log:

[    19.134] (II) Loading sub module "dri2"
[    19.134] (II) LoadModule: "dri2"
[    19.134] (II) Module "dri2" already built-in
[    19.134] (==) Depth 24 pixmap format is 32 bpp
[    19.135] (II) intel(0): [DRI2] Setup complete
[    19.135] (II) intel(0): [DRI2]   DRI driver: i965
[...]
[    19.140] (II) intel(0): direct rendering: DRI2 Enabled

The equivalent in Xorg.8.log:

[   633.140] (II) Loading sub module "dri2"
[   633.140] (II) LoadModule: "dri2"
[   633.141] (II) Module "dri2" already built-in
[   633.141] (II) NVIDIA(0): [DRI2] Setup complete
[   633.141] (II) NVIDIA(0): [DRI2]   VDPAU driver: nvidia

I installed bumblebee following the wiki page the first time. I rechecked it but didn't see anything missing.

amonakov commented 11 years ago

I think something is amiss with your lib32-nvidia-utils-bumblebee package. Show us pacman -Ql lib32-nvidia-utils-bumblebee and upload /tmp/ld-debug.txt from

LD_DEBUG=libs VGL_VERBOSE=1 optirun glxinfo32 |& tee /tmp/ld-debug.txt

to a pastebin (the file is very long).

kaelris commented 11 years ago

pacman -Ql lib32-nvidia-utils-bumblebee:

lib32-nvidia-utils-bumblebee /usr/
lib32-nvidia-utils-bumblebee /usr/lib32/
lib32-nvidia-utils-bumblebee /usr/lib32/libOpenCL.so.1.0.0
lib32-nvidia-utils-bumblebee /usr/lib32/libXvMCNVIDIA.a
lib32-nvidia-utils-bumblebee /usr/lib32/libXvMCNVIDIA.so.304.60
lib32-nvidia-utils-bumblebee /usr/lib32/libcuda.so.304.60
lib32-nvidia-utils-bumblebee /usr/lib32/libnvcuvid.so.304.60
lib32-nvidia-utils-bumblebee /usr/lib32/libnvidia-cfg.so.304.60
lib32-nvidia-utils-bumblebee /usr/lib32/libnvidia-compiler.so.304.60
lib32-nvidia-utils-bumblebee /usr/lib32/libnvidia-glcore.so.304.60
lib32-nvidia-utils-bumblebee /usr/lib32/libnvidia-ml.so.304.60
lib32-nvidia-utils-bumblebee /usr/lib32/libnvidia-tls.so.304.60
lib32-nvidia-utils-bumblebee /usr/lib32/nvidia-bumblebee/
lib32-nvidia-utils-bumblebee /usr/lib32/nvidia-bumblebee/libGL.so.304.60
lib32-nvidia-utils-bumblebee /usr/lib32/vdpau/
lib32-nvidia-utils-bumblebee /usr/lib32/vdpau/libvdpau_nvidia.so.304.60
lib32-nvidia-utils-bumblebee /usr/share/
lib32-nvidia-utils-bumblebee /usr/share/licenses/
lib32-nvidia-utils-bumblebee /usr/share/licenses/lib32-nvidia-utils-bumblebee

And ld-debug.txt: http://pastebin.com/1xJHMKfu

amonakov commented 11 years ago

32-bit libGL.so.1 symlink is missing from lib32-nvidia-utils-bumblebee, and that is causing the problem. Something went wrong went you installed that package, I guess.

kaelris commented 11 years ago

I just recompiled and reinstalled it but still no libGL.so.1 in the pacman -Ql. The file exists in /usr/lib32 though. Is there a way I can add the symlink manually?

Lekensteyn commented 11 years ago

sudo ln -s libGL.so.304.60 /usr/lib32/nvidia-bumblebee/libGL.so.1 Better, edit the PKGBUILD and add the symlink for a permanent solution.

amonakov commented 11 years ago

But the PKGBUILD is supposed to add that symlink.

Lekensteyn commented 11 years ago

grep libGL.so.1 https://aur.archlinux.org/packages/li/lib32-nvidia-utils-bumblebee/PKGBUILD is empty. The non-32-bit package had issues too, but these have been resolved: https://aur.archlinux.org/packages/nvidia-utils-bumblebee/ I commented on the lib32 package.

kaelris commented 11 years ago

After adding the symlink everything works perfectly. Thank you for the help!

amonakov commented 11 years ago

@Lekensteyn, no, there's a for loop in the PKGBUILD that creates all symlinks. If you look at the pacman -Ql output above, you'll see that none of the symlinks was created. Adding symlinks by hand is foolish and just workarounds a worse issue elsewhere, such as broken sed, or broken readelf, or broken something else. FWIW, lib32-nvidia-utils-bumblebee builds fine for me with unpatched PKGBUILD.