VirtualBox

Opened 17 years ago

Closed 11 years ago

#370 closed defect (fixed)

VIA CPUs and newer distros

Reported by: Mito Owned by:
Component: VMM Version: VirtualBox 1.3.8
Keywords: via c7 boot install Cc: mike@…
Guest type: other Host type: other

Description (last modified by Frank Mehnert)

I almost posted this as a reply to the bug found here: http://www.virtualbox.org/ticket/14

But then I decided that I would create a new bug report since there are multiple things that could be causing my problem.

I have tried to install several different guest machines on a machine that I have built to host my VM's. The only successful install sofar has been using CentOS 4.4, the others all have the same problem.

To start off, I will point out that I am _not_ using an Intel or AMD processor. This system is using a Via C7 1.5GHz CPU, and that could be the cause of my problems, I'm not sure. This machine is running Debian etch, using the .deb provided on the website for 1.3.8.

When I try to install Ubuntu 7.04 Server or Alternate Desktop CD's (all CD's booting directly from ISO, and verified as complete ISO's via md5's) as soon as I choose the install option from the menu it goes to a blank screen with a solid cursor in the top-left corner of the screen, and just sits there (it doesn't matter what install option I used, they all did the same. Even the boot for recovery stop mid-boot, however it did stop at a different place). I then tried to install Ubuntu 7.04 Server into a VM using my Windows box (Pentium 4 system) and it installed properly. After installed however, when booted it goes directly to a system panic. I don't have the log files for that, but I can recreate it if you want/need/would like.

I then installed Ubuntu 7.04 Desktop via the Alternate CD on my windows box, installed it as a command-line system, and the install completed perfectly, and it boots without a problem. I then transfered the .vdi to my Debian box to host it there. The VM boots to the boot menu, and then again hangs at the "Starting up..." screen. I then told it to boot into recovery mode, and it boots up past the "Starting up..." but stops later on after a bit of screen scrolling, here are the last few lines:

NET: Registered protocol family 8 NET: Registered protocol family 20 PCI: Ignore bogus resource 6 [0:0] of 0000:00:02.2 NET: Registered protocol family 2

I've tried discussing this in the forums in this thread: http://forums.virtualbox.org/viewtopic.php?p=682#682 and it appears that other people are having this same problem. I'm not sure if they are using a Via as their processor though, or what they are using as their host OS. Something is definitely messed up though, because both my windows box and linux box are using VB 1.3.8 and the same .vdi file, one boots and the other doesn't.

Attached is the log for the most recent boot, which is when it stops when trying to boot from the fully installed vdi file (the one that was installed using the Windows box) booting to the recovery mode.

Do note that I have also tried installing CentOS 5 and ran into it locking up during the bootup. The last line on the screen then was a "NET: protocol something something something" too. I don't remember the details for that though, as it was over a week ago and I decided to just use a CentOS4.4 install instead.

Attachments (2)

VBox.log (27.6 KB ) - added by Mito 17 years ago.
VBox.2.log (36.0 KB ) - added by kos_set 16 years ago.

Download all attachments as: .zip

Change History (20)

by Mito, 17 years ago

Attachment: VBox.log added

comment:1 by Michael Thayer, 17 years ago

VirtualBox is currently known to have problems with Via CPUs, so this is probably the reason for the problems you are having.

comment:2 by Mito, 17 years ago

I found the problem to be ACPI related.

If I pass the kernel the options:

noacpi noapic nolapic

during boot, my Ubuntu 7.04 Desktop install (command line only) boots perfectly (this is the VM that I installed using my windows box and transfered it to my Debian Etch server to host).

I will continue to try these with my other problematic distros as well. Note though that I didn't have to change anything hardware. All I had to do was pass those options to the kernel during boot and it worked properly.

comment:3 by Technologov, 17 years ago

Please change topic from "newer distros" to "VIA CPU".

in reply to:  3 comment:4 by Mito, 17 years ago

Replying to Technologov:

Please change topic from "newer distros" to "VIA CPU".

On the contrary, I think a better change would be:

"VIA CPU: Problems with Newer Distros"

This is because my VM install of CentOS 4.4, and a CentOS 4 offshoot works perfectly without any modifications.

(well the offshoot does tend to lockup my host server sometimes, so I've stopped using it for now...)

comment:5 by Frank Mehnert, 17 years ago

Summary: Newer Distros wont bootVIA CPUs and newer distros

Mito, could you try again with VirtualBox 1.4.0?

comment:6 by Mito, 17 years ago

Sorry for the delay, but I just tested an install with the Ubuntu Fiesty 7.04 Alternate CD, and I am getting the same results. As soon as the installation method is chosen, it locks up after loading the kernel, before the "Starting up..." is even displayed, it just has a non-blinking cursor in the top-left corner.

This is on a Debian host that had VB upgraded via apt from 1.3.8 to 1.4.0.

comment:7 by Frank Mehnert, 17 years ago

Please could you try again but remove any kernel parameters, in particular any vga= and quiet= parameters (edit the GRUB command line with 'e'). Which are the last three messages of your guest kernel?

comment:8 by Technologov, 16 years ago

This bug might be related to bug #774.

-Technologov

comment:9 by Frank Mehnert, 16 years ago

Component: otherVMM

comment:10 by kos_set, 16 years ago

I am not able to run XP guest on VIA C7 platform? I use Xubuntu 8.04 as host.

I am even not able to run XP Setup, because it says that CPUID and CMPXCHG8B instructions are not able.

I attached log file. Hope this helps.

by kos_set, 16 years ago

Attachment: VBox.2.log added

comment:11 by dave, 15 years ago

I am not sure if this belongs here but it is the only place where i found the information that i needed so here it goes. I just bought a new computer that is a 64 bit amd and had a pentium 4 prior. I has VB running on the old system no problem but when i wasnted to load up centos 5 on the new one it wass freezing at the registered protocol family 2 spot. After lookiing aroundd the web for what seeems like forever i found this little page. It so happens that using the (noacpi noapic nolapic) command gets me past it. the bad newsas is that i have to type it in every time i boot the machine up. The good news is that i got it to work and i want others who are having this problem to be able to get it running. It seems there are alot of people with this problem and very few answers. thanks for the tip.

comment:12 by James , 15 years ago

You don't have to manually alter the kernel options every time you boot.

vi /boot/grub/grub.conf

Update the line that looks like this, appending the noacpi and nolapic options to the end of it:

kernel /vmlinuz-2.6.18-92.el5 ro root=/dev/VolGroup00/LogVol00 noapic

Save it and the next time you reboot it will boot with those options every time.

comment:13 by surlypatron, 14 years ago

This bug still exists in VirtualBox 3.0.12. It's been over three years, guys. What's the story?

comment:14 by Technologov, 14 years ago

The bug may exist, and the story is that such hardware is rare, so people can't test it.

No Hardware = No Software

-Technologov

comment:15 by Yuhong Bao, 14 years ago

kos_set: I wrote bug #4874 with a description of what is happening. It is NOT VirtualBox's bug, you need to go into your BIOS.

comment:16 by Sander van Leeuwen, 14 years ago

From #4874:

There has been several bug reports like bug #774 relating to VIA CPUs not been able to run XP where the NT 4 CX8 workaround appears to have been enabled on the host. (the host /proc/cpuinfo has no cx8 listed in flags)

Background: NT 4 pre-SP4 had a bug where it would not boot if CPU vendor ID returned by CPUID EAX=0 was not "GenuineIntel", "AuthenticAMD", or "CyrixInstead" and the CX8 feature bit was set. As a result of this bug, all other CPU vendors had to provide a way to clear the CX8 feature bit, usually via a MSR, which was usually exposed as a BIOS option.

Unfortunately this workaround came to bit MS later when it decided to require CX8 for XP, otherwise XP won't boot and the loader will throw up an error message.

What MS had to do was to add code to XP to detect non-Intel/AMD/Cyrix CPUs with CX8 feature bit cleared and add CPU vendor specific code to again set the CX8 feature bit.

Geoff Chappell disassembled the Windows CPUID code and wrote this about this issue: http://www.geoffchappell.com/viewer.htm?doc=studies/windows/km/cpu/cx8.htm

What was probably happening is that the zero CX8 bit of the host CPU was being passed through by VirtualBox to the VM, but XP's manipulation of MSRs in response to the zero CX8 bit to set it back to one failed because XP was running in a VM, where MSRs were being virtualized. Thus, XP had to throw up an error message and fail the boot.

For users who are encountering this problem: Look in the host system's BIOS for a BIOS option that has something like the word "CX8" or "NT4" in it. Try changing that option.

comment:17 by mark, 14 years ago

Note: for other googlers, enabling IO APIC in your VM system settings fixed this for me. In my case a Linux CentosVM VM (previously used with VMware) on a new Laptop/Turion2/Win7-64

comment:18 by Frank Mehnert, 11 years ago

Description: modified (diff)
Resolution: fixed
Status: newclosed

VBox 4.2 contains much improved support for VIA CPUs, closing.

Note: See TracTickets for help on using tickets.

© 2023 Oracle
ContactPrivacy policyTerms of Use