Instruction fault panic while installing 6.2 on VMware Server
Greg Larkin
glarkin at sourcehosting.net
Mon Feb 26 16:44:02 UTC 2007
>
> Hi,
>
> On 2/23/07, Greg Larkin <glarkin at sourcehosting.net> wrote:
> > Hi everyone,
> >
> > I'm creating a standard FreeBSD 6.2 ISO image that I can use to
> > perform unattended installations into VMware Server virtual
> machines.
> > I'm using VMServer 1.0.1, and I've hit a roadblock when sysinstall
> > attempts to create the root filesystem.
> >
> > The first thing to mention is that VMServer is running on a
> CentOS 4.4
> > host OS, and the CPU architecture is a Via C3 Nehemiah.
> Technically,
> > the VMServer software is not supposed to work on the Via C3
> line, but
> > the Nehemiah apparently supports the CMOV instruction that
VMServer
> > requires. I've been able to install Fedora Core 6 successfully
and
> > run it with no problems, so I'm wondering if I just need to find
the
> > right options to configure FreeBSD 6.2 to get it to work.
> >
> > Anyway, the VM boots fine, loads the FreeBSD ISO, and launches
> > sysinstall, but as soon as newfs is invoked to make the root
> > filesystem, I get this:
> >
> > Making a new root filesystem on /dev/ad0s1a
> > Panic: privileged instruction fault
> > (auto reboot)
> >
> > I've tried installing from the standard 6.2 release ISO as well as
a
> > custom ISO with a recompiled kernel, but I get the same error
either
> > way. I also tried disabling ACPI during boot with no success.
> >
> > My custom kernel config is included below. My first
> thought was that
> > if I explicitly set the CPU to I486, that might help avoid the
> > instruction fault, but that doesn't work. I didn't see any other
> > options that looked like they would fix the fault, but I'm not
very
> > experienced at kernel configuration either.
> >
> > Does anyone have an idea how to troubleshoot this problem? Thank
you
> > for any help!
> >
> > Regards,
> > Greg Larkin
>
> I have experienced similar problem in VMware Workstation
> under Windows XP
> on Via C3 Nehemiah processor since FreeBSD 5.x. In my case
privileged
> instruction fault shot somewhere in rc boot process. Tracing
> down the cause of
> fault i found out that it was xstore instruction, which
> VMware did not emulate.
> It turned out to be the merit of new random generator
> appeared somewhere in
> 5.x, which detected the Via processor and tried to use its
> hardware random
> number generator. My workaround was to patch kernel to
> disable using this Via
> processor feature completely. The result was successful
> booting and running
> FreeBSD 5.x and 6.x under VMware on this machine.
>
> Attached is the patch i use for 6.x kernel.
>
> Hope this helps.
>
> --
> ghozzy
>
Hi Ghozzy,
Thanks very much for that - I appreciate it! I'm in the midst of
building a new ISO, and I'll test it out and let you know what
happens. I should have grepped /usr/src for "Nehemiah"!
Do you (or others) think there is any call for either VMware Server
detection in the kernel or a kernel config option specifying that the
kernel is going to run in a VM?
I wonder if patches like this and others would be useful to add to the
official kernel sources, since VMware supports FreeBSD as a guest OS?
Perhaps there are other kernel optimizations and configuration options
that would make sense if the kernel knew it was running in a VM?
Regards,
Greg Larkin
More information about the freebsd-hackers
mailing list