How To: Disable IO APIC AFTER Windows Guest Installation

Discussions about using Windows guests in VirtualBox.
sleewok
Posts: 12
Joined: 14. Aug 2009, 20:22
Primary OS: MS Windows XP
VBox Version: OSE other
Guest OSses: Windows 7, Ubuntu Server

How To: Disable IO APIC AFTER Windows Guest Installation

Post by sleewok »

This may already be posted somewhere, but I haven't seen it. I posted this in another thread, but figured it would be good to have it here as well.

After installing Windows 7 I noticed that IO APIC was enabled. This is known to cause slowdown etc. I believe that it has been causing problems with my system (slow mouse response, window interaction, etc).

I was able to force it to be disabled on my guest and the system seems to be much more responsive at this point.

How to force IO APIC to disable after a Windows Install:
  • Boot the Guest OS
  • Go to Device Manager, and click on "Computers"~>
  • Select the Properties of ACPI Uniprocessor PC ~>
  • Click on the Driver tab, select Update Driver, ~>
  • Click on the "Install from list or specific location"~>
  • Click "don't search I will choose what driver to install" ~>
  • In the window find and click on "Advanced Power and Configuration Interface (ACPI) PC" then click next ~>
  • Click "finish" after Windows loads the new drivers. You may need your CD.(I didn't)~>
  • Now click Close to exit those property pages, Windows will tell you to Reboot. DO NOT REBOOT! SHUTDOWN THE GUEST

Once the guest is shutdown you need to change the settings of the VM. Changing the IO APIC Setting within VirtualBox will not work. It keeps re-enabling the setting.

  • Close VirtualBox and open your guest machine's XML configuration file in a text editor.
  • Find the setting <IOAPIC enabled="true"/>
  • Change value from "true" to "false"
  • Save the file and exit the text editor
  • Right-click on the XML file and open the properties.
  • SET THE XML FILE TO READ ONLY (this will not allow Virtualbox to re-enable IO APIC)
  • Start VirtualBox and Boot the guest OS
  • After windows boots it should install some additional drivers and ask you to reboot again.
IO APIC should now be disabled

If you want to change any settings within VirtualBox you'll need to remove the read-only attribute from the Machine XML file.

Hopefully some will find this useful.
causeitsme
Posts: 8
Joined: 5. Apr 2009, 16:42
Primary OS: Ubuntu other
VBox Version: PUEL
Guest OSses: XP SP3

Re: How To: Disable IO APIC AFTER Windows Guest Installation

Post by causeitsme »

Thank you a million times. The lag, skipping cursor and unresponsive keyboard were driving me nuts. You are a genius! :D

**edit** This worked with Virtualbox 3.1.6 under Ubuntu 9.10 with XP SP3
mpack
Site Moderator
Posts: 39156
Joined: 4. Sep 2008, 17:09
Primary OS: MS Windows 10
VBox Version: PUEL
Guest OSses: Mostly XP

Re: How To: Disable IO APIC AFTER Windows Guest Installation

Post by mpack »

For XP guests another possibility is simply to run the HALu utility inside the guest. That way you don't need the setup CD. I don't know if this utility will work for Vista and Win7 (probably not).

Incidentally, last time I tried this I had no problem resetting the IO APIC option in VirtualBox, though that was one or two VBox updates back.

I don't like your advice about setting the xml file to read-only. You seem to assume that if VirtualBox can't update the file then it can't update the (in memory) option either, which is an odd assumption.
dblagbro
Posts: 3
Joined: 22. Apr 2010, 16:30
Primary OS: Ubuntu other
VBox Version: PUEL
Guest OSses: win - xp, vista, & 7

Re: How To: Disable IO APIC AFTER Windows Guest Installation

Post by dblagbro »

I have unsuccessfully tried this method, I have tried the HALu.exe / HALupdater program, and I tried the method found at the below link... all without success.

Both this method and another one found here: http://www.ngohq.com/processors/11891-h ... ndows.html have broken my guest OS and I end up having to restore a previous snapshot. What happens is that once the change is made in Virtual Box's settings and/or XML file, the machine boots until it gets to the "Loading personal settings" after Window's starts then it crashes - Not BSOD, just reboots and continues in an endless reboot cycle, getting to "loading personal settings" then rebooting... etc etc etc etc...

I'm using WinXP+SP3, host is Ubuntu9.04, Vbox is 3.1.6.

Any suggestions?
Last edited by dblagbro on 22. Apr 2010, 17:23, edited 1 time in total.
fixedwheel
Volunteer
Posts: 1699
Joined: 13. Sep 2008, 02:18

Re: How To: Disable IO APIC AFTER Windows Guest Installation

Post by fixedwheel »

dblagbro wrote:I have tried looking for the HALu.exe / HALupdater program and NOT found it anywhere... even P2P networks have not turned up this application and I tried the method found at the below link... all without success.
just click and follow the HALu link mpack gave?!
mpack wrote:For XP guests another possibility is simply to run the HALu utility inside the guest.
and in this thread...
MarkCranness wrote: Anybody else using IE 8 care to download the file from here: http://www.hardware.info/downloads/HALu-0.2.0.zip, and tell the MD5? (or filesize or CRC or whatever you can tell)
dblagbro
Posts: 3
Joined: 22. Apr 2010, 16:30
Primary OS: Ubuntu other
VBox Version: PUEL
Guest OSses: win - xp, vista, & 7

Re: How To: Disable IO APIC AFTER Windows Guest Installation

Post by dblagbro »

thanks fixedwheel... i actually did realize i could click on the HALu link to find another post with it there... unfortunately, same result... endless crash & reboots.
mpack
Site Moderator
Posts: 39156
Joined: 4. Sep 2008, 17:09
Primary OS: MS Windows 10
VBox Version: PUEL
Guest OSses: Mostly XP

Re: How To: Disable IO APIC AFTER Windows Guest Installation

Post by mpack »

The HALu link I posted should be preferred, as it leads to instructions translated into English by a forum user (from the original Dutch).
larsen
Posts: 32
Joined: 14. Oct 2010, 13:56
Primary OS: Debian other
VBox Version: OSE Debian
Guest OSses: Win, Debian

Re: How To: Disable IO APIC AFTER Windows Guest Installation

Post by larsen »

sleewok wrote:[*]In the window find and click on "Advanced Power and Configuration Interface (ACPI) PC" then click next ~>
I had the following entries. Using the last one where the name is not quite the same worked for me.
  • ACPI-Multiprocessor-PC
  • ACPI-Uniprocessor-PC
  • ACPI-PC (Advanced Configuration and Power Interface)
sleewok wrote:Once the guest is shutdown you need to change the settings of the VM. Changing the IO APIC Setting within VirtualBox will not work. It keeps re-enabling the setting.
This wasn´t necessary.

Solution confirmed to work for Win XP Host with Windows SBS 2000 Guest. Thx a lot =)
samalex
Posts: 6
Joined: 4. Nov 2010, 16:22
Primary OS: MS Windows 7
VBox Version: OSE other
Guest OSses: windows xp

Re: How To: Disable IO APIC AFTER Windows Guest Installation

Post by samalex »

Hey Guys --

I used Disk2VHD to create an image of my Win XP drive after moving to Win 7, and it boots into the latest version of VirtualBox though it ran slow. Problem though is I'm trying to disable APIC so it runs faster since it's virtually unusable the way it is.

I first tried changing the driver to "Advanced Power and Configuration Interface (ACPI) PC" but this just caused the system to constantly reboot as others have reported. Luckily I had saved a Snapshot before doing this so I went back and ran the HALu.zip file (which I finally found via Google). I selected ACPI PC, shut down, unchecked Use IO ACPI in VBox, and rebooted to get a black screen. So I re-enabled Use IO ACPI in VBox and Win XP booted fine. When it was up (still running slow) I checked Device Manager and it was still sitting at 'ACPI Multiprocessor PC' in Device Manager so I don't guess HALu did anything.

Any suggestions ?

Update: I downloaded DevCon from Microsoft, reversed the image to a prior snapshot (before running HALu), then ran the code below which I found on this site:
How to go back to Single Core (should it be needed)
if you accidentally burn your processor and have to go back to a single core backup, you input this into the devcon:

devcon sethwid @ROOT\ACPI_HAL\0000 := +acpiapic_up !acpiapic_mp
devcon update c:\windows\inf\hal.inf acpiapic_up.

and always reboot twice.
After making the changes, which showed to have been saved successfully through DevCon, I rebooted twice but on the second root and still having 'IO APIC' enabled in VirtualBox Win XP booted instead of just giving me the blank screen which has been the tail-tale sign APIC wasn't disabled. So when Win XP came back up I logged in and checked device manager, but it's now showing 'ACPI Uniprocessor PC' instead of 'ACPI PC'. I did some research and found this command might not have been correct, so I created the following and ran it hoping that 'acpipic_up' is what I need:

devcon sethwid @ROOT\ACPI_HAL\0000 := +acpipic_up !acpiapic_up
devcon update c:\windows\inf\hal.inf acpipic_up

After this I rebooted once and it got to the Ctrl-Alt-Del screen then BSOD and reboot automatically. I then disabled 'IO APIC' in VirtualBox and the same thing cycling through a brief BSOD then reboot. I booted into Safe Mode and verified 'Advanced Configuration and Power Interface (ACPI) PC' was indeed set in Device Manager plus the system ran VERY fast which was nice, but now I'm at a loss on how to recover the instance of Windows in normal mode.

The Event Log just shows:
The computer rebooted from a bugcheck. The bugcheck was 0x000000a0 (0x00000101,0x00000007,0xf78e276c,0x00000000). A dump was saved in c:\windows\minidump\Mini110410-02.dmp.

This doesn't help me much so I guess I'm destined to rebuild my system. I'll try to do a repair, but i did this once before with no luck.

So at this point any suggestions??? Thanks,

Sam
Last edited by samalex on 4. Nov 2010, 18:07, edited 3 times in total.
finalreality
Posts: 1
Joined: 4. Nov 2010, 17:49
Primary OS: MS Windows 7
VBox Version: PUEL
Guest OSses: XP

Re: How To: Disable IO APIC AFTER Windows Guest Installation

Post by finalreality »

Same problem here. My image is next to unusable (just like samalex said) and I can't figure out how to disable APIC for good :(
samalex
Posts: 6
Joined: 4. Nov 2010, 16:22
Primary OS: MS Windows 7
VBox Version: OSE other
Guest OSses: windows xp

Re: How To: Disable IO APIC AFTER Windows Guest Installation

Post by samalex »

finalreality wrote:Same problem here. My image is next to unusable (just like samalex said) and I can't figure out how to disable APIC for good :(
I'm running the repair now, but I found this article that might be a fix: http://forums.virtualbox.org/viewtopic. ... 07#p140358

Code: Select all

I confirm: You have to discard the two files "intelppm.sys" and "processr.sys" to solve the problem. That works for me. Thanks.
I don't want to kill the Repair just yet, but if that doesn't fix the problem I'll try deleting "intelppm.sys" and "processr.sys" and see if that works. If not I might roll back the system once more to a prior snapshot, run my devcon statements, then delete the files.

Just stinks because the time I've put into trying to fix this I probably could've reinstalled most of my apps already into a clean instance of Windows XP. I'll post later if either of these worked.

Update: I found another post where deleting intelppm.sys did the trick. finalreality, try this and see if it fixes your problem, and when my system is back up after the repair I'll do the same.

Sam
mpack
Site Moderator
Posts: 39156
Joined: 4. Sep 2008, 17:09
Primary OS: MS Windows 10
VBox Version: PUEL
Guest OSses: Mostly XP

Re: How To: Disable IO APIC AFTER Windows Guest Installation

Post by mpack »

I'm not sure why you think those other ("intelppm") threads are relevant to the discussion here. The HALu tool should work just fine.
samalex
Posts: 6
Joined: 4. Nov 2010, 16:22
Primary OS: MS Windows 7
VBox Version: OSE other
Guest OSses: windows xp

Re: How To: Disable IO APIC AFTER Windows Guest Installation

Post by samalex »

mpack wrote:I'm not sure why you think those other ("intelppm") threads are relevant to the discussion here. The HALu tool should work just fine.
mpack, HALu is just a wrapper for devcon.exe, and whether I used HALu or update the HAL directly with devcon.exe Windows XP just cycles through the Ctrl-Alt-Del screen then reboots which was the symptom removing these two files seemed to fix for a few people. Updating HAL isn't the problem, but rather something else in Windows isn't cooperating since Device Manager shows HAL is working plus rebooting without 'IO APIC' is bringing up the system instead of just a blank screen.

Before running HALu I disabled reboot on error and attached is the BSOD I'm getting which refers to 'intelppm.sys'. This seems to be the same thing that's documented here - http://www.virtualbox.org/ticket/420 - and in the posts I linked to where deleting this file seemed to help.

What I've done now is use xok's suggestion below is this seemed to work. My system is no longer rebooting.
2009-09-09 02:48:05 changed by xok ¶
(Sorry for re-post, but it is for better readability)
This problem happened to me.
The fastest fix is to boot in Safe Mode + Networking (F8 at startup)
- Go to %Systemroot%\Inf\ and delete all OEM#.inf
- Search for intelppm.sys in the c:\windows\ (search for hidden directories and system files) - Delete the 3 results of intelppm.sys
- Reboot the Guest normally
That's it :)
I'm about to bang on it abit and install the VirtualBox Guest tools/drivers and see how table it is. If it's solid I'll put it on the domain and hopefully be set.

Take care --

Sam
Attachments
error.jpg
error.jpg (125.48 KiB) Viewed 53808 times
mpack
Site Moderator
Posts: 39156
Joined: 4. Sep 2008, 17:09
Primary OS: MS Windows 10
VBox Version: PUEL
Guest OSses: Mostly XP

Re: How To: Disable IO APIC AFTER Windows Guest Installation

Post by mpack »

BSODs due to intelppm.sys are usually (solely, AFAIK) due to a change of CPU, for example when you move a VM between hosts - and if you did that then I missed where you mentioned it (though perhaps it might be implied by your use of Disk2VHD to P2V an existing Windows image). In any case it would be an unrelated problem, not part of the OPs thread - discussion of it here can only lead to confusion.
samalex
Posts: 6
Joined: 4. Nov 2010, 16:22
Primary OS: MS Windows 7
VBox Version: OSE other
Guest OSses: windows xp

Re: How To: Disable IO APIC AFTER Windows Guest Installation

Post by samalex »

mpack wrote:BSODs due to intelppm.sys are usually (solely, AFAIK) due to a change of CPU, for example when you move a VM between hosts - and if you did that then I missed where you mentioned it (though perhaps it might be implied by your use of Disk2VHD to P2V an existing Windows image). In any case it would be an unrelated problem, not part of the OPs thread - discussion of it here can only lead to confusion.
Why is this unrelated? My goal was to do exactly what the OP was demonstrating, but I ran into snags along the way and posted the solution that worked for me. Me and the OP had the same starting and ending put, but my post had a little different way of getting there due to problems me and others ran into, just as your suggestion of using HALu is another option. The goal here is to disable IO APIC after Windows was installed as a Guest OS, and whether you use the method of the OP or the method in my post, depending on situation either should work.

The BSOD I posted was a tell tale sign that another step needed to be made to accomplish the end goal, so IMO it's very much relevant.

Sam
Locked