VirtualBox segfaulting against libX11.so.6 - how to debug?

Testing VirtualBox after today’s big upgrade, I noticed it was crashing when I tried to start a VM.
However, doing some restores on my “playground” root partition suggests that the problem may have been introduced in 2022-01-02, as it only starts working again when I restore back to before that update (I only occasionally use VirtualBox, so hadn’t tried it this year).

The journal shows:

Jan 24 15:55:21 kernel: SUPR0GipMap: fGetGipCpu=0xb
Jan 24 15:55:22 kernel: vboxdrv: 00000000d6420fc8 VMMR0.r0
Jan 24 15:55:22 kernel: vboxdrv: 000000003f8181d0 VBoxDDR0.r0
Jan 24 15:55:23 kernel: vboxdrv: 000000008f84d873 VBoxEhciR0.r0
Jan 24 15:55:23 kernel: VMSVGA FIFO[3556]: segfault at f8 ip 00007f7cb041c159 sp 00007f7c32d8bbd0 error 4 in libX11.so.6.4.0[7f7cb041a000+8a000]

So it seems that something doesn’t like libX11.

I’ve tried downgrading the various VirtualBox packages but the problem still persists, so I can only assume it’s due to something else that it interfaces with that’s changed.

I’ve edited /bin/VBox so it runs /usr/lib/virtualbox/VirtualBox through gdb, but that doesn’t give any useful information because it isn’t compiled with debugging symbols. So I’m somewhat stumped as to what to try next to debug this problem. I’d appreciate any pointers as to other things I can try.

Mine is working perfectly. If you have virtualbox-ext-oracle installed, check if its version is the same than the version of virtualbox.

pacman -Q | grep virtualbox

All packages in the output of this command should have the same version. Not always, but sometimes an earlier version of virtualbox-ext-oracle can trigger errors when launching VMs.

I think you’ve hit on it. Thanks.
As you surmised, virtualbox-ext-oracle seems to be the problem. I’ll try reinstalling it to see if that updates it.

[Edit]: that didn’t help, so I tried removing virtualbox-ext-oracle, which broke my printer as that package provides USB2 support. Looks like I’ll need to go over to the AUR version of Virtualbox to get everything in sync.

Thanks again for pointing me in the right direction.

This is a known issue when there is a version mismatch between Manjaro stable and Manjaro unstable.

The first point of test is to set your VM to use USB1.1 - then remove virtualbox extensions - restart your vm.

Next it to download the extensions package matching your running virtualbox from virtualbox.org.

Thanks.

Look into /var/cache/pacman/pkg/ and see if you’ve got the previous virtualbox-ext-oracle package:

[lcoimbra@dg-lcoimbra ~]$ ls /var/cache/pacman/pkg | grep virtualbox
virtualbox-6.1.22-3-x86_64.pkg.tar.zst
virtualbox-6.1.24-1-x86_64.pkg.tar.zst
virtualbox-6.1.24-1-x86_64.pkg.tar.zst.sig
virtualbox-6.1.26-1-x86_64.pkg.tar.zst
virtualbox-6.1.26-1-x86_64.pkg.tar.zst.sig
virtualbox-6.1.28-3-x86_64.pkg.tar.zst
virtualbox-6.1.28-3-x86_64.pkg.tar.zst.sig
virtualbox-6.1.30-1-x86_64.pkg.tar.zst
virtualbox-6.1.30-1-x86_64.pkg.tar.zst.sig
virtualbox-6.1.30-3-x86_64.pkg.tar.zst
virtualbox-6.1.30-3-x86_64.pkg.tar.zst.sig
virtualbox-ext-oracle-6.1.22-1-any.pkg.tar.zst
virtualbox-ext-oracle-6.1.24-1-any.pkg.tar.zst
virtualbox-ext-oracle-6.1.26-1-any.pkg.tar.zst
virtualbox-ext-oracle-6.1.28-1-any.pkg.tar.zst
virtualbox-ext-oracle-6.1.30-1-any.pkg.tar.zst
virtualbox-guest-iso-6.1.22-1-any.pkg.tar.zst
virtualbox-guest-iso-6.1.24-1-any.pkg.tar.zst
virtualbox-guest-iso-6.1.24-1-any.pkg.tar.zst.sig
virtualbox-guest-iso-6.1.26-1-any.pkg.tar.zst
virtualbox-guest-iso-6.1.26-1-any.pkg.tar.zst.sig
virtualbox-guest-iso-6.1.28-1-any.pkg.tar.zst
virtualbox-guest-iso-6.1.28-1-any.pkg.tar.zst.sig
virtualbox-guest-iso-6.1.30-1-any.pkg.tar.zst
virtualbox-guest-iso-6.1.30-1-any.pkg.tar.zst.sig
virtualbox-host-dkms-6.1.22-3-x86_64.pkg.tar.zst
virtualbox-host-dkms-6.1.24-1-x86_64.pkg.tar.zst
virtualbox-host-dkms-6.1.24-1-x86_64.pkg.tar.zst.sig
virtualbox-host-dkms-6.1.26-1-x86_64.pkg.tar.zst
virtualbox-host-dkms-6.1.26-1-x86_64.pkg.tar.zst.sig
virtualbox-host-dkms-6.1.28-3-x86_64.pkg.tar.zst
virtualbox-host-dkms-6.1.28-3-x86_64.pkg.tar.zst.sig
virtualbox-host-dkms-6.1.30-1-x86_64.pkg.tar.zst
virtualbox-host-dkms-6.1.30-1-x86_64.pkg.tar.zst.sig
virtualbox-host-dkms-6.1.30-3-x86_64.pkg.tar.zst
virtualbox-host-dkms-6.1.30-3-x86_64.pkg.tar.zst.sig

If you do, install it. For example, sudo pacman -U /var/cache/pacman/pkg/virtualbox-ext-oracle-6.1.30-1-any.pkg.tar.zst

Next time check versions before updating that package.

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.