id	summary	reporter	owner	description	type	status	priority	component	version	resolution	keywords	cc	guest	host
1840	VBoxSVC core dumps on post snv_94 opensolaris	jkeil		I'm using SXCE build 91, bfu'ed to post snv_94 opensolaris (2008-07-11).\r\n\r\nTrying to start virtualbox fails:\r\n\r\n[[BR]]    % virtualbox\r\n[[BR]]    ERROR: 0 bytes read from child process\r\n\r\nThe VBoxSVC process crashes with a SIGSEGV:\r\n\r\ndmesg:\r\n\r\nJul 14 00:18:01 max genunix: [ID 603404 kern.notice] NOTICE: core_log: VBoxSVC[869] core dumped: /cores/VBoxSVC-869\r\n\r\n\r\n\r\n{{{\r\n# pflags /cores/VBoxSVC-869\r\ncore '/cores/VBoxSVC-869' of 869:_/opt/VirtualBox//VBoxSVC --automate\r\n_data model = _ILP32  flags = ORPHAN|MSACCT|MSFORK\r\n /1:_flags = 0\r\n_sigmask = 0xffffbefc,0x0000ffff  cursig = SIGSEGV\r\n\r\n# pstack /cores/VBoxSVC-869\r\ncore '/cores/VBoxSVC-869' of 869:_/opt/VirtualBox//VBoxSVC --automate\r\n afc83d14 PR_EnterMonitor (0) + 23\r\n af41133a _PR_InitLinker (af57b000, 80418f8, af56493c, 0, 1, 0) + 3e\r\n af41a4e1 PR_Init  (0, 1, 0) + 195\r\n af56493c prldap_nspr_init (afffc7dc, af5a0a00, 9, 8041944, affd38fc, afffc178) + 74\r\n af5658e9 _init    (afffc178, af7e0948, afffc7dc, 804196c, affd671e, af156e5c) + 25\r\n affd38fc call_init (af1a0ae8, 1) + f8\r\n affd3e9f load_completion (af7e0948) + ef\r\n affd90f6 dlsym_intn (af7e0e48, afc9c94a, afb70018, 8041a24) + 19a\r\n affd9172 dlsym_check (af7e0e48, afc9c94a, afb70018, 8041a24) + 6e\r\n affd91ea dlsym    (af7e0e48, afc9c94a, af7e0948, afb9ee94, afbf16d4, afffc350) + 4e\r\n afc6d758 pr_FindSymbolInProg (afc9c94a, affc7ed4, afb70018, 2f08) + 38\r\n afc6d790 _PR_InitZones (afc84b79, afcb43e4, 8041aa8, afc7254b, 8041ab8, afb70018) + 21\r\n afc723b7 _PR_InitStuff (8041ab8, afb70018, 8041ab8, afc84b79, 8041ad8, afcb43e4) + 2d\r\n afc7254b _PR_ImplicitInitialization (8041ad8, afcb43e4, 8041ad8, afc50d32, afc50e22, afcf86c8) + b\r\n afc84b79 PR_GetCurrentThread (afc50e22, afcf86c8, 0, afcf86c8, 8041af8, afcb43e4) + 23\r\n afc50d32 _ZN9nsIThread10GetCurrentEPPS_ (afcf86c8, 0, 0, afc50dfe) + 1e\r\n afc50e22 _ZN9nsIThread13SetMainThreadEv (af722a00, 8041b20, af946f74, 3, 8041b2c, affd003d) + 30\r\n afc891a0 NS_InitXPCOM2 (8046cf0, 8278980, 82771a8, 0) + 30\r\n 0818c585 _ZN3com10InitializeEv (0, 0, 8273a18, 1) + 4c1\r\n 08179c8f main     (2, 8046e80, 8046e8c) + 20b\r\n 080b26e8 _start   (2, 8047020, 8047039, 0, 8047044, 8047064) + 80\r\n\r\n}}}\r\n\r\n\r\nIn mdb we see that libnspr4.so`_PR_InitLinker+0x39 is calling PR_EnterMonitor,\r\nwhich got resolved as "VBoxXPCOM.so`PR_EnterMonitor". Apparently there also\r\nis a "libnspr4.so`PR_EnterMonitor" symbol.  Most likely the expected behaviour\r\nis to call libnspr4.so`PR_EnterMonitor.\r\n\r\nAfter booting an unmodified snv_91, virtualbox runs just fine.  I also tried\r\nan opensolaris installation using the "matrix-unstable" kernel (based on snv_93),\r\nand virtualbox starts ok, too.  So it seems that some onnv-gate change between\r\nsnv_93 and snv_95 (2008-7-11) did break virtualbox.\r\n\r\n\r\non matrix-unstable, VBoxSVC has these shared library loaded\r\n(note: there is no libnspr4.so loaded):\r\n\r\n{{{\r\n# pldd core.941\r\ncore 'core.941' of 941:_/opt/VirtualBox//VBoxSVC --automate\r\n/lib/amd64/libadm.so.1\r\n/lib/amd64/libdevinfo.so.1\r\n/opt/VirtualBox/VBoxDDU.so\r\n/opt/VirtualBox/VBoxSettings.so\r\n/opt/VirtualBox/VBoxRT.so\r\n/lib/amd64/librt.so.1\r\n/opt/VirtualBox/VBoxXPCOM.so\r\n/usr/sfw/lib/amd64/libstdc++.so.6.0.3\r\n/lib/amd64/libm.so.2\r\n/usr/sfw/lib/amd64/libgcc_s.so.1\r\n/lib/amd64/libc.so.1\r\n/lib/amd64/libsocket.so.1\r\n/lib/amd64/libz.so.1\r\n/lib/amd64/libsendfile.so.1\r\n/lib/amd64/libnvpair.so.1\r\n/lib/amd64/libnsl.so.1\r\n/usr/lib/locale/de_DE.ISO8859-1/amd64/de_DE.ISO8859-1.so.3\r\n/lib/amd64/libsec.so.1\r\n/lib/amd64/libgen.so.1\r\n/lib/amd64/libmp.so.2\r\n/lib/amd64/libmd.so.1\r\n/lib/amd64/libscf.so.1\r\n/lib/amd64/libavl.so.1\r\n/lib/amd64/libuutil.so.1\r\n/opt/VirtualBox/components/VBoxXPCOMIPCC.so\r\n\r\n}}}\r\n\r\n\r\nsnv_95 has these (libnspr4.so is there, and defines lots of symbols that \r\nare already present in VBoxXPCOM.so):\r\n\r\n{{{\r\n#_pldd /cores/VBoxSVC-869_\r\ncore '/cores/VBoxSVC-869' of 869:_/opt/VirtualBox//VBoxSVC --automate\r\n/lib/libadm.so.1\r\n/lib/libdevinfo.so.1\r\n/opt/VirtualBox/VBoxDDU.so\r\n/opt/VirtualBox/VBoxSettings.so\r\n/opt/VirtualBox/VBoxRT.so\r\n/lib/librt.so.1\r\n/opt/VirtualBox/VBoxXPCOM.so\r\n/usr/sfw/lib/libstdc++.so.6.0.3\r\n/lib/libm.so.2\r\n/usr/sfw/lib/libgcc_s.so.1\r\n/lib/libc.so.1\r\n/lib/libsocket.so.1\r\n/lib/libz.so.1\r\n/lib/libsendfile.so.1\r\n/lib/libnvpair.so.1\r\n/lib/libnsl.so.1\r\n/usr/lib/locale/de_DE.ISO8859-1/de_DE.ISO8859-1.so.3\r\n/lib/libsec.so.1\r\n/lib/libgen.so.1\r\n/lib/libmp.so.2\r\n/lib/libmd.so.1\r\n/lib/libscf.so.1\r\n/lib/libavl.so.1\r\n/usr/lib/libidmap.so.1\r\n/lib/libuutil.so.1\r\n/usr/lib/libldap.so.5\r\n/lib/libresolv.so.2\r\n/usr/lib/libsldap.so.1\r\n/usr/lib/libsasl.so.1\r\n/usr/lib/mps/libnspr4.so_<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<\r\n/lib/libpthread.so.1\r\n/lib/libthread.so.1\r\n/lib/libdl.so.1\r\n/usr/lib/mps/libplc4.so\r\n/usr/lib/mps/libnss3.so\r\n/usr/lib/mps/libsoftokn3.so\r\n/usr/lib/mps/libplds4.so\r\n/lib/libbsm.so.1\r\n/usr/lib/mps/libssl3.so\r\n/lib/libsecdb.so.1\r\n/lib/libtsol.so.2\r\n\r\n}}}\r\n\r\n\r\nlibnspr4.so seems to be pulled by /usr/lib/libldap.so.5, and is a lazyloaded\r\ndependency.\r\n\r\n\r\n[[BR]]Workaround:\r\n[[BR]]===========\r\n\r\nStart VBoxSVC with environment variable LD_NODIRECT=1:\r\n\r\n{{{\r\n# cd /opt/VirtualBox\r\n\r\n# mv VBoxSVC VBoxSVC.real\r\n\r\n# cat > VBoxSVC\r\n#!/bin/sh\r\n\r\nLD_NODIRECT=1\r\nexport LD_NODIRECT \r\n\r\nexec /opt/VirtualBox/VBoxSVC.real "$@"\r\n\r\n# chmod +x VBoxSVC\r\n}}}\r\n	defect	closed	major	VM control	VirtualBox 1.6.2	fixed			other	Solaris
