VirtualBox

Opened 15 years ago

Closed 14 years ago

Last modified 14 years ago

#3075 closed defect (invalid)

VBox 2.1.0 on Solaris constantly opening iconv shared objects

Reported by: Paul Owned by:
Component: shared folders Version: VirtualBox 2.1.0
Keywords: performance Cc:
Guest type: Windows Host type: Solaris

Description

A VirtualBox Windows 2003 guest performing a Visual Studio build on a shared folder is taking many times longer than the same build on a "local" guest filesystem.

Truss'ing VBox while this is happening shows the VirtualBox process repeatedly opening shared objects related to iconv() (every 100 uSec or so!). At bottom of this report is output from "truss -D -t\!all -topen -p <vbox-pid>".

# truss -D -t\!all -topen -p 8225
...
/15:     0.0002 open("/usr/lib/iconv/amd64/646%UTF-8.so", O_RDONLY) = 47
/15:     0.0001 open("/usr/lib/iconv/amd64/UTF-8%646.so", O_RDONLY) = 47
/15:     0.0002 open("/usr/lib/iconv/amd64/646%UTF-8.so", O_RDONLY) = 47
/15:     0.0001 open("/usr/lib/iconv/amd64/UTF-8%646.so", O_RDONLY) = 47
/15:     0.0001 open("/usr/lib/iconv/amd64/646%UTF-8.so", O_RDONLY) = 47
/15:     0.0002 open("/usr/lib/iconv/amd64/UTF-8%646.so", O_RDONLY) = 47
/15:     0.0001 open("/usr/lib/iconv/amd64/646%UTF-8.so", O_RDONLY) = 47
/15:     0.0001 open("/usr/lib/iconv/amd64/UTF-8%646.so", O_RDONLY) = 47
/15:     0.0003 open("/usr/lib/iconv/amd64/646%UTF-8.so", O_RDONLY) = 47
/15:     0.0001 open("/usr/lib/iconv/amd64/UTF-8%646.so", O_RDONLY) = 47
/15:     0.0001 open("/usr/lib/iconv/amd64/646%UTF-8.so", O_RDONLY) = 47
/15:     0.0002 open("/usr/lib/iconv/amd64/UTF-8%646.so", O_RDONLY) = 47
/15:     0.0001 open("/usr/lib/iconv/amd64/646%UTF-8.so", O_RDONLY) = 47
/15:     0.0001 open("/usr/lib/iconv/amd64/UTF-8%646.so", O_RDONLY) = 47
/15:     0.0002 open("/usr/lib/iconv/amd64/646%UTF-8.so", O_RDONLY) = 47
/15:     0.0001 open("/usr/lib/iconv/amd64/UTF-8%646.so", O_RDONLY) = 47
/15:     0.0002 open("/usr/lib/iconv/amd64/646%UTF-8.so", O_RDONLY) = 47
/15:     0.0001 open("/usr/lib/iconv/amd64/UTF-8%646.so", O_RDONLY) = 47
/15:     0.0002 open("/usr/lib/iconv/amd64/646%UTF-8.so", O_RDONLY) = 47
/15:     0.0001 open("/usr/lib/iconv/amd64/UTF-8%646.so", O_RDONLY) = 47
/15:     0.0001 open("/usr/lib/iconv/amd64/UTF-8%646.so", O_RDONLY) = 46
/15:     0.0002 open("/usr/lib/iconv/amd64/UTF-8%646.so", O_RDONLY) = 46
/15:     0.0002 open("/usr/lib/iconv/amd64/646%UTF-8.so", O_RDONLY) = 46
/15:     0.0001 open("/usr/lib/iconv/amd64/UTF-8%646.so", O_RDONLY) = 46
/15:     0.0002 open("/usr/lib/iconv/amd64/646%UTF-8.so", O_RDONLY) = 47
/15:     0.0001 open("/usr/lib/iconv/amd64/UTF-8%646.so", O_RDONLY) = 47
/15:     0.0002 open("/usr/lib/iconv/amd64/646%UTF-8.so", O_RDONLY) = 47
/15:     0.0001 open("/usr/lib/iconv/amd64/UTF-8%646.so", O_RDONLY) = 47
/15:     0.0002 open("/usr/lib/iconv/amd64/646%UTF-8.so", O_RDONLY) = 47
/15:     0.0001 open("/usr/lib/iconv/amd64/UTF-8%646.so", O_RDONLY) = 47
/15:     0.0001 open("/usr/lib/iconv/amd64/UTF-8%646.so", O_RDONLY) = 46
/15:     0.0002 open("/usr/lib/iconv/amd64/UTF-8%646.so", O_RDONLY) = 46
/15:     0.0001 open("/usr/lib/iconv/amd64/646%UTF-8.so", O_RDONLY) = 46
/15:     0.0002 open("/usr/lib/iconv/amd64/UTF-8%646.so", O_RDONLY) = 46
/15:     0.0002 open("/usr/lib/iconv/amd64/646%UTF-8.so", O_RDONLY) = 47
/15:     0.0001 open("/usr/lib/iconv/amd64/UTF-8%646.so", O_RDONLY) = 47
/15:     0.0002 open("/usr/lib/iconv/amd64/646%UTF-8.so", O_RDONLY) = 47
/15:     0.0001 open("/usr/lib/iconv/amd64/UTF-8%646.so", O_RDONLY) = 47
/15:     0.0002 open("/usr/lib/iconv/amd64/646%UTF-8.so", O_RDONLY) = 47
/15:     0.0001 open("/usr/lib/iconv/amd64/UTF-8%646.so", O_RDONLY) = 47
/15:     0.0001 open("/usr/lib/iconv/amd64/UTF-8%646.so", O_RDONLY) = 46
/15:     0.0002 open("/usr/lib/iconv/amd64/UTF-8%646.so", O_RDONLY) = 46
/15:     0.0001 open("/usr/lib/iconv/amd64/646%UTF-8.so", O_RDONLY) = 46
/15:     0.0002 open("/usr/lib/iconv/amd64/UTF-8%646.so", O_RDONLY) = 46
/15:     0.0001 open("/usr/lib/iconv/amd64/646%UTF-8.so", O_RDONLY) = 47
/15:     0.0002 open("/usr/lib/iconv/amd64/UTF-8%646.so", O_RDONLY) = 47
/15:     0.0001 open("/usr/lib/iconv/amd64/646%UTF-8.so", O_RDONLY) = 47
/15:     0.0002 open("/usr/lib/iconv/amd64/UTF-8%646.so", O_RDONLY) = 47
/15:     0.0002 open("/usr/lib/iconv/amd64/646%UTF-8.so", O_RDONLY) = 47
/15:     0.0001 open("/usr/lib/iconv/amd64/UTF-8%646.so", O_RDONLY) = 47
/15:     0.0001 open("/usr/lib/iconv/amd64/646%UTF-8.so", O_RDONLY) = 47
/15:     0.0002 open("/usr/lib/iconv/amd64/UTF-8%646.so", O_RDONLY) = 47
/15:     0.0001 open("/usr/lib/iconv/amd64/646%UTF-8.so", O_RDONLY) = 47
/15:     0.0002 open("/usr/lib/iconv/amd64/UTF-8%646.so", O_RDONLY) = 47
/15:     0.0001 open("/usr/lib/iconv/amd64/646%UTF-8.so", O_RDONLY) = 47
/15:     0.0002 open("/usr/lib/iconv/amd64/UTF-8%646.so", O_RDONLY) = 47
/15:     0.0001 open("/usr/lib/iconv/amd64/646%UTF-8.so", O_RDONLY) = 47
/15:     0.0002 open("/usr/lib/iconv/amd64/UTF-8%646.so", O_RDONLY) = 47
/15:     0.0001 open("/usr/lib/iconv/amd64/646%UTF-8.so", O_RDONLY) = 47
/15:     0.0001 open("/usr/lib/iconv/amd64/UTF-8%646.so", O_RDONLY) = 47
/15:     0.0002 open("/usr/lib/iconv/amd64/646%UTF-8.so", O_RDONLY) = 47
/15:     0.0001 open("/usr/lib/iconv/amd64/UTF-8%646.so", O_RDONLY) = 47
/15:     0.0002 open("/usr/lib/iconv/amd64/646%UTF-8.so", O_RDONLY) = 47
/15:     0.0001 open("/usr/lib/iconv/amd64/UTF-8%646.so", O_RDONLY) = 47
/15:     0.0002 open("/usr/lib/iconv/amd64/646%UTF-8.so", O_RDONLY) = 47
/15:     0.0001 open("/usr/lib/iconv/amd64/UTF-8%646.so", O_RDONLY) = 47
/15:     0.0002 open("/usr/lib/iconv/amd64/646%UTF-8.so", O_RDONLY) = 47
/15:     0.0001 open("/usr/lib/iconv/amd64/UTF-8%646.so", O_RDONLY) = 47
/14:     0.0100     Received signal #14, SIGALRM, in sigtimedwait() [caught]
/14:          siginfo: SIG#0
/15:     0.0002 open("/usr/lib/iconv/amd64/646%UTF-8.so", O_RDONLY) = 47
/15:     0.0001 open("/usr/lib/iconv/amd64/UTF-8%646.so", O_RDONLY) = 47
/15:     0.0002 open("/usr/lib/iconv/amd64/646%UTF-8.so", O_RDONLY) = 47
/15:     0.0001 open("/usr/lib/iconv/amd64/UTF-8%646.so", O_RDONLY) = 47
/15:     0.0002 open("/usr/lib/iconv/amd64/UTF-8%646.so", O_RDONLY) = 46
/15:     0.0002 open("/usr/lib/iconv/amd64/UTF-8%646.so", O_RDONLY) = 46
/15:     0.0001 open("/usr/lib/iconv/amd64/646%UTF-8.so", O_RDONLY) = 46
/15:     0.0002 open("/usr/lib/iconv/amd64/UTF-8%646.so", O_RDONLY) = 46
/15:     0.0001 open("/usr/lib/iconv/amd64/646%UTF-8.so", O_RDONLY) = 47
/15:     0.0002 open("/usr/lib/iconv/amd64/UTF-8%646.so", O_RDONLY) = 47
/15:     0.0001 open("/usr/lib/iconv/amd64/646%UTF-8.so", O_RDONLY) = 47
/15:     0.0001 open("/usr/lib/iconv/amd64/UTF-8%646.so", O_RDONLY) = 47
/15:     0.0002 open("/usr/lib/iconv/amd64/646%UTF-8.so", O_RDONLY) = 47
/15:     0.0002 open("/usr/lib/iconv/amd64/UTF-8%646.so", O_RDONLY) = 47
/15:     0.0001 open("/usr/lib/iconv/amd64/646%UTF-8.so", O_RDONLY) = 47
/15:     0.0002 open("/usr/lib/iconv/amd64/UTF-8%646.so", O_RDONLY) = 47
/15:     0.0001 open("/usr/lib/iconv/amd64/646%UTF-8.so", O_RDONLY) = 47
/15:     0.0001 open("/usr/lib/iconv/amd64/UTF-8%646.so", O_RDONLY) = 47
/15:     0.0002 open("/usr/lib/iconv/amd64/646%UTF-8.so", O_RDONLY) = 47
/15:     0.0001 open("/usr/lib/iconv/amd64/UTF-8%646.so", O_RDONLY) = 47
/15:     0.0002 open("/usr/lib/iconv/amd64/646%UTF-8.so", O_RDONLY) = 47
/15:     0.0001 open("/usr/lib/iconv/amd64/UTF-8%646.so", O_RDONLY) = 47
/15:     0.0002 open("/usr/lib/iconv/amd64/646%UTF-8.so", O_RDONLY) = 47
/15:     0.0001 open("/usr/lib/iconv/amd64/UTF-8%646.so", O_RDONLY) = 47
/15:     0.0001 open("/usr/lib/iconv/amd64/646%UTF-8.so", O_RDONLY) = 47
/15:     0.0002 open("/usr/lib/iconv/amd64/UTF-8%646.so", O_RDONLY) = 47
/15:     0.0002 open("/usr/lib/iconv/amd64/646%UTF-8.so", O_RDONLY) = 47
/15:     0.0001 open("/usr/lib/iconv/amd64/UTF-8%646.so", O_RDONLY) = 47

# pstack 8225/15
8225:   /opt/VirtualBox/VBoxHeadless --startvm Win2k3
-----------------  lwp# 15  --------------------------------
 fffffd7fff11bdea _close () + a
 fffffd7ffeebe4c7 RTDirClose () + 37
 fffffd7ffd215736 _Z17vbsfBuildFullPathP15_SHFLCLIENTDATAjP11_SHFLSTRINGjPPcPjb () + 536
 fffffd7ffd215917 _Z10vbsfCreateP15_SHFLCLIENTDATAjP11_SHFLSTRINGjP16_SHFLCREATEPARMS () + 57
 fffffd7ffd214907 _Z7svcCallPvP26VBOXHGCMCALLHANDLE_TYPEDEFjS_jjP15VBOXHGCMSVCPARM () + 8f7
 fffffd7ffe9fc7a4 _Z17hgcmServiceThreadjPv () + 2d4
 fffffd7ffe9fb319 ???????? ()
 fffffd7ffeea016c rtThreadMain () + 2c
 fffffd7ffeec2c2b ???????? ()
 fffffd7fff116ddb _thr_setup () + 5b
 fffffd7fff117010 _lwp_start ()
pstack: warning: librtld_db failed to initialize; symbols from shared libraries will not be available
#

Change History (2)

comment:1 by Ramshankar Venkataraman, 14 years ago

Resolution: invalid
Status: newclosed

This is normal for converting filenames from one codeset to another.

comment:2 by Frank Mehnert, 14 years ago

Actually this will be fixed in the upcoming release 3.2.0.

Note: See TracTickets for help on using tickets.

© 2023 Oracle
ContactPrivacy policyTerms of Use