Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Display memory is set very low by default #196

Closed
jpstacey opened this issue Jan 19, 2014 · 3 comments
Closed

Display memory is set very low by default #196

jpstacey opened this issue Jan 19, 2014 · 3 comments

Comments

@jpstacey
Copy link

Thanks for all the hard work that's gone into this script. So far it's working pretty well for me apart from this repeating problem. To clarify, I'm running ievm.sh with an edit at the very end, changing "6 7 8 9 10 11" to 6, 7 etc. so I can test one machine at a time (and not annoy my ISP with lots of downloading all at once!)

However, so far 6 and 7 have had the same problem. Both, when started in VirtualBox:

  1. default to full-screen and then
  2. cause VirtualBox to hang

With IE6, VBoxHeadless was also hanging, meaning that ievms.sh couldn't properly terminate. And a couple of times this also caused my whole (Ubuntu 12.04) laptop to hang, so that I couldn't ctrl-alt-f1 to restart my lightdm session, but had to do a hard reset.

The problem seems to be caused by the following. When each machine is installed, its display memory is automatically set to 16MB. I'm able to fix this manually by changing the preferences for each machine in VirtualBox post-hoc, but I wondered if either:

  • I could configure VirtualBox in advance, for each new machine to have more display memory
  • or there was a way for ievms.sh to ensure that the display memory was something more sensible (64MB?) during the install phase.

Any help much appreciated, although it might be tricky for me to repeat the issue once I've got all my machines installed....

@jpstacey
Copy link
Author

For reference, this has just happened with IE8 too; it copies the IE6 XP box, then (I'm surmising) the the display hangs internally within VBoxHeadless and ievms.sh terminates with the following:

...
Waiting for IE8 - WinXP to be available for guestcontrol...
Waiting for IE8 - WinXP to be available for guestcontrol...
Waiting for IE8 - WinXP to be available for guestcontrol...
Setting IEUser password
Setting auto logon password
VBoxManage: error: Session is not in started state
VBoxManage: error: Details: code NS_ERROR_UNEXPECTED (0x8000ffff), component GuestSession, interface IGuestSession, callee nsISupports
VBoxManage: error: Context: "ProcessCreate(Bstr(strCmd).raw(), ComSafeArrayAsInParam(aArgs), ComSafeArrayAsInParam(aEnv), ComSafeArrayAsInParam(aCreateFlags), ctrlExecGetRemainingTime(u64StartMS, cMsTimeout), pProcess.asOutParam())" at line 1327 of file VBoxManageGuestCtrl.cpp
➜  ~

This is a bit more of a problem, because it doesn't get as far as installing IE8 on the XP machine, nor does it configure the auto-login defaults. Attempts to re-run ievms.sh yield a rapid "Done!" but no more action is taken.

@jpstacey
Copy link
Author

More digging led me to the --vram parameter, so I've successfully installed the IE8 machine using the following hack:

        ...
        VBoxManage import "${ova}" --vsys 0 --vmname "${vm}" --unit "${unit}" --disk "${disk_path}"

        # Hack begins here
        log "Ensuring video memory (vram) at minimum of 64MB"
        local current_vram=$(VBoxManage showvminfo "IE8 - WinXP" --machinereadable | grep ^vram= | sed -e 's/vram=//')
        if [ "$current_vram" -lt 64 ]
        then
            VBoxManage modifyvm "${vm}" --vram 64
        fi
        ...

If I have time, I'll do a fork and pull request with this fix in it.

@jpstacey
Copy link
Author

Pull request opened: #198

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant