Page 1 of 1
Questions about 3d accelerations (vboxvideo ?)
Posted: 14. Mar 2017, 08:53
by sparkleholic
Some curious about the vboxvideo.
I'm developing linux guest not having X, instead it uses wayland.
And I added vbox-guest kernel modules like vboxvideo to the linux guest.
But the curious part is vboxvideo.
Currently even though vboxvideo is loaded in the guest os, nothing is using it.
I wonder that there is a specific configuration of mesa 3d to use vboxvideo, or other modules ?
Any comment will be helpful to understand the 3d acceleration.
Re: Questions about 3d accelerations (vboxvideo ?)
Posted: 14. Mar 2017, 13:27
by towo2099
Afaik vbox does not support wayland in guest. (But maybe my memory is wrong)
Re: Questions about 3d accelerations (vboxvideo ?)
Posted: 4. Apr 2017, 10:18
by sparkleholic
I'm curious how / why 3d acceleration depends on X-server.
This is shared libraries at runtime captured of opengl sample app on ubuntu running on virtualbox enabled 3d acceleration.
Code: Select all
08048000-0804c000 r-xp 00000000 08:01 275235 /usr/bin/glxgears
0804c000-0804d000 r--p 00003000 08:01 275235 /usr/bin/glxgears
0804d000-0804e000 rw-p 00004000 08:01 275235 /usr/bin/glxgears
083ed000-08595000 rw-p 00000000 00:00 0 [heap]
b2b46000-b3195000 rw-p 00000000 00:00 0
b3195000-b31ca000 r-xp 00000000 08:01 270680 /usr/lib/i386-linux-gnu/libtxc_dxtn_s2tc.so.0.0.0
b31ca000-b31cb000 r--p 00034000 08:01 270680 /usr/lib/i386-linux-gnu/libtxc_dxtn_s2tc.so.0.0.0
b31cb000-b31cc000 rw-p 00035000 08:01 270680 /usr/lib/i386-linux-gnu/libtxc_dxtn_s2tc.so.0.0.0
b31cc000-b31ea000 r-xp 00000000 08:01 134943 /lib/i386-linux-gnu/libtinfo.so.5.9
b31ea000-b31eb000 ---p 0001e000 08:01 134943 /lib/i386-linux-gnu/libtinfo.so.5.9
b31eb000-b31ed000 r--p 0001e000 08:01 134943 /lib/i386-linux-gnu/libtinfo.so.5.9
b31ed000-b31ee000 rw-p 00020000 08:01 134943 /lib/i386-linux-gnu/libtinfo.so.5.9
b31ee000-b3215000 r-xp 00000000 08:01 269988 /usr/lib/i386-linux-gnu/libedit.so.2.0.47
b3215000-b3216000 ---p 00027000 08:01 269988 /usr/lib/i386-linux-gnu/libedit.so.2.0.47
b3216000-b3217000 r--p 00027000 08:01 269988 /usr/lib/i386-linux-gnu/libedit.so.2.0.47
b3217000-b3218000 rw-p 00028000 08:01 269988 /usr/lib/i386-linux-gnu/libedit.so.2.0.47
b3218000-b321a000 rw-p 00000000 00:00 0
b321a000-b3232000 r-xp 00000000 08:01 134960 /lib/i386-linux-gnu/libz.so.1.2.8
b3232000-b3233000 r--p 00017000 08:01 134960 /lib/i386-linux-gnu/libz.so.1.2.8
b3233000-b3234000 rw-p 00018000 08:01 134960 /lib/i386-linux-gnu/libz.so.1.2.8
b3234000-b3250000 r-xp 00000000 08:01 134824 /lib/i386-linux-gnu/libgcc_s.so.1
b3250000-b3251000 rw-p 0001b000 08:01 134824 /lib/i386-linux-gnu/libgcc_s.so.1
b3251000-b332d000 r-xp 00000000 08:01 268680 /usr/lib/i386-linux-gnu/libstdc++.so.6.0.19
b332d000-b3331000 r--p 000dc000 08:01 268680 /usr/lib/i386-linux-gnu/libstdc++.so.6.0.19
b3331000-b3332000 rw-p 000e0000 08:01 268680 /usr/lib/i386-linux-gnu/libstdc++.so.6.0.19
b3332000-b3339000 rw-p 00000000 00:00 0
b3339000-b4eed000 r-xp 00000000 08:01 269607 /usr/lib/i386-linux-gnu/libLLVM-3.5.so.1
b4eed000-b5029000 r--p 01bb3000 08:01 269607 /usr/lib/i386-linux-gnu/libLLVM-3.5.so.1
b5029000-b502d000 rw-p 01cef000 08:01 269607 /usr/lib/i386-linux-gnu/libLLVM-3.5.so.1
b502d000-b5039000 rw-p 00000000 00:00 0
b5039000-b5045000 r-xp 00000000 08:01 269984 /usr/lib/i386-linux-gnu/libdrm_radeon.so.1.0.1
b5045000-b5046000 r--p 0000c000 08:01 269984 /usr/lib/i386-linux-gnu/libdrm_radeon.so.1.0.1
b5046000-b5047000 rw-p 0000d000 08:01 269984 /usr/lib/i386-linux-gnu/libdrm_radeon.so.1.0.1
b5047000-b505d000 r-xp 00000000 08:01 269989 /usr/lib/i386-linux-gnu/libelf-0.158.so
b505d000-b505e000 r--p 00015000 08:01 269989 /usr/lib/i386-linux-gnu/libelf-0.158.so
b505e000-b505f000 rw-p 00016000 08:01 269989 /usr/lib/i386-linux-gnu/libelf-0.158.so
b505f000-b57d7000 r-xp 00000000 08:01 270915 /usr/lib/i386-linux-gnu/dri/swrast_dri.so
b57d7000-b5813000 r--p 00777000 08:01 270915 /usr/lib/i386-linux-gnu/dri/swrast_dri.so
b5813000-b581b000 rw-p 007b3000 08:01 270915 /usr/lib/i386-linux-gnu/dri/swrast_dri.so
b581b000-b5a00000 rw-p 00000000 00:00 0
b5a00000-b5a21000 rw-p 00000000 00:00 0
b5a21000-b5b00000 ---p 00000000 00:00 0
b5b17000-b5b18000 rw-p 00000000 00:00 0
b5b18000-b5b19000 ---p 00000000 00:00 0
b5b19000-b5b99000 rw-p 00000000 00:00 0 [stack:2236]
b5b99000-b5b9a000 ---p 00000000 00:00 0
b5b9a000-b639a000 rw-p 00000000 00:00 0
b639a000-b64cc000 r--p 00858000 08:01 272344 /usr/lib/locale/locale-archive
b64cc000-b66cc000 r--p 00000000 08:01 272344 /usr/lib/locale/locale-archive
b66cc000-b681a000 rw-p 00000000 00:00 0
b681a000-b6822000 r-xp 00000000 08:01 1699 /opt/VBoxGuestAdditions-4.3.34/lib/VBoxOGLpassthroughspu.so
b6822000-b6823000 rw-p 00008000 08:01 1699 /opt/VBoxGuestAdditions-4.3.34/lib/VBoxOGLpassthroughspu.so
b6823000-b6824000 rw-p 00000000 00:00 0
b6824000-b68d4000 r-xp 00000000 08:01 1742 /opt/VBoxGuestAdditions-4.3.34/lib/VBoxOGLfeedbackspu.so
b68d4000-b68d6000 rw-p 000af000 08:01 1742 /opt/VBoxGuestAdditions-4.3.34/lib/VBoxOGLfeedbackspu.so
b68d6000-b6e83000 rw-p 00000000 00:00 0
b6e83000-b6e99000 r-xp 00000000 08:01 1741 /opt/VBoxGuestAdditions-4.3.34/lib/VBoxOGLerrorspu.so
b6e99000-b6e9b000 rw-p 00015000 08:01 1741 /opt/VBoxGuestAdditions-4.3.34/lib/VBoxOGLerrorspu.so
b6e9b000-b7048000 r-xp 00000000 08:01 1701 /opt/VBoxGuestAdditions-4.3.34/lib/VBoxOGLpackspu.so
b7048000-b704c000 rw-p 001ac000 08:01 1701 /opt/VBoxGuestAdditions-4.3.34/lib/VBoxOGLpackspu.so
b704c000-b708a000 rw-p 00000000 00:00 0
b708a000-b708c000 r-xp 00000000 08:01 269741 /usr/lib/i386-linux-gnu/libXcomposite.so.1.0.0
b708c000-b708d000 r--p 00001000 08:01 269741 /usr/lib/i386-linux-gnu/libXcomposite.so.1.0.0
b708d000-b708e000 rw-p 00002000 08:01 269741 /usr/lib/i386-linux-gnu/libXcomposite.so.1.0.0
b708e000-b7123000 r-xp 00000000 08:01 1700 /opt/VBoxGuestAdditions-4.3.34/lib/VBoxOGLcrutil.so
b7123000-b712d000 rw-p 00095000 08:01 1700 /opt/VBoxGuestAdditions-4.3.34/lib/VBoxOGLcrutil.so
b712d000-b7131000 rw-p 00000000 00:00 0
b7131000-b720e000 r-xp 00000000 08:01 1702 /opt/VBoxGuestAdditions-4.3.34/lib/VBoxOGL.so
b720e000-b721e000 rw-p 000dc000 08:01 1702 /opt/VBoxGuestAdditions-4.3.34/lib/VBoxOGL.so
b721e000-b7225000 rw-p 00000000 00:00 0
b7225000-b722c000 r-xp 00000000 08:01 134925 /lib/i386-linux-gnu/librt-2.19.so
b722c000-b722d000 r--p 00006000 08:01 134925 /lib/i386-linux-gnu/librt-2.19.so
b722d000-b722e000 rw-p 00007000 08:01 134925 /lib/i386-linux-gnu/librt-2.19.so
b722e000-b7277000 r-xp 00000000 08:01 134811 /lib/i386-linux-gnu/libdbus-1.so.3.7.6
b7277000-b7278000 r--p 00048000 08:01 134811 /lib/i386-linux-gnu/libdbus-1.so.3.7.6
b7278000-b7279000 rw-p 00049000 08:01 134811 /lib/i386-linux-gnu/libdbus-1.so.3.7.6
b7279000-b7281000 r-xp 00000000 08:01 134859 /lib/i386-linux-gnu/libnih-dbus.so.1.0.0
b7281000-b7282000 r--p 00007000 08:01 134859 /lib/i386-linux-gnu/libnih-dbus.so.1.0.0
b7282000-b7283000 rw-p 00008000 08:01 134859 /lib/i386-linux-gnu/libnih-dbus.so.1.0.0
b7283000-b729a000 r-xp 00000000 08:01 134861 /lib/i386-linux-gnu/libnih.so.1.0.0
b729a000-b729b000 r--p 00016000 08:01 134861 /lib/i386-linux-gnu/libnih.so.1.0.0
b729b000-b729c000 rw-p 00017000 08:01 134861 /lib/i386-linux-gnu/libnih.so.1.0.0
b729c000-b72b8000 r-xp 00000000 08:01 134802 /lib/i386-linux-gnu/libcgmanager.so.0.0.0
b72b8000-b72b9000 r--p 0001b000 08:01 134802 /lib/i386-linux-gnu/libcgmanager.so.0.0.0
b72b9000-b72ba000 rw-p 0001c000 08:01 134802 /lib/i386-linux-gnu/libcgmanager.so.0.0.0
b72ba000-b72cb000 r-xp 00000000 08:01 134945 /lib/i386-linux-gnu/libudev.so.1.3.5
b72cb000-b72cc000 r--p 00010000 08:01 134945 /lib/i386-linux-gnu/libudev.so.1.3.5
b72cc000-b72cd000 rw-p 00011000 08:01 134945 /lib/i386-linux-gnu/libudev.so.1.3.5
b72cd000-b72cf000 rw-p 00000000 00:00 0
b72cf000-b72d4000 r-xp 00000000 08:01 269747 /usr/lib/i386-linux-gnu/libXdmcp.so.6.0.0
b72d4000-b72d5000 r--p 00004000 08:01 269747 /usr/lib/i386-linux-gnu/libXdmcp.so.6.0.0
b72d5000-b72d6000 rw-p 00005000 08:01 269747 /usr/lib/i386-linux-gnu/libXdmcp.so.6.0.0
b72d6000-b72d8000 r-xp 00000000 08:01 269736 /usr/lib/i386-linux-gnu/libXau.so.6.0.0
b72d8000-b72d9000 r--p 00001000 08:01 269736 /usr/lib/i386-linux-gnu/libXau.so.6.0.0
b72d9000-b72da000 rw-p 00002000 08:01 269736 /usr/lib/i386-linux-gnu/libXau.so.6.0.0
b72da000-b72db000 rw-p 00000000 00:00 0
b72db000-b72de000 r-xp 00000000 08:01 134814 /lib/i386-linux-gnu/libdl-2.19.so
b72de000-b72df000 r--p 00002000 08:01 134814 /lib/i386-linux-gnu/libdl-2.19.so
b72df000-b72e0000 rw-p 00003000 08:01 134814 /lib/i386-linux-gnu/libdl-2.19.so
b72e0000-b72f8000 r-xp 00000000 08:01 134917 /lib/i386-linux-gnu/libpthread-2.19.so
b72f8000-b72f9000 r--p 00018000 08:01 134917 /lib/i386-linux-gnu/libpthread-2.19.so
b72f9000-b72fa000 rw-p 00019000 08:01 134917 /lib/i386-linux-gnu/libpthread-2.19.so
b72fa000-b72fc000 rw-p 00000000 00:00 0
b72fc000-b7307000 r-xp 00000000 08:01 269978 /usr/lib/i386-linux-gnu/libdrm.so.2.4.0
b7307000-b7308000 r--p 0000a000 08:01 269978 /usr/lib/i386-linux-gnu/libdrm.so.2.4.0
b7308000-b7309000 rw-p 0000b000 08:01 269978 /usr/lib/i386-linux-gnu/libdrm.so.2.4.0
b7309000-b730d000 r-xp 00000000 08:01 269787 /usr/lib/i386-linux-gnu/libXxf86vm.so.1.0.0
b730d000-b730e000 r--p 00004000 08:01 269787 /usr/lib/i386-linux-gnu/libXxf86vm.so.1.0.0
b730e000-b730f000 rw-p 00005000 08:01 269787 /usr/lib/i386-linux-gnu/libXxf86vm.so.1.0.0
b730f000-b7310000 rw-p 00000000 00:00 0
b7310000-b7311000 r-xp 00000000 08:01 270812 /usr/lib/i386-linux-gnu/libxshmfence.so.1.0.0
b7311000-b7312000 r--p 00000000 08:01 270812 /usr/lib/i386-linux-gnu/libxshmfence.so.1.0.0
b7312000-b7313000 rw-p 00001000 08:01 270812 /usr/lib/i386-linux-gnu/libxshmfence.so.1.0.0
b7313000-b7333000 r-xp 00000000 08:01 270802 /usr/lib/i386-linux-gnu/libxcb.so.1.1.0
b7333000-b7334000 r--p 0001f000 08:01 270802 /usr/lib/i386-linux-gnu/libxcb.so.1.1.0
b7334000-b7335000 rw-p 00020000 08:01 270802 /usr/lib/i386-linux-gnu/libxcb.so.1.1.0
b7335000-b733a000 r-xp 00000000 08:01 270794 /usr/lib/i386-linux-gnu/libxcb-sync.so.1.0.0
b733a000-b733b000 r--p 00004000 08:01 270794 /usr/lib/i386-linux-gnu/libxcb-sync.so.1.0.0
b733b000-b733c000 rw-p 00005000 08:01 270794 /usr/lib/i386-linux-gnu/libxcb-sync.so.1.0.0
b733c000-b733e000 r-xp 00000000 08:01 270782 /usr/lib/i386-linux-gnu/libxcb-present.so.0.0.0
b733e000-b733f000 r--p 00001000 08:01 270782 /usr/lib/i386-linux-gnu/libxcb-present.so.0.0.0
b733f000-b7340000 rw-p 00002000 08:01 270782 /usr/lib/i386-linux-gnu/libxcb-present.so.0.0.0
b7340000-b7342000 r-xp 00000000 08:01 270772 /usr/lib/i386-linux-gnu/libxcb-dri3.so.0.0.0
b7342000-b7343000 r--p 00001000 08:01 270772 /usr/lib/i386-linux-gnu/libxcb-dri3.so.0.0.0
b7343000-b7344000 rw-p 00002000 08:01 270772 /usr/lib/i386-linux-gnu/libxcb-dri3.so.0.0.0
b7344000-b7345000 rw-p 00000000 00:00 0
b7345000-b7349000 r-xp 00000000 08:01 270770 /usr/lib/i386-linux-gnu/libxcb-dri2.so.0.0.0
b7349000-b734a000 r--p 00003000 08:01 270770 /usr/lib/i386-linux-gnu/libxcb-dri2.so.0.0.0
b734a000-b734b000 rw-p 00004000 08:01 270770 /usr/lib/i386-linux-gnu/libxcb-dri2.so.0.0.0
b734b000-b7361000 r-xp 00000000 08:01 270774 /usr/lib/i386-linux-gnu/libxcb-glx.so.0.0.0
b7361000-b7362000 r--p 00016000 08:01 270774 /usr/lib/i386-linux-gnu/libxcb-glx.so.0.0.0
b7362000-b7363000 rw-p 00017000 08:01 270774 /usr/lib/i386-linux-gnu/libxcb-glx.so.0.0.0
b7363000-b7364000 r-xp 00000000 08:01 269730 /usr/lib/i386-linux-gnu/libX11-xcb.so.1.0.0
b7364000-b7365000 r--p 00000000 08:01 269730 /usr/lib/i386-linux-gnu/libX11-xcb.so.1.0.0
b7365000-b7366000 rw-p 00001000 08:01 269730 /usr/lib/i386-linux-gnu/libX11-xcb.so.1.0.0
b7366000-b736a000 r-xp 00000000 08:01 269751 /usr/lib/i386-linux-gnu/libXfixes.so.3.1.0
b736a000-b736b000 r--p 00003000 08:01 269751 /usr/lib/i386-linux-gnu/libXfixes.so.3.1.0
b736b000-b736c000 rw-p 00004000 08:01 269751 /usr/lib/i386-linux-gnu/libXfixes.so.3.1.0
b736c000-b736e000 r-xp 00000000 08:01 269745 /usr/lib/i386-linux-gnu/libXdamage.so.1.1.0
b736e000-b736f000 r--p 00001000 08:01 269745 /usr/lib/i386-linux-gnu/libXdamage.so.1.1.0
b736f000-b7370000 rw-p 00002000 08:01 269745 /usr/lib/i386-linux-gnu/libXdamage.so.1.1.0
b7370000-b7371000 rw-p 00000000 00:00 0
b7371000-b7382000 r-xp 00000000 08:01 269749 /usr/lib/i386-linux-gnu/libXext.so.6.4.0
b7382000-b7383000 r--p 00010000 08:01 269749 /usr/lib/i386-linux-gnu/libXext.so.6.4.0
b7383000-b7384000 rw-p 00011000 08:01 269749 /usr/lib/i386-linux-gnu/libXext.so.6.4.0
b7384000-b7395000 r-xp 00000000 08:01 270123 /usr/lib/i386-linux-gnu/libglapi.so.0.0.0
b7395000-b7397000 r--p 00010000 08:01 270123 /usr/lib/i386-linux-gnu/libglapi.so.0.0.0
b7397000-b739c000 rwxp 00012000 08:01 270123 /usr/lib/i386-linux-gnu/libglapi.so.0.0.0
b739c000-b739d000 rwxp 00000000 00:00 0
b739d000-b73c2000 r-xp 00000000 08:01 134819 /lib/i386-linux-gnu/libexpat.so.1.6.0
b73c2000-b73c3000 ---p 00025000 08:01 134819 /lib/i386-linux-gnu/libexpat.so.1.6.0
b73c3000-b73c5000 r--p 00025000 08:01 134819 /lib/i386-linux-gnu/libexpat.so.1.6.0
b73c5000-b73c6000 rw-p 00027000 08:01 134819 /lib/i386-linux-gnu/libexpat.so.1.6.0
b73c6000-b756f000 r-xp 00000000 08:01 134797 /lib/i386-linux-gnu/libc-2.19.so
b756f000-b7571000 r--p 001a9000 08:01 134797 /lib/i386-linux-gnu/libc-2.19.so
b7571000-b7572000 rw-p 001ab000 08:01 134797 /lib/i386-linux-gnu/libc-2.19.so
b7572000-b7575000 rw-p 00000000 00:00 0
b7575000-b76a5000 r-xp 00000000 08:01 269732 /usr/lib/i386-linux-gnu/libX11.so.6.3.0
b76a5000-b76a6000 r--p 00130000 08:01 269732 /usr/lib/i386-linux-gnu/libX11.so.6.3.0
b76a6000-b76a8000 rw-p 00131000 08:01 269732 /usr/lib/i386-linux-gnu/libX11.so.6.3.0
b76a8000-b76aa000 rw-p 00000000 00:00 0
b76aa000-b76ee000 r-xp 00000000 08:01 134847 /lib/i386-linux-gnu/libm-2.19.so
b76ee000-b76ef000 r--p 00043000 08:01 134847 /lib/i386-linux-gnu/libm-2.19.so
b76ef000-b76f0000 rw-p 00044000 08:01 134847 /lib/i386-linux-gnu/libm-2.19.so
b76f0000-b7705000 r-xp 00000000 08:01 271734 /usr/lib/i386-linux-gnu/mesa/libGL.so.1.2.0
b7705000-b7709000 r-xp 00015000 08:01 271734 /usr/lib/i386-linux-gnu/mesa/libGL.so.1.2.0
b7709000-b772a000 r-xp 00019000 08:01 271734 /usr/lib/i386-linux-gnu/mesa/libGL.so.1.2.0
b772a000-b772b000 r-xp 0003a000 08:01 271734 /usr/lib/i386-linux-gnu/mesa/libGL.so.1.2.0
b772b000-b777b000 r-xp 0003b000 08:01 271734 /usr/lib/i386-linux-gnu/mesa/libGL.so.1.2.0
b777b000-b777d000 r--p 0008a000 08:01 271734 /usr/lib/i386-linux-gnu/mesa/libGL.so.1.2.0
b777d000-b7782000 rwxp 0008c000 08:01 271734 /usr/lib/i386-linux-gnu/mesa/libGL.so.1.2.0
b7782000-b7787000 r-xp 00000000 08:01 270018 /usr/lib/i386-linux-gnu/libffi.so.6.0.1
b7787000-b7788000 r--p 00005000 08:01 270018 /usr/lib/i386-linux-gnu/libffi.so.6.0.1
b7788000-b7789000 rw-p 00006000 08:01 270018 /usr/lib/i386-linux-gnu/libffi.so.6.0.1
b7789000-b778f000 r-xp 00000000 08:01 269982 /usr/lib/i386-linux-gnu/libdrm_nouveau.so.2.0.0
b778f000-b7790000 r--p 00005000 08:01 269982 /usr/lib/i386-linux-gnu/libdrm_nouveau.so.2.0.0
b7790000-b7791000 rw-p 00006000 08:01 269982 /usr/lib/i386-linux-gnu/libdrm_nouveau.so.2.0.0
b7791000-b7798000 r--s 00000000 08:01 271475 /usr/lib/i386-linux-gnu/gconv/gconv-modules.cache
b7798000-b779a000 rw-p 00000000 00:00 0
b779a000-b779b000 r-xp 00000000 00:00 0 [vdso]
b779b000-b779d000 r--p 00000000 00:00 0 [vvar]
b779d000-b77bd000 r-xp 00000000 08:01 134773 /lib/i386-linux-gnu/ld-2.19.so
b77bd000-b77be000 r--p 0001f000 08:01 134773 /lib/i386-linux-gnu/ld-2.19.so
b77be000-b77bf000 rw-p 00020000 08:01 134773 /lib/i386-linux-gnu/ld-2.19.so
bff46000-bff67000 rw-p 00000000 00:00 0 [stack]
I thought it loaded "vmwgfx_dri" among mesa opengl drivers to use 3d acceleration, but it didn't.
It just loaded "swrast_dri.so" (Interesting part. It just looks it's using sw rasterization, how can it use 3d acceleration ? )
and one more curious thing is "VBoxOGLpassthroughspu.so".
I'm curious how this is loaded. (There is no option related this for mesa build ! )