VirtualBox

Ticket #370 (closed defect: fixed)

Opened 7 years ago

Last modified 14 months ago

VIA CPUs and newer distros

Reported by: Mito Owned by:
Priority: critical 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) (diff)

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

VBox.log Download (27.6 KB) - added by Mito 7 years ago.
VBox.2.log Download (36.0 KB) - added by kos_set 6 years ago.

Change History

Changed 7 years ago by Mito

comment:1 Changed 7 years ago by michael

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

comment:2 Changed 7 years ago by Mito

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 follow-up: ↓ 4 Changed 7 years ago by Technologov

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

comment:4 in reply to: ↑ 3 Changed 7 years ago by Mito

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 Changed 7 years ago by frank

  • Summary changed from Newer Distros wont boot to VIA CPUs and newer distros

Mito, could you try again with VirtualBox 1.4.0?

comment:6 Changed 7 years ago by Mito

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 Changed 7 years ago by frank

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 Changed 6 years ago by Technologov

This bug might be related to bug #774.

-Technologov

comment:9 Changed 6 years ago by frank

  • Component changed from other to VMM

comment:10 Changed 6 years ago by kos_set

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.

Changed 6 years ago by kos_set

comment:11 Changed 5 years ago by sengirmav

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 Changed 5 years ago by phfeenikz

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 Changed 4 years ago by surlypatron

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

comment:14 Changed 4 years ago by Technologov

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 Changed 4 years ago by yuhong

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 Changed 4 years ago by sandervl73

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 Changed 4 years ago by markdavis

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 Changed 14 months ago by frank

  • Status changed from new to closed
  • Resolution set to fixed
  • Description modified (diff)

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

Note: See TracTickets for help on using tickets.

www.oracle.com
ContactPrivacy policyTerms of Use