servo / servo

Servo, the embeddable, independent, memory-safe, modular, parallel web rendering engine

Home Page:https://servo.org

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

libGL errors: "core dri or dri2 extension not found", "failed to load driver: vboxvideo", and a panic

srh opened this issue · comments

I get the following output on commit a8b0fb1 after following the README's instructions for prerequisites and running ./mach build to build servo.

Some of my output seems similar to that reported in #5081 -- the lines with "dri or dri2" and "vboxvideo".

This is while running Xubuntu in Virtualbox.

user@ubuntubox:~/servo$ ./mach run tests/html/about-mozilla.html
libGL error: pci id for fd 4: 80ee:beef, driver (null)
OpenGL Warning: glFlushVertexArrayRangeNV not found in mesa table
OpenGL Warning: glVertexArrayRangeNV not found in mesa table
OpenGL Warning: glCombinerInputNV not found in mesa table
OpenGL Warning: glCombinerOutputNV not found in mesa table
OpenGL Warning: glCombinerParameterfNV not found in mesa table
OpenGL Warning: glCombinerParameterfvNV not found in mesa table
OpenGL Warning: glCombinerParameteriNV not found in mesa table
OpenGL Warning: glCombinerParameterivNV not found in mesa table
OpenGL Warning: glFinalCombinerInputNV not found in mesa table
OpenGL Warning: glGetCombinerInputParameterfvNV not found in mesa table
OpenGL Warning: glGetCombinerInputParameterivNV not found in mesa table
OpenGL Warning: glGetCombinerOutputParameterfvNV not found in mesa table
OpenGL Warning: glGetCombinerOutputParameterivNV not found in mesa table
OpenGL Warning: glGetFinalCombinerInputParameterfvNV not found in mesa table
OpenGL Warning: glGetFinalCombinerInputParameterivNV not found in mesa table
OpenGL Warning: glDeleteFencesNV not found in mesa table
OpenGL Warning: glFinishFenceNV not found in mesa table
OpenGL Warning: glGenFencesNV not found in mesa table
OpenGL Warning: glGetFenceivNV not found in mesa table
OpenGL Warning: glIsFenceNV not found in mesa table
OpenGL Warning: glSetFenceNV not found in mesa table
OpenGL Warning: glTestFenceNV not found in mesa table
libGL error: core dri or dri2 extension not found
libGL error: failed to load driver: vboxvideo
OpenGL Warning: XGetVisualInfo returned 0 visuals for 0x7f3f1b067390
OpenGL Warning: Retry with 0x8002 returned 0 visuals
thread '<main>' panicked at 'called `Result::unwrap()` on an `Err` value: OsError("glx::ChooseVisual failed")', /home/larsberg/rust/src/libcore/result.rs:744
stack backtrace:
   1:     0x7f3f18a22992 - sys::backtrace::write::h754dbf5d2d3172ebPBA
   2:     0x7f3f18a35872 - panicking::on_panic::hdb9e837ac064f8afiHJ
   3:     0x7f3f18a05219 - rt::unwind::begin_unwind_inner::h488386ed3236ccf5lnJ
   4:     0x7f3f18a055c1 - rt::unwind::begin_unwind_fmt::hac94a0d8ab692f55WlJ
   5:     0x7f3f18a35197 - rust_begin_unwind
   6:     0x7f3f18a61f04 - panicking::panic_fmt::hf7c6f0a83af17872HZs
   7:     0x7f3f17e67e13 - result::Result<T, E>::unwrap::h2695614010695849600
                        at /home/larsberg/rust/src/libcore/macros.rs:27
   8:     0x7f3f17e67622 - window::Window::new::h84a86a2c9a67321fmoa
                        at /home/user/servo/ports/glutin/window.rs:77
   9:     0x7f3f17f38c6a - create_window::h067541faaad5a95biTa
                        at /home/user/servo/ports/glutin/lib.rs:46
  10:     0x7f3f16cfac68 - main::ha4fdb8e9778a1262Faa
                        at /home/user/servo/components/servo/main.rs:120
  11:     0x7f3f18a3f748 - rust_try_inner
  12:     0x7f3f18a3f735 - rust_try
  13:     0x7f3f18a36fc0 - rt::lang_start::h198f2d8a631cfb22yBJ
  14:     0x7f3f16cfb2f4 - main
  15:     0x7f3f14fa9ec4 - __libc_start_main
  16:     0x7f3f16cf6fc8 - <unknown>
  17:                0x0 - <unknown>
Error running mach:

    ['run', 'tests/html/about-mozilla.html']

The error occurred in code that was called by the mach command. This is either
a bug in the called code itself or in the way that mach is calling it.

You should consider filing a bug for this issue.

If filing a bug, please include the full output of mach, including this error
message.

The details of the failure are as follows:

CalledProcessError: Command '[u'components/servo/target/debug/servo', 'tests/html/about-mozilla.html']' returned non-zero exit status 101

  File "/home/user/servo/python/servo/post_build_commands.py", line 117, in run
    subprocess.check_call(args, env=env)
  File "/usr/lib/python2.7/subprocess.py", line 540, in check_call
    raise CalledProcessError(retcode, cmd)

@glennw Any insights into this?

When I disable 3D acceleration (in the Virtualbox settings for this VM) and try again, a window opens up and successfully(?) renders the page, with the following output in the terminal:

$ ./mach run tests/html/about-mozilla.html
libGL error: pci id for fd 4: 80ee:beef, driver (null)
OpenGL Warning: Failed to connect to host. Make sure 3D acceleration is enabled for this VM.
libGL error: core dri or dri2 extension not found
libGL error: failed to load driver: vboxvideo
[glutin] x error code=-78 major=-101 minor=34!

(Sometimes the text "(10th Edition)" jumps to the same line as the preceding text, and back, depending on where I put the mouse, and also the mouse is quite... flickery, but I assume those are unrelated issues. Edit: As of current master these issues have gone away.)

Edit: After closing the window I get this additional line of output:

ERROR:net_traits::image::base: stb_image failed: stbi_load_from_memory failed

I saw a similar series of messages, maybe identical, up to the failure to load vboxvideo, when trying to use compton (some desktop compositing thing) with a vsync setting of "opengl" and other values that were not "none". (This was not when running servo, it has nothing to do with servo -- I'm including this information because it implies that everything up to and including "failed to load driver: vboxvideo" is not the fault of servo.)

Hi. I try to compile it on virtualbox 5.0.2 and it worked. well it might solved in virtualbox 5.

I see the same problem with 5.0.2. It works works with 3D acceleration disabled, but fails with a stack trace with 3D acceleration enabled. However, now I've also tried running without Virtualbox Guest Additions installed (in the VM) -- and it works on both 4.3.26_Ubuntu and 5.0.2 (with or without 3D acceleration, presumably because, without guest additions, that's a moot config). This is when running a Debian Jessie VM inside Ubuntu 15.04.

I am also getting this issue on VBox 4.3.30 (as 5 isn't compatible on windows 10 yet)

This appears to be fixed, running on a Debian Jessie host (with VBox 4.3.36_Debian) and also on an OS X host (with some 5.0 version of VirtualBox, for what it's worth).

This is the successful console output I get:

$ ./mach run -r ./tests/html/about-mozilla.html 
pci id for fd 4: 80ee:beef, driver (null)
OpenGL Warning: glFlushVertexArrayRangeNV not found in mesa table
OpenGL Warning: glVertexArrayRangeNV not found in mesa table
OpenGL Warning: glCombinerInputNV not found in mesa table
OpenGL Warning: glCombinerOutputNV not found in mesa table
OpenGL Warning: glCombinerParameterfNV not found in mesa table
OpenGL Warning: glCombinerParameterfvNV not found in mesa table
OpenGL Warning: glCombinerParameteriNV not found in mesa table
OpenGL Warning: glCombinerParameterivNV not found in mesa table
OpenGL Warning: glFinalCombinerInputNV not found in mesa table
OpenGL Warning: glGetCombinerInputParameterfvNV not found in mesa table
OpenGL Warning: glGetCombinerInputParameterivNV not found in mesa table
OpenGL Warning: glGetCombinerOutputParameterfvNV not found in mesa table
OpenGL Warning: glGetCombinerOutputParameterivNV not found in mesa table
OpenGL Warning: glGetFinalCombinerInputParameterfvNV not found in mesa table
OpenGL Warning: glGetFinalCombinerInputParameterivNV not found in mesa table
OpenGL Warning: glDeleteFencesNV not found in mesa table
OpenGL Warning: glFinishFenceNV not found in mesa table
OpenGL Warning: glGenFencesNV not found in mesa table
OpenGL Warning: glGetFenceivNV not found in mesa table
OpenGL Warning: glIsFenceNV not found in mesa table
OpenGL Warning: glSetFenceNV not found in mesa table
OpenGL Warning: glTestFenceNV not found in mesa table
libGL error: core dri or dri2 extension not found
libGL error: failed to load driver: vboxvideo
OpenGL Warning: glXChooseVisual: ignoring attribute 0x22
OpenGL Warning: glXChooseVisual: bad attrib=0x20d1, ignoring
OpenGL Info: Using XSHM for GLX_EXT_texture_from_pixmap

I would close this issue, but there's a reference in the README to this -- feel free to close this, and if you want to, update the README before doing so.

I will try this on a Windows host, update the readme then close the ticket

I can confirm that using a Windows host machine, with 3D acceleration turned on (Vbox 5) the problem has gone away, I have added a PR: #9596

Can someone help me out?
I get the following Exception when running in Yocto...

pci id for fd 12: 80ee:beef, driver (null)

I guess its the problem that kernel unable to load the graphics driver..
Could someone give me suggestion to overcome the crash?
Thanks in advance..