You are not logged in.

#1 2024-09-14 10:20:20

thorstenhirsch
Member
Registered: 2005-08-03
Posts: 111

[SOLVED] segfault since upgrade to VirtualBox 7.1

All my virtual machines (Win11 and Linux) fail to start since upgrading to VirtualBox 7.1 yesterday. In the GUI it only shows the generic "NS_ERROR_FAILURE (0x80004005)", but in dmesg there's a segfault:

[  676.964803] VirtualBoxVM[5339]: segfault at 0 ip 000077e92264f39d sp 00007ffd4bcc4628 error 4 in libc.so.6[16f39d,77e922571000+104000] likely on CPU 7 (core 7, socket 0)
[  676.964812] Code: 00 00 66 2e 0f 1f 84 00 00 00 00 00 90 f3 0f 1e fa 89 f8 48 89 fa c5 f9 ef c0 25 ff 0f 00 00 3d e0 0f 00 00 0f 87 33 01 00 00 <c5> fd 74 0f c5 fd d7 c1 85 c0 74 57 f3 0f bc c0 c5 f8 77 c3 66 66

Here's what I've tried so far:

- upgrade of extension package to 7.1
- disabled USB support completely
- enabled/disabled 3D acceleration
- switched from virtualbox-host-dkms to virtualbox-host-modules-arch (I'm using the default kernel package)
- installed virtualbox-guest-iso
- also, the settings for TPM, EFI, and secure boot don't seem to cause the problem, as they're all disabled for the Linux VM / enabled for the Win11 VM

But none of these had any effect. I also made sure that my system is up-to-date completely.
Any ideas?

P.S.: It's a bit weird that none of the VBox.log files of any VM has been written since the upgrade to VirtualBox 7.1. They all still start with the line "...VirtualBox VM 7.0.20 r163906 linux.amd64...", but I guess the segfault just happens before the VM starts to write the log file. Permissions of files and folders (~/VirtualBox VMs and ~/.VirtualBox) also look correct, everything's owned by my user and he has write access.

Last edited by thorstenhirsch (2024-09-28 11:27:40)

Offline

#2 2024-09-14 19:57:23

roviq
Member
Registered: 2022-10-17
Posts: 5

Re: [SOLVED] segfault since upgrade to VirtualBox 7.1

Having the same issue, and tried almost the same steps (was using dkms too!), still looking into it.  Additionally I also have this segfault in another component (UICommon.so) but subsequent one are in libc.so.6.

[  159.009675] VirtualBox[1904]: segfault at 28 ip 00007227ec6698e8 sp 00007ffcbbea67f0 error 4 in UICommon.so[4698e8,7227ec477000+4c9000] likely on CPU 15 (core 15, socket 0)

The log sidebar also states this:

The virtual machine 'Machine Name' has terminated unexpectedly during startup because of signal 11.
Result Code:
NS_ERROR_FAILURE (0x80004005)
Component:
MachineWrap
Interface:
IMachine {.....redacted.....}

Last edited by roviq (2024-09-14 20:00:00)

Offline

#3 2024-09-14 20:50:02

xerxes_
Member
Registered: 2018-04-29
Posts: 803

Re: [SOLVED] segfault since upgrade to VirtualBox 7.1

Post output of command: 'pacman -Qs virtualbox'.
Post coredumpctl related to virtualbox, e.g. 'coredumpctl dump /usr/bin/VBox'.
What kernel do you use?

Did you checked this:
https://askubuntu.com/questions/1464086 … 0x80004005
https://www.dedoimedo.com/computers/vir … ilure.html

If this won't work, start virtualbox from terminal and look for errors in output:
1) Start command 'VBox' or 'VirtualBox' or similar and try to launch some vm
2) Start with command like this: 'VirtualBoxVM --startvm "Name of your vm" '
3) Start with command like this: 'strace virtualbox' and post here last lines - a few before error(s) to the end.

Last edited by xerxes_ (2024-09-14 20:59:18)

Offline

#4 2024-09-15 10:39:21

8472
Member
From: Slovakia
Registered: 2010-05-15
Posts: 88

Re: [SOLVED] segfault since upgrade to VirtualBox 7.1

I have a very similar problem, just without the CPU error, just the "NS_ERROR_FAILURE (0x80004005)" problem.

1. have completely uninstalled older VirtualBox
2. reboot
3. installed:

pacman -S virtualbox virtualbox-guest-iso virtualbox-host-modules-arch virtualbox-host-modules-lts

4. reboot
5. my $USER is already member of of the "vboxusers" in /etc/group



pacman -Qs virtualbox

core/linux 6.10.10.arch1-1 [installed]
    The Linux kernel and modules
core/linux-lts 6.6.51-1 [installed]
    The LTS Linux kernel and modules
extra/libvirt 1:10.7.0-2 [installed]
    API for controlling virtualization engines (openvz,kvm,qemu,virtualbox,xen,etc)
extra/linux-hardened 6.10.8.hardened1-2
    The Security-Hardened Linux kernel and modules
extra/linux-rt 6.10.2.rt14.arch1-2
    The Linux RT kernel and modules
extra/linux-rt-lts 6.6.48.rt40.arch1-2
    The Linux RT LTS kernel and modules
extra/linux-zen 6.10.10.zen1-1
    The Linux ZEN kernel and modules
extra/phpvirtualbox 5.2_1-8
    PHP/AJAX web interface for VirtualBox
extra/virtualbox 7.1.0-1 [installed]
    Powerful x86 virtualization for enterprise as well as home use
extra/virtualbox-ext-vnc 7.1.0-1
    VirtualBox VNC extension pack
extra/virtualbox-guest-iso 7.1.0-1 [installed]
    The official VirtualBox Guest Additions ISO image
extra/virtualbox-guest-utils 7.1.0-1
    VirtualBox Guest userspace utilities
extra/virtualbox-guest-utils-nox 7.1.0-1
    VirtualBox Guest userspace utilities without X support
extra/virtualbox-host-dkms 7.1.0-1
    VirtualBox Host kernel modules sources
extra/virtualbox-host-modules-arch 7.1.0-2 [installed]
    Virtualbox host kernel modules for Arch Kernel
extra/virtualbox-host-modules-lts 7.1.0-2 [installed]
    Virtualbox host kernel modules for LTS Kernel
extra/virtualbox-sdk 7.1.0-1
    VirtualBox Software Developer Kit (SDK)

uname -a

Linux workstation 6.6.51-1-lts #1 SMP PREEMPT_DYNAMIC Thu, 12 Sep 2024 11:23:10 +0000 x86_64 GNU/Linux

sudo coredumpctl dump VirtualBoxVM --output /tmp/output

           PID: 43671 (VirtualBoxVM)
           UID: 1000 (USERNAME)
           GID: 1000 (USERNAME)
        Signal: 6 (ABRT)
     Timestamp: Sun 2024-09-15 12:17:35 CEST (7min ago)
  Command Line: /usr/lib/virtualbox/VirtualBoxVM --startvm Arch
    Executable: /usr/lib/virtualbox/VirtualBoxVM
 Control Group: /user.slice/user-1000.slice/session-1.scope
          Unit: session-1.scope
         Slice: user-1000.slice
       Session: 1
     Owner UID: 1000 (USERNAME)
       Boot ID: ba35712494454c19bfa95a695f3a44db
    Machine ID: d5951f18df004ae28ab09f9aa18fe56d
      Hostname: USERNAME
       Storage: /var/lib/systemd/coredump/core.VirtualBoxVM.1000.ba35712494454c19bfa95a695f3a44db.43671.1726395455000000.zst (present)
  Size on Disk: 1.2M
       Message: Process 43671 (VirtualBoxVM) of user 1000 dumped core.

                Stack trace of thread 43671:
                #0  0x0000705258e4b3f4 n/a (libc.so.6 + 0x963f4)
                #1  0x0000705258df2120 raise (libc.so.6 + 0x3d120)
                #2  0x0000705258dd94c3 abort (libc.so.6 + 0x244c3)
                #3  0x000070525628c663 n/a (libQt6Core.so.6 + 0x8c663)
                #4  0x000070525628ce07 _ZNK14QMessageLogger5fatalEPKcz (libQt6Core.so.6 + 0x8ce07)
                #5  0x0000705258c94218 n/a (VirtualBoxVM.so + 0x59218)
                #6  0x00005ed62edd3c60 n/a (VirtualBoxVM + 0x4c60)
                #7  0x00005ed62edd3cfc n/a (VirtualBoxVM + 0x4cfc)
                #8  0x00005ed62edd48c1 n/a (VirtualBoxVM + 0x58c1)
                #9  0x0000705258ddae08 n/a (libc.so.6 + 0x25e08)
                #10 0x0000705258ddaecc __libc_start_main (libc.so.6 + 0x25ecc)
                #11 0x00005ed62edd22e5 n/a (VirtualBoxVM + 0x32e5)

                Stack trace of thread 43672:
                #0  0x0000705258ec063d __poll (libc.so.6 + 0x10b63d)
                #1  0x00007052549c6e0d n/a (libglib-2.0.so.0 + 0xbfe0d)
                #2  0x0000705254963795 g_main_context_iteration (libglib-2.0.so.0 + 0x5c795)
                #3  0x00007052565a82bd _ZN20QEventDispatcherGlib13processEventsE6QFlagsIN10QEventLoop17ProcessEventsFlagEE (libQt6Core.so.6 + 0x3a82bd)
                #4  0x000070525634ff66 _ZN10QEventLoop4execE6QFlagsINS_17ProcessEventsFlagEE (libQt6Core.so.6 + 0x14ff66)
                #5  0x000070525643d650 _ZN7QThread4execEv (libQt6Core.so.6 + 0x23d650)
                #6  0x0000705256175f0e n/a (libQt6DBus.so.6 + 0x2df0e)
                #7  0x00007052564cd237 n/a (libQt6Core.so.6 + 0x2cd237)
                #8  0x0000705258e4939d n/a (libc.so.6 + 0x9439d)
                #9  0x0000705258ece49c n/a (libc.so.6 + 0x11949c)

                Stack trace of thread 43673:
                #0  0x0000705258ec063d __poll (libc.so.6 + 0x10b63d)
                #1  0x0000705258c1d20b n/a (libxcb.so.1 + 0xd20b)
                #2  0x0000705258c1ef3d xcb_wait_for_event (libxcb.so.1 + 0xef3d)
                #3  0x0000705250dadc99 n/a (libQt6XcbQpa.so.6 + 0x4ec99)
                #4  0x00007052564cd237 n/a (libQt6Core.so.6 + 0x2cd237)
                #5  0x0000705258e4939d n/a (libc.so.6 + 0x9439d)
                #6  0x0000705258ece49c n/a (libc.so.6 + 0x11949c)
                ELF object binary architecture: AMD x86-64
More than one entry matches, ignoring rest.

GUI

The virtual machine 'Arch' has terminated unexpectedly during startup because of signal 11.
Result Code:
NS_ERROR_FAILURE (0x80004005)
Component: MachineWrap
Interface: IMachine ...

VirtualBoxVM --startvm "Arch"

Segmentation fault (core dumped)

strace VirtualBoxVM --startvm "Arch"

...
...
openat(AT_FDCWD, "/sys/devices/system/cpu/possible", O_RDONLY|O_CLOEXEC) = 3
read(3, "0-31\n", 1024)                 = 5
close(3)                                = 0
sched_getaffinity(43660, 8, [0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15]) = 8
prctl(PR_CAPBSET_READ, CAP_MAC_OVERRIDE) = 1
prctl(PR_CAPBSET_READ, 0x30 /* CAP_??? */) = -1 EINVAL (Invalid argument)
prctl(PR_CAPBSET_READ, CAP_CHECKPOINT_RESTORE) = 1
prctl(PR_CAPBSET_READ, 0x2c /* CAP_??? */) = -1 EINVAL (Invalid argument)
prctl(PR_CAPBSET_READ, 0x2a /* CAP_??? */) = -1 EINVAL (Invalid argument)
prctl(PR_CAPBSET_READ, 0x29 /* CAP_??? */) = -1 EINVAL (Invalid argument)
futex(0x705254e826bc, FUTEX_WAKE_PRIVATE, 2147483647) = 0
brk(0x5ed66e533000)                     = 0x5ed66e533000
getrandom("\x4a\x99\x2b\x00\x16\x9c\xfa\x44", 8, 0) = 8
clone(child_stack=NULL, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x705258db2a10) = 43671
exit_group(1)                           = ?
+++ exited with 1 +++



<html><b>Effective UID is not root (euid=1000 egid=1000 uid=1000 gid=1000) (rc=-10)</b><br/><br/>Please try reinstalling VirtualBox.<br><br><!--
EOM-->where: SUPR3HardenedMain
what:  2
VERR_PERMISSION_DENIED (-10) - Permission denied.
</html>


After this strace, I've searched for that Effective UID is not root (euid=1000 egid=1000 uid=1000 gid=1000) (rc=-10) Please try reinstalling VirtualBox. ... , and in most cases, the people helped running sudo chmod u+s /usr/lib/virtualbox/VirtualBoxVM.

# ls -la `which VirtualBoxVM`
lrwxrwxrwx 1 root root 4 Sep 11 22:08 /bin/VirtualBoxVM -> VBox

# ls -la `which VBox`
-rwxr-xr-x 1 root root 5875 Sep 11 22:08 /bin/VBox

However, doesn't help in my case - no change at all.
Also my /usr/lib/virtualbox/VirtualBoxVM already has the sticky bit.

# ls -la /usr/lib/virtualbox/
total 158996
drwxr-xr-x   5 root root     4096 Sep 15 11:54 .
drwxr-xr-x 325 root root   339968 Sep 15 11:54 ..
drwxr-xr-x   2 root root     4096 Sep 15 11:54 additions
drwxr-xr-x   2 root root     4096 Sep 15 11:54 components
-rwxr-xr-x   1 root root   555072 Sep 11 22:08 DbgPlugInDiggers.so
drwxr-xr-x   2 root root     4096 Sep 11 22:08 ExtensionPacks
-rwxr-xr-x   1 root root   137344 Sep 11 22:08 libvboxjxpcom.so
-rwxr-xr-x   1 root root 30670040 Sep 11 22:08 UICommon.so
-rwxr-xr-x   1 root root    38944 Sep 11 22:08 VBoxAuthSimple.so
-rwxr-xr-x   1 root root    14320 Sep 11 22:08 VBoxAuth.so
-rwxr-xr-x   1 root root   178752 Sep 11 22:08 VBoxBalloonCtrl
-rwxr-xr-x   1 root root   197912 Sep 11 22:08 VBoxDbg.so
-rwxr-xr-x   1 root root  8750808 Sep 11 22:08 VBoxDD2.so
-rw-r--r--   1 root root   314192 Sep 11 22:08 VBoxDDR0.r0
-rwxr-xr-x   1 root root  3079808 Sep 11 22:08 VBoxDD.so
-rwxr-xr-x   1 root root   474520 Sep 11 22:08 VBoxDDU.so
-rwxr-xr-x   1 root root    38952 Sep 11 22:08 VBoxDragAndDropSvc.so
-rwxr-xr-x   1 root root  3194224 Sep 11 22:08 VBoxDxVk.so
-rw-r--r--   1 root root  4194304 Sep 11 22:08 VBoxEFI32.fd
-rw-r--r--   1 root root  4194304 Sep 11 22:08 VBoxEFI64.fd
-rwxr-xr-x   1 root root    63792 Sep 11 22:08 VBoxExtPackHelperApp
-rwxr-xr-x   1 root root    34872 Sep 11 22:08 VBoxGuestControlSvc.so
-rwxr-xr-x   1 root root    43056 Sep 11 22:08 VBoxGuestPropSvc.so
-rwsr-xr-x   1 root root   145536 Sep 11 22:08 VBoxHeadless
-rwxr-xr-x   1 root root   124968 Sep 11 22:08 VBoxHeadless.so
-rwxr-xr-x   1 root root    18400 Sep 11 22:08 VBoxHostChannel.so
-rwxr-xr-x   1 root root   457544 Sep 11 22:08 vbox-img
-rwxr-xr-x   1 root root   129848 Sep 11 22:08 vboximg-mount
-rwxr-xr-x   1 root root    78080 Sep 11 22:08 VBoxKeyboard.so
-rwxr-xr-x   1 root root  3104024 Sep 11 22:08 VBoxManage
-rwsr-xr-x   1 root root    30944 Sep 11 22:08 VBoxNetAdpCtl
-rwsr-xr-x   1 root root   145536 Sep 11 22:08 VBoxNetDHCP
-rwxr-xr-x   1 root root   276552 Sep 11 22:08 VBoxNetDHCP.so
-rwsr-xr-x   1 root root   145536 Sep 11 22:08 VBoxNetNAT
-rwxr-xr-x   1 root root   297256 Sep 11 22:08 VBoxNetNAT.so
-rwxr-xr-x   1 root root   231288 Sep 11 22:08 VBoxPython3m.so
-rwxr-xr-x   1 root root   231288 Sep 11 22:08 VBoxPython3.so
-rwxr-xr-x   1 root root  3538912 Sep 11 22:08 VBoxRT.so
-rwsr-xr-x   1 root root   145528 Sep 11 22:08 VBoxSDL
-rwxr-xr-x   1 root root   178240 Sep 11 22:08 VBoxSDL.so
-rwxr-xr-x   1 root root   149968 Sep 11 22:08 VBoxSharedClipboard.so
-rwxr-xr-x   1 root root    67528 Sep 11 22:08 VBoxSharedFolders.so
-rwxr-xr-x   1 root root  9477256 Sep 11 22:08 VBoxSVC
-rwxr-xr-x   1 root root   252200 Sep 11 22:08 VBoxSVGA3D.so
-rwxr-xr-x   1 root root    52368 Sep 11 22:08 VBoxTraceLogDecoders.so
-rwxr-xr-x   1 root root    14352 Sep 11 22:08 VBoxVMMPreload.so
-rwxr-xr-x   1 root root  6780712 Sep 11 22:08 VBoxVMM.so
-rwxr-xr-x   1 root root 39547304 Sep 11 22:08 vboxwebsrv
-rwxr-xr-x   1 root root    51232 Sep 11 22:08 VBoxXPCOMC.so
-rwxr-xr-x   1 root root    26656 Sep 11 22:08 VBoxXPCOMIPCD.so
-rwxr-xr-x   1 root root   768880 Sep 11 22:08 VBoxXPCOM.so
-rwxr-xr-x   1 root root  3377416 Sep 11 22:08 VirtualBox
-rwsr-xr-x   1 root root   145536 Sep 11 22:08 VirtualBoxVM
-rwxr-xr-x   1 root root  1535128 Sep 11 22:08 VirtualBoxVM.so
-rw-r--r--   1 root root  3313368 Sep 11 22:08 VMMR0.r0
-rwxr-xr-x   1 root root 31349184 Sep 11 22:08 webtest

Logic clearly dictates that the needs of the many outweigh the needs of the few.

Offline

#5 2024-09-15 10:49:21

thorstenhirsch
Member
Registered: 2005-08-03
Posts: 111

Re: [SOLVED] segfault since upgrade to VirtualBox 7.1

I have pretty much the same output as 8472.

$ pacman -Qs virtualbox
local/linux 6.10.10.arch1-1
    The Linux kernel and modules
local/virtualbox 7.1.0-1
    Powerful x86 virtualization for enterprise as well as home use
local/virtualbox-guest-iso 7.1.0-1
    The official VirtualBox Guest Additions ISO image
local/virtualbox-host-modules-arch 7.1.0-2
    Virtualbox host kernel modules for Arch Kernel

Also, and in contrast to roviq, I've installed the *extension package* for USB support manually in the application. The kernel and virtualbox-host-modules-arch 7.1.0-2 just came in today, but they did not change anything compared to their predecessors that were running yesterday. Same error messages. Details of the *coredump* are at the end of this post. Regardings the *links in your post*...

*askubuntu* copes with UEFI settings, and since I haven't changed any settings recently, nor did I upgrade it recently, I am confident that all my UEFI settings are correct for VirtualBox.

*dedoimedo*
- "sudo vboxconfig" -> there's no vboxconfig command on my system (but I remember it was available in old versions of VirtualBox; don't know what happened to it)
- "VBoxManage extpack cleanup" -> run successfully, but didn't change anything (and my manually installed extension package is still there)

Last, but not least - the commands for *starting the VM in the command line* don't show any new error message, they only show the segmentation fault like so:

$ virtualboxvm --startvm=Win11                
[1]    6390 segmentation fault (core dumped)  virtualboxvm --startvm=Win11

Or they show the generic NS_ERROR_FAILURE:

$ VBoxManage startvm Win11
Waiting for VM "Win11" to power on...
VBoxManage: error: The virtual machine 'Win11' has terminated unexpectedly during startup because of signal 11
VBoxManage: error: Details: code NS_ERROR_FAILURE (0x80004005), component MachineWrap, interface IMachine

However, with strace the former command shows a "permission denied" error, more or less the same as 8472 has posted, just with different UID/GID. I'm not sure if it really comes from "virtualboxvm --startvm=Win11", so I tried some other commands with strace. Neither successful nor failing commands produce a permission denied error, so it seems like it really has something to do with our problem:

futex(0x70eb732826bc, FUTEX_WAKE_PRIVATE, 2147483647) = 0
brk(0x62df02e2f000)                     = 0x62df02e2f000
getrandom("\xaf\x7c\xae\xae\xa3\xf2\x35\x33", 8, 0) = 8
clone(child_stack=NULL, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x70eb772dea10) = 2548
exit_group(1)                           = ?
+++ exited with 1 +++
qt.qpa.plugin: Could not find the Qt platform plugin "wayland" in ""                                                                                                                    
$ <html><b>Effective UID is not root (euid=501 egid=100 uid=501 gid=100) (rc=-10)</b><br/><br/>Please try reinstalling VirtualBox.<br><br><!--EOM-->where: SUPR3HardenedMain
what:  2
VERR_PERMISSION_DENIED (-10) - Permission denied.
</html>

The html code seems to be identical with a Qt window that popped up, showing the error message in a formatted way. First thing that came to my mind regarding permissions is the *vboxusers group*. But my user is a member of that group. No idea what other permissions might be relevant.

P.S.: The VirtualBoxVM executable also has the suid flag on my system:

Access: (4755/-rwsr-xr-x)  Uid: (    0/    root)   Gid: (    0/    root)

coredumptcl info:

           PID: 2548 (VirtualBoxVM)
           UID: 501 (torti)
           GID: 100 (users)
        Signal: 6 (ABRT)
     Timestamp: Sun 2024-09-15 12:14:37 CEST (15min ago)
  Command Line: /usr/lib/virtualbox/VirtualBoxVM --startvm=Win11
    Executable: /usr/lib/virtualbox/VirtualBoxVM
 Control Group: /user.slice/user-501.slice/user@501.service/app.slice/app-org.gnome.Terminal.slice/vte-spawn-3b0fc88e-dcac-4208-9827-bd99fc5cf323.scope
          Unit: user@501.service
     User Unit: vte-spawn-3b0fc88e-dcac-4208-9827-bd99fc5cf323.scope
         Slice: user-501.slice
     Owner UID: 501 (torti)
       Boot ID: 93d5144b6d0647c6a7a1aabedd30db33
    Machine ID: ba2a2861b76745d29afcdca899f587d3
      Hostname: zoidberg
       Storage: /var/lib/systemd/coredump/core.VirtualBoxVM.501.93d5144b6d0647c6a7a1aabedd30db33.2548.1726395277000000.zst (present)
  Size on Disk: 1.8M
       Message: Process 2548 (VirtualBoxVM) of user 501 dumped core.
                
                Stack trace of thread 2548:
                #0  0x000070eb773773f4 n/a (libc.so.6 + 0x963f4)
                #1  0x000070eb7731e120 raise (libc.so.6 + 0x3d120)
                #2  0x000070eb773054c3 abort (libc.so.6 + 0x244c3)
                #3  0x000070eb7468c663 n/a (libQt6Core.so.6 + 0x8c663)
                #4  0x000070eb7468ce07 _ZNK14QMessageLogger5fatalEPKcz (libQt6Core.so.6 + 0x8ce07)
                #5  0x000070eb771c0218 n/a (VirtualBoxVM.so + 0x59218)
                #6  0x000062dec6514c60 n/a (VirtualBoxVM + 0x4c60)
                #7  0x000062dec6514cfc n/a (VirtualBoxVM + 0x4cfc)
                #8  0x000062dec65158c1 n/a (VirtualBoxVM + 0x58c1)
                #9  0x000070eb77306e08 n/a (libc.so.6 + 0x25e08)
                #10 0x000070eb77306ecc __libc_start_main (libc.so.6 + 0x25ecc)
                #11 0x000062dec65132e5 n/a (VirtualBoxVM + 0x32e5)
                
                Stack trace of thread 2554:
                #0  0x000070eb71e048de n/a (libdbus-1.so.3 + 0x228de)
                #1  0x000070eb71e04b35 _dbus_validate_body_with_reason (libdbus-1.so.3 + 0x22b35)
                #2  0x000070eb71e1c865 n/a (libdbus-1.so.3 + 0x3a865)
                #3  0x000070eb71e07d64 _dbus_message_loader_queue_messages (libdbus-1.so.3 + 0x25d64)
                #4  0x000070eb71e10074 n/a (libdbus-1.so.3 + 0x2e074)
                #5  0x000070eb71e1025d n/a (libdbus-1.so.3 + 0x2e25d)
                #6  0x000070eb71e1130f n/a (libdbus-1.so.3 + 0x2f30f)
                #7  0x000070eb71e11629 n/a (libdbus-1.so.3 + 0x2f629)
                #8  0x000070eb71df81d7 n/a (libdbus-1.so.3 + 0x161d7)
                #9  0x000070eb74cc258e n/a (libQt6DBus.so.6 + 0x3758e)
                #10 0x000070eb747a3397 n/a (libQt6Core.so.6 + 0x1a3397)
                #11 0x000070eb747ac5b8 _ZN15QSocketNotifier5eventEP6QEvent (libQt6Core.so.6 + 0x1ac5b8)
                #12 0x000070eb74745a83 _ZN16QCoreApplication15notifyInternal2EP7QObjectP6QEvent (libQt6Core.so.6 + 0x145a83)
                #13 0x000070eb749a9d71 n/a (libQt6Core.so.6 + 0x3a9d71)
                #14 0x000070eb72314299 n/a (libglib-2.0.so.0 + 0x5d299)
                #15 0x000070eb72376ec7 n/a (libglib-2.0.so.0 + 0xbfec7)
                #16 0x000070eb72313795 g_main_context_iteration (libglib-2.0.so.0 + 0x5c795)
                #17 0x000070eb749a82bd _ZN20QEventDispatcherGlib13processEventsE6QFlagsIN10QEventLoop17ProcessEventsFlagEE (libQt6Core.so.6 + 0x3a82bd)
                #18 0x000070eb7474ff66 _ZN10QEventLoop4execE6QFlagsINS_17ProcessEventsFlagEE (libQt6Core.so.6 + 0x14ff66)
                #19 0x000070eb7483d650 _ZN7QThread4execEv (libQt6Core.so.6 + 0x23d650)
                #20 0x000070eb74cb8f0e n/a (libQt6DBus.so.6 + 0x2df0e)
                #21 0x000070eb748cd237 n/a (libQt6Core.so.6 + 0x2cd237)
                #22 0x000070eb7737539d n/a (libc.so.6 + 0x9439d)
                #23 0x000070eb773fa49c n/a (libc.so.6 + 0x11949c)
                
                Stack trace of thread 2557:
                #0  0x000070eb773ec63d __poll (libc.so.6 + 0x10b63d)
                #1  0x000070eb7714920b n/a (libxcb.so.1 + 0xd20b)
                #2  0x000070eb7714af3d xcb_wait_for_event (libxcb.so.1 + 0xef3d)
                #3  0x000070eb6f9e2c99 n/a (libQt6XcbQpa.so.6 + 0x4ec99)
                #4  0x000070eb748cd237 n/a (libQt6Core.so.6 + 0x2cd237)
                #5  0x000070eb7737539d n/a (libc.so.6 + 0x9439d)
                #6  0x000070eb773fa49c n/a (libc.so.6 + 0x11949c)
                
                Stack trace of thread 2563:
                #0  0x000070eb77371a19 n/a (libc.so.6 + 0x90a19)
                #1  0x000070eb773747e2 pthread_cond_timedwait (libc.so.6 + 0x937e2)
                #2  0x000070eb748d1bf8 _ZN14QWaitCondition4waitEP6QMutex14QDeadlineTimer (libQt6Core.so.6 + 0x2d1bf8)
                #3  0x000070eb748cb852 n/a (libQt6Core.so.6 + 0x2cb852)
                #4  0x000070eb748cd237 n/a (libQt6Core.so.6 + 0x2cd237)
                #5  0x000070eb7737539d n/a (libc.so.6 + 0x9439d)
                #6  0x000070eb773fa49c n/a (libc.so.6 + 0x11949c)
                
                Stack trace of thread 2562:
                #0  0x000070eb77371a19 n/a (libc.so.6 + 0x90a19)
                #1  0x000070eb773747e2 pthread_cond_timedwait (libc.so.6 + 0x937e2)
                #2  0x000070eb748d1bf8 _ZN14QWaitCondition4waitEP6QMutex14QDeadlineTimer (libQt6Core.so.6 + 0x2d1bf8)
                #3  0x000070eb748cb852 n/a (libQt6Core.so.6 + 0x2cb852)
                #4  0x000070eb748cd237 n/a (libQt6Core.so.6 + 0x2cd237)
                #5  0x000070eb7737539d n/a (libc.so.6 + 0x9439d)
                #6  0x000070eb773fa49c n/a (libc.so.6 + 0x11949c)
                
                Stack trace of thread 2559:
                #0  0x000070eb773f81fd syscall (libc.so.6 + 0x1171fd)
                #1  0x000070eb7236feb0 g_cond_wait (libglib-2.0.so.0 + 0xb8eb0)
                #2  0x000070eb722dc95c n/a (libglib-2.0.so.0 + 0x2595c)
                #3  0x000070eb722dc9cd g_async_queue_pop (libglib-2.0.so.0 + 0x259cd)
                #4  0x000070eb6f41c5fc n/a (libpangoft2-1.0.so.0 + 0xc5fc)
                #5  0x000070eb723441b6 n/a (libglib-2.0.so.0 + 0x8d1b6)
                #6  0x000070eb7737539d n/a (libc.so.6 + 0x9439d)
                #7  0x000070eb773fa49c n/a (libc.so.6 + 0x11949c)
                ELF object binary architecture: AMD x86-64

Last edited by thorstenhirsch (2024-09-15 10:53:15)

Offline

#6 2024-09-15 11:52:14

Ralf
Member
From: Ruhrgebiet
Registered: 2013-03-15
Posts: 56

Re: [SOLVED] segfault since upgrade to VirtualBox 7.1

Hi,

only the shortened story.

Migrating from Arch repos to https://download.virtualbox.org/virtual … _amd64.run (most likely) solved the issues for me. At least a Windows 10 (64-bit) guest as well as a Windows 11 (64-bit) guest are able to start, to download and to install updates and to shut down successfully.

The whole story might be too long to read.

My complete thread on arch-general, including the complete story how I finally was able to solve all issues: https://lists.archlinux.org/archives/li … GPPJGMTBV/
     
My whole thread on Arch Linux forums without my detailed description: https://bbs.archlinux.org/viewtopic.php?pid=2196023

Regards,
Ralf

Offline

#7 2024-09-15 13:32:05

thorstenhirsch
Member
Registered: 2005-08-03
Posts: 111

Re: [SOLVED] segfault since upgrade to VirtualBox 7.1

Doesn't seem to help me, Ralf. I mean it might work when using the original .run file, yes, but still I want to know what's wrong with the arch package in order to fix it.

Meanwhile I think the "strace" call with its new permission problem is useless. It doesn't even trigger the segfault!
So I've looked for an alternative and found "lurk". It works pretty much the same as "strace", but still triggers a segfault. Unfortunately it seems to crash at the end itself, but maybe we can already find the cause of the segfault.

$ lurk virtualboxvm --startvm=Win11 
[126359] execve("", "", "") = 0
[126359] brk(0x0) = 0x55555566F000
[126359] access("/etc/ld.so.preload", 4) = -2
[126359] openat(4294967196, "/etc/ld.so.cache", 524288) = 3
[126359] fstat(3, 0x7FFFFFFFCC10) = 0
[126359] mmap(0x0, 186063, 1, 2, 3, 0) = 0x7FFFF7F93000
[126359] close(3) = 0
[126359] openat(4294967196, "/usr/lib/libreadline.so.8", 524288) = 3
[126359] read(3, "ELF\u0002\u0001\u0001", 832) = 832
[126359] fstat(3, 0x7FFFFFFFCC10) = 0
[126359] mmap(0x0, 8192, 3, 34, 4294967295, 0) = 0x7FFFF7F91000
[126359] mmap(0x0, 350904, 1, 2050, 3, 0) = 0x7FFFF7F3B000
[126359] mmap(0x7FFFF7F50000, 188416, 5, 2066, 3, 86016) = 0x7FFFF7F50000
[126359] mmap(0x7FFFF7F7E000, 36864, 1, 2066, 3, 274432) = 0x7FFFF7F7E000
[126359] mmap(0x7FFFF7F87000, 36864, 3, 2066, 3, 307200) = 0x7FFFF7F87000
[126359] mmap(0x7FFFF7F90000, 2744, 3, 50, 4294967295, 0) = 0x7FFFF7F90000
[126359] close(3) = 0
[126359] openat(4294967196, "/usr/lib/libc.so.6", 524288) = 3
[126359] read(3, "ELF\u0002\u0001\u0001\u0003", 832) = 832
[126359] pread64(3, "\u0006", 784, 64) = 784
[126359] fstat(3, 0x7FFFFFFFCBF0) = 0
[126359] pread64(3, "\u0006", 784, 64) = 784
[126359] mmap(0x0, 2034616, 1, 2050, 3, 0) = 0x7FFFF7D4A000
[126359] mmap(0x7FFFF7D6E000, 1511424, 5, 2066, 3, 147456) = 0x7FFFF7D6E000
[126359] mmap(0x7FFFF7EDF000, 319488, 1, 2066, 3, 1658880) = 0x7FFFF7EDF000
[126359] mmap(0x7FFFF7F2D000, 24576, 3, 2066, 3, 1978368) = 0x7FFFF7F2D000
[126359] mmap(0x7FFFF7F33000, 31672, 3, 50, 4294967295, 0) = 0x7FFFF7F33000
[126359] close(3) = 0
[126359] openat(4294967196, "/usr/lib/libncursesw.so.6", 524288) = 3
[126359] read(3, "ELF\u0002\u0001\u0001", 832) = 832
[126359] fstat(3, 0x7FFFFFFFCBD0) = 0
[126359] mmap(0x0, 453856, 1, 2050, 3, 0) = 0x7FFFF7CDB000
[126359] mmap(0x7FFFF7CE8000, 290816, 5, 2066, 3, 53248) = 0x7FFFF7CE8000
[126359] mmap(0x7FFFF7D2F000, 90112, 1, 2066, 3, 344064) = 0x7FFFF7D2F000
[126359] mmap(0x7FFFF7D45000, 20480, 3, 2066, 3, 434176) = 0x7FFFF7D45000
[126359] close(3) = 0
[126359] mmap(0x0, 8192, 3, 34, 4294967295, 0) = 0x7FFFF7CD9000
[126359] arch_prctl(4098, 0x7FFFF7CD9B80) = 0
[126359] set_tid_address(0x7FFFF7CD9E50) = 0x1ED97
[126359] set_robust_list(0x7FFFF7CD9E60, 24) = 0
[126359] rseq() = 0
[126359] mprotect(0x7FFFF7F2D000, 16384, 1) = 0
[126359] mprotect(0x7FFFF7D45000, 16384, 1) = 0
[126359] mprotect(0x7FFFF7F87000, 12288, 1) = 0
[126359] mprotect(0x55555565F000, 12288, 1) = 0
[126359] mprotect(0x7FFFF7FFB000, 8192, 1) = 0
[126359] prlimit64(0, 3, 0x0, 0x7FFFFFFFD770) = 0
[126359] munmap(0x7FFFF7F93000, 186063) = 0
[126359] openat(4294967196, "/dev/tty", 2050) = 3
[126359] close(3) = 0
[126359] getrandom("Í\u000e/\u000boÄ1A", 8, 1) = 8
[126359] brk(0x0) = 0x55555566F000
[126359] brk(0x555555690000) = 0x555555690000
[126359] openat(4294967196, "/usr/lib/locale/locale-archive", 524288) = 3
[126359] fstat(3, 0x7FFFF7F32800) = 0
[126359] mmap(0x0, 3420784, 1, 2, 3, 0) = 0x7FFFF7800000
[126359] close(3) = 0
[126359] openat(4294967196, "/usr/lib/gconv/gconv-modules.cac...", 524288) = 3
[126359] fstat(3, 0x7FFFFFFFD500) = 0
[126359] mmap(0x0, 27010, 1, 1, 3, 0) = 0x7FFFF7FBA000
[126359] close(3) = 0
[126359] futex(0x7FFFF7F3272C, 129, 2147483647, 0x0, 3, 0) = 0
[126359] getuid(0x7FFFF7F32920) = 501
[126359] getgid(0x0) = 100
[126359] geteuid(0x0) = 501
[126359] getegid(0x0) = 100
[126359] rt_sigprocmask(0, 0x0, 0x5555556660A8, 8) = 0
[126359] rt_sigaction(17, 0x7FFFFFFFD470, 0x7FFFFFFFD510) = 0
[126359] rt_sigaction(17, 0x7FFFFFFFD470, 0x7FFFFFFFD510) = 0
[126359] rt_sigaction(2, 0x7FFFFFFFD470, 0x7FFFFFFFD510) = 0
[126359] rt_sigaction(2, 0x7FFFFFFFD470, 0x7FFFFFFFD510) = 0
[126359] rt_sigaction(3, 0x7FFFFFFFD470, 0x7FFFFFFFD510) = 0
[126359] rt_sigaction(3, 0x7FFFFFFFD470, 0x7FFFFFFFD510) = 0
[126359] rt_sigaction(20, 0x7FFFFFFFD450, 0x7FFFFFFFD4F0) = 0
[126359] rt_sigaction(20, 0x7FFFFFFFD450, 0x7FFFFFFFD4F0) = 0
[126359] rt_sigaction(21, 0x7FFFFFFFD450, 0x7FFFFFFFD4F0) = 0
[126359] rt_sigaction(21, 0x7FFFFFFFD450, 0x7FFFFFFFD4F0) = 0
[126359] rt_sigaction(22, 0x7FFFFFFFD450, 0x7FFFFFFFD4F0) = 0
[126359] rt_sigaction(22, 0x7FFFFFFFD450, 0x7FFFFFFFD4F0) = 0
[126359] rt_sigprocmask(0, 0x0, 0x555555665CA0, 8) = 0
[126359] rt_sigaction(3, 0x7FFFFFFFD470, 0x7FFFFFFFD510) = 0
[126359] uname(0x7FFFFFFFD590) = 0
[126359] newfstatat(4294967196, "/home/torti", 0x7FFFFFFFD4A0, 0) = 0
[126359] newfstatat(4294967196, ".", 0x7FFFFFFFD410, 0) = 0
[126359] newfstatat(4294967196, "/home", 0x7FFFFFFFD490, 0) = 0
[126359] newfstatat(4294967196, "/home/torti", 0x7FFFFFFFD490, 0) = 0
[126359] newfstatat(4294967196, "/home/torti", 0x7FFFFFFFD570, 0) = 0
[126359] getpid(0x5555556798E0) = 0x1ED97
[126359] getppid(0x1) = 0x1ED96
[126359] getpid(0x7FFFFFFFD600) = 0x1ED97
[126359] getppid(0x7FFFFFFFD600) = 0x1ED96
[126359] getpid(0x7FFFFFFFD610) = 0x1ED97
[126359] getppid(0x7FFFFFFFD610) = 0x1ED96
[126359] getpgrp(0x0) = 0x1ED96
[126359] ioctl(2, 21519, 0x7FFFFFFFD6E4) = 0
[126359] rt_sigaction(17, 0x7FFFFFFFD440, 0x7FFFFFFFD4E0) = 0
[126359] prlimit64(0, 6, 0x0, 0x7FFFFFFFD6B0) = 0
[126359] rt_sigprocmask(0, 0x0, 0x555555666188, 8) = 0
[126359] openat(4294967196, "/usr/bin/virtualboxvm", 0) = 3
[126359] newfstatat(4294967196, "/usr/bin/virtualboxvm", 0x7FFFFFFFD7E0, 0) = 0
[126359] ioctl(3, 21505, 0x7FFFFFFFD7F0) = -25
[126359] lseek(3, 0, 1) = 0
[126359] read(3, "#!/bin/sh\n## @file\n# Oracle Virt...", 80) = 80
[126359] lseek(3, 0, 0) = 0
[126359] prlimit64(0, 7, 0x0, 0x7FFFFFFFD820) = 0
[126359] fcntl(255, 1) = -9
[126359] dup2(3, 255) = 255
[126359] close(3) = 0
[126359] fcntl(255, 2) = 0
[126359] fcntl(255, 3) = 32768
[126359] fstat(255, 0x7FFFFFFFD7A0) = 0
[126359] lseek(255, 0, 1) = 0
[126359] read(255, "#!/bin/sh\n## @file\n# Oracle Virt...", 5875) = 5875
[126359] pipe2(140737488342856, 0) = 0
[126359] rt_sigprocmask(0, 0x7FFFFFFFCE40, 0x7FFFFFFFCDC0, 8) = 0
[126359] rt_sigprocmask(2, 0x7FFFFFFFCDC0, 0x0, 8) = 0
[126359] rt_sigprocmask(0, 0x0, 0x7FFFFFFFCC00, 8) = 0
[126359] rt_sigprocmask(0, 0x7FFFFFFFCD00, 0x7FFFFFFFCC80, 8) = 0
[126359] lseek(255, -4817, 1) = 1058
[126359] clone(0x1200011, 0) = 0x1ED98
[126359] rt_sigprocmask(2, 0x7FFFFFFFCC80, 0x0, 8) = 0
[126359] rt_sigaction(17, 0x7FFFFFFFCDB0, 0x7FFFFFFFCE50) = 0
[126359] close(4) = 0
[126359] rt_sigprocmask(0, 0x7FFFFFFFCFF0, 0x7FFFFFFFCF50, 8) = 0
[126359] read(3, "/usr/bin/VBox\n", 4096) = 14
[126359] read(3, "/usr/bin/VBox\n", 4096) = 0
[126359] close(3) = 0
[126359] wait4(4294967295, 140737488339600, 1, 0x0) = 0x1ED98
[126359] wait4(4294967295, 140737488339600, 1, 0x0) = -10
thread 'main' panicked at /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/syscalls-0.6.18/src/arch/x86_64.rs:5:1:
invalid syscall: 4294967295
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

dmesg:

[11684.912225] VirtualBoxVM[126359]: segfault at 0 ip 00007a928526839d sp 00007ffec04abde8 error 4 in libc.so.6[16f39d,7a928518a000+104000] likely on CPU 5 (core 5, socket 0)
[11684.912231] Code: 00 00 66 2e 0f 1f 84 00 00 00 00 00 90 f3 0f 1e fa 89 f8 48 89 fa c5 f9 ef c0 25 ff 0f 00 00 3d e0 0f 00 00 0f 87 33 01 00 00 <c5> fd 74 0f c5 fd d7 c1 85 c0 74 57 f3 0f bc c0 c5 f8 77 c3 66 66

UPDATE: No, lurk seems to crash anyway - even when calling programs that run successfully. Sorry, this way lurk is completely useless.
UPDATE2: When I skip the virtualbox script and call "/usr/lib/virtualbox/VirtualBoxVM --startvm=Win11" directly, I'm past the point where lurk crashed. But then lurk behaves the same as strace and produces the permission denied error.

Last edited by thorstenhirsch (2024-09-15 14:11:49)

Offline

#8 2024-09-15 17:28:01

xerxes_
Member
Registered: 2018-04-29
Posts: 803

Re: [SOLVED] segfault since upgrade to VirtualBox 7.1

https://wiki.archlinux.org/title/Virtualbox - check once more all in point 1 "Installation steps for Arch Linux hosts" (for example: there is a note that: "If the VirtualBox kernel modules were loaded in the kernel while you updated the modules, you need to reload them manually to use the new updated version. To do it, run vboxreload as root.")
https://wiki.archlinux.org/title/Virtua … menu_items

Or check/add setuid to files:

/usr/lib/virtualbox/VBoxHeadless
/usr/lib/virtualbox/VBoxNetAdpCtl
/usr/lib/virtualbox/VBoxNetDHCP
/usr/lib/virtualbox/VBoxNetNAT
/usr/lib/virtualbox/VBoxSDL
/usr/lib/virtualbox/VirtualBoxVM

to test if it changes something.
That said, I must say that I don't use virtualbox on linux.

Last edited by xerxes_ (2024-09-15 18:02:40)

Offline

#9 2024-09-15 18:20:22

thorstenhirsch
Member
Registered: 2005-08-03
Posts: 111

Re: [SOLVED] segfault since upgrade to VirtualBox 7.1

Well, I rebooted after the kernel update this morning. I also rebooted after switching to the non-dkms module. And I also run "sudo vboxreload" just to be sure. Nothing changed. And all the files you mentioned already have the suid flag.

Oh, and regarding you link to the wiki: none of my disks is of type QCOW/QCOW2/QED. Then I just tried all combinations of QT_QPA_PLATFORM=xcb vs. wayland and XDG_SESSION_TYPE=X11 vs. wayland. Again, none of these environment variables had any effect on the segfault.

UPDATE: Some more things I did, but none of them had any effect on the segfault:

VM settings:
- disabled all virtualization features
- forced "KMS" as virtualization engine (instead of "default")
- disabled UEFI settings

general:
- add "ibt=off" to kernel cmdline
- completely reinstalled virtualbox, including "rm -rf /usr/lib/virtualbox"
- UEFI updated (yes, I'm becoming desperate)

Last edited by thorstenhirsch (2024-09-15 19:12:47)

Offline

#10 2024-09-15 20:32:02

xerxes_
Member
Registered: 2018-04-29
Posts: 803

Re: [SOLVED] segfault since upgrade to VirtualBox 7.1

Changelog for VirtualBox 7.1:
https://www.virtualbox.org/wiki/Changelog :
"- Oracle VirtualBox Extension Pack: Update to the PUEL license, removing the evaluation option. For evaluation use of the Extension Pack, please download it from the Oracle Software Delivery Cloud" - might be related?

Offline

#11 2024-09-17 18:45:25

thorstenhirsch
Member
Registered: 2005-08-03
Posts: 111

Re: [SOLVED] segfault since upgrade to VirtualBox 7.1

What CPUs do you guys have? I ask because one of the last reads in strace before the segfault seems to be CPU-related:

openat(AT_FDCWD, "/sys/devices/system/cpu/possible", O_RDONLY|O_CLOEXEC) = 3

Mine is an AMD Ryzen 5800X3D.

Offline

#12 2024-09-17 19:36:47

thorstenhirsch
Member
Registered: 2005-08-03
Posts: 111

Re: [SOLVED] segfault since upgrade to VirtualBox 7.1

Another idea...

(gdb) run
Starting program: /usr/lib/virtualbox/VirtualBoxVM 
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/usr/lib/libthread_db.so.1".
[New Thread 0x7225c2e006c0 (LWP 5375)]
[New Thread 0x7225c24006c0 (LWP 5376)]
[Thread 0x7225c24006c0 (LWP 5376) exited]
[Thread 0x7225c2e006c0 (LWP 5375) exited]
error: XDG_RUNTIME_DIR is invalid or not set in the environment.
...

My user has it:

$ env | grep XDG_RUNTIME_DIR
XDG_RUNTIME_DIR=/run/user/501

But with sudo it's not there:

$ sudo env | grep XDG_RUNTIME_DIR
$

So is it possible that due to the suid flag on /usr/lib/virtualbox/VirtualBoxVM there is no XDG_RUNTIME_DIR in the process's environment, just like in sudo's environment? gdb confirms this suspicion:

(gdb) show environment
LC_ALL=en_US.UTF-8
XDG_CURRENT_DESKTOP=GNOME
LANG=en_US.UTF-8
DISPLAY=:0
COLORTERM=truecolor
LC_MEASUREMENT=de_DE.UTF-8
LC_NUMERIC=de_DE.UTF-8
LC_TIME=de_DE.UTF-8
PATH=/home/torti/.cargo/bin:/home/torti/go/bin:/home/torti/.nodenv/shims:/home/torti/.rbenv/shims:/home/torti/bin:/opt/google-cloud-cli/bin:/home/torti/bin:/opt/google-cloud-cli/bin:/home/torti/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl:/opt/rocm/bin:/usr/lib/rustup/bin:/home/torti/.krew/bin
LC_PAPER=de_DE.UTF-8
LC_MONETARY=de_DE.UTF-8
LC_TELEPHONE=de_DE.UTF-8
XAUTHORITY=/run/user/501/.mutter-Xwaylandauth.RV8AU2
TERM=xterm-256color
LC_ADDRESS=de_DE.UTF-8
LS_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=00:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.7z=01;31:*.ace=01;31:*.alz=01;31:*.apk=01;31:*.arc=01;31:*.arj=01;31:*.bz=01;31:*.bz2=01;31:*.cab=01;31:*.cpio=01;31:*.crate=01;31:*.deb=01;31:*.drpm=01;31:*.dwm=01;31:*.dz=01;31:*.ear=01;31:*.egg=01;31:*.esd=01;31:*.gz=01;31:*.jar=01;31:*.lha=01;31:*.lrz=01;31:*.lz=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.lzo=01;31:*.pyz=01;31:*.rar=01;31:*.rpm=01;31:*.rz=01;31:*.sar=01;31:*.swm=01;31:*.t7z=01;31:*.tar=01;31:*.taz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tgz=01;31:*.tlz=01;31:*.txz=01;31:*.tz=01;31:*.tzo=01;31:*.tzst=01;31:*.udeb=01;31:*.war=01;31:*.whl=01;31:*.wim=01;31:*.xz=01;31:*.z=01;31:*.zip=01;31:*.zoo=01;31:*.zst=01;31:*.avif=01;35:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:*~=00;90:*#=00;90:*.bak=00;90:*.crdownload=00;90:*.dpkg-dist=00;90:*.dpkg-new=00;90:*.dpkg-old=00;90:*.dpkg-tmp=00;90:*.old=00;90:*.orig=00;90:*.part=00;90:*.rej=00;90:*.rpmnew=00;90:*.rpmorig=00;90:*.rpmsave=00;90:*.swp=00;90:*.tmp=00;90:*.ucf-dist=00;90:*.ucf-new=00;90:*.ucf-old=00;90:
MAIL=/var/mail/root
LOGNAME=root
USER=root
HOME=/root
SHELL=/bin/bash
SUDO_COMMAND=/usr/bin/coredumpctl debug
SUDO_USER=torti
SUDO_UID=501
SUDO_GID=100
SUDO_HOME=/home/torti
LINES=52
COLUMNS=188

So, how can I provide XDG_CURRENT_DIR in an application with suid flag? Why is it not inherited from the parent? Where do the other env variables come from that are set in the suid application's process?

UPDATE: Guess this was the wrong path. Adding XDG_RUNTIME_DIR to /etc/security/pam_env.conf made the variable appear in the crashed process' environment and also the error messages are gone now. But VirtualBox still crashes with a segfault.

Last edited by thorstenhirsch (2024-09-17 19:53:49)

Offline

#13 2024-09-18 02:04:02

roviq
Member
Registered: 2022-10-17
Posts: 5

Re: [SOLVED] segfault since upgrade to VirtualBox 7.1

thorstenhirsch wrote:

What CPUs do you guys have?

Ryzen 5 1600X.

And I'm currently testing QEMU, interestingly I was able to convert the .vdi images to .qcow2 and those booted right away with a very simple command line.  They are very old VMs, one I think is even a Win7 to Win10 in-place upgrade. I'm also guessing it all worked right away because I didn't have to deal with UEFI settings.

Probably will end migrating my remaining VMs to QEMU, VirtualBox has caused me a lot of downtime through the years, mostly with their upgrades, QEMU seems more stable and widely used...  I will try installing Win11 this month or the next in QEMU.  This was the straw that broke the camel's back for me. Been using vbox for 10+ years I think.

Last edited by roviq (2024-09-18 02:06:32)

Offline

#14 2024-09-18 04:43:33

8472
Member
From: Slovakia
Registered: 2010-05-15
Posts: 88

Re: [SOLVED] segfault since upgrade to VirtualBox 7.1

thorstenhirsch wrote:

What CPUs do you guys have? I ask because one of the last reads in strace before the segfault seems to be CPU-related:

openat(AT_FDCWD, "/sys/devices/system/cpu/possible", O_RDONLY|O_CLOEXEC) = 3

Mine is an AMD Ryzen 5800X3D.

AMD Ryzen 7 5800X


Logic clearly dictates that the needs of the many outweigh the needs of the few.

Offline

#15 2024-09-18 20:52:31

xerxes_
Member
Registered: 2018-04-29
Posts: 803

Re: [SOLVED] segfault since upgrade to VirtualBox 7.1

There is other way to test it: remove setuid from virtualbox executable file and use set capabilities on it by 'setcap' command (setcap "capability_string" /path/to/bin).

In post #4 you have strace output where are printed capabilities which are checked and 4 of them have failed. Set CAP_MAC_OVERRIDE and CAP_CHECKPOINT_RESTORE on virtualbox. Other needed capabilities you may figure out from commands like this 'capsh --decode=0x30' or 'capsh --decode=30'.

If that didn't work you may reset capabilities by command: 'setcap -r /path/to/bin' and setuid virtualbox like before.

Last edited by xerxes_ (2024-09-18 20:56:39)

Offline

#16 2024-09-27 16:55:14

cgm999
Member
Registered: 2013-07-18
Posts: 21

Re: [SOLVED] segfault since upgrade to VirtualBox 7.1

Hi,

strace will "drop suid perms" on files is trying to trace, in other words it will run with normal user perms.. thats why you will not see the real problem .
So you need to run virtualbox in root and strace .. what I found was we need 2 symlinks

lrwxrwxrwx 1 root root       19 Sep 27 19:41 /usr/lib/virtualbox/libdl.so -> /usr/lib/libdl.so.2
lrwxrwxrwx 1 root root       24 Sep 27 19:41 /usr/lib/virtualbox/libpthread.so -> /usr/lib/libpthread.so.0

Offline

#17 2024-09-27 23:25:57

thorstenhirsch
Member
Registered: 2005-08-03
Posts: 111

Re: [SOLVED] segfault since upgrade to VirtualBox 7.1

Yes! Thank you so much, this solved the segfault for me.

Offline

#18 2024-09-28 13:52:49

thorstenhirsch
Member
Registered: 2005-08-03
Posts: 111

Re: [SOLVED] segfault since upgrade to VirtualBox 7.1

Can someone explain why libdl.so and libpthread.so caused the problem and how the symlinks in /usr/lib/virtualbox solved the issue?

If VirtualBox would come with its own (incompatible) libdl.so and libpthread.so I had understood the problem. But it doesn't.
If any of the executables or *.so files in /usr/lib/virtualbox were dynamically linked to libdl.so or libpthread.so I had understood the solution. But they aren't. I've checked them all with ldd.

Offline

#19 2024-09-28 17:56:12

8472
Member
From: Slovakia
Registered: 2010-05-15
Posts: 88

Re: [SOLVED] segfault since upgrade to VirtualBox 7.1

cgm999 wrote:

Hi,

strace will "drop suid perms" on files is trying to trace, in other words it will run with normal user perms.. thats why you will not see the real problem .
So you need to run virtualbox in root and strace .. what I found was we need 2 symlinks

lrwxrwxrwx 1 root root       19 Sep 27 19:41 /usr/lib/virtualbox/libdl.so -> /usr/lib/libdl.so.2
lrwxrwxrwx 1 root root       24 Sep 27 19:41 /usr/lib/virtualbox/libpthread.so -> /usr/lib/libpthread.so.0


Works for me as well, thx!


Logic clearly dictates that the needs of the many outweigh the needs of the few.

Offline

#20 2024-09-29 08:53:41

cgm999
Member
Registered: 2013-07-18
Posts: 21

Re: [SOLVED] segfault since upgrade to VirtualBox 7.1

Is a good question, I am not able to find libdl.so or libpthread.so in any of the files virtualbox have.. so whatever needs it is compressed the or encoded

thorstenhirsch wrote:

Can someone explain why libdl.so and libpthread.so caused the problem and how the symlinks in /usr/lib/virtualbox solved the issue?
...

Offline

#21 2024-09-29 09:50:36

Lone_Wolf
Administrator
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 13,008

Re: [SOLVED] segfault since upgrade to VirtualBox 7.1

thorstenhirsch wrote:

Can someone explain why libdl.so and libpthread.so caused the problem and how the symlinks in /usr/lib/virtualbox solved the issue?

A ddg search for virtualbox libdl.so pointed to  https://stackoverflow.com/questions/758 … 2#75855054
The explanation given does make sense to me.


Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.

clean chroot building not flexible enough ?
Try clean chroot manager by graysky

Offline

#22 2024-09-29 10:39:04

thorstenhirsch
Member
Registered: 2005-08-03
Posts: 111

Re: [SOLVED] segfault since upgrade to VirtualBox 7.1

Let's see what Oracle says. I just opened a ticket: https://www.virtualbox.org/ticket/22193

Offline

#23 2024-10-02 09:29:19

t_kasi
Member
Registered: 2024-10-02
Posts: 1

Re: [SOLVED] segfault since upgrade to VirtualBox 7.1

FYI: You are not alone. The exactly same thing also happens on Fedora LInux.

I run a Fedora Core 40 (x64_64 architecture) with a 6.10.11 Kernel.
Same error message.
Thanks @thorstenhirsch for creating the ticket with the Oracle dev team.


Thinking is difficult, that's why most people judge. (Carl Gustav Jung)

Offline

Board footer

Powered by FluxBB