Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 29 Jul 97 00:22:47 -0700
From:      Eric Traut <eric@traut.com>
To:        "John Mitchell" <john@mj.com>
Cc:        "Jorg Brown" <brown@connectix.com>, "John Mitchell" <john@mj.com>, <hackers@FreeBSD.ORG>
Subject:   Re: VirtualPC and FreeBSD
Message-ID:  <199707290711.AAA24104@baygate.bayarea.net>

next in thread | raw e-mail | index | archive | help
Jake,

I'm the lead engineer of Connectix Virtual PC 1.0. I received your bug 
report regarding FreeBSD second-hand through a coworker. You were correct 
- the problem is a bug in the Pentium emulator within Virtual PC 1.0. 

The details: The exception reported by the kernel is caused by the 
execution of a WRMSR (write to model-specific register) instruction. 
Because of Intel's poor documentation for this instruction and its rare 
usage (before this I've never seen it executed), we never implemented it. 
FreeBSD's kernel executes a WRMSR instruction to clear the TSC (time 
stamp count) register (MSR index 0x10).

I have implemented the missing functionality, and the fix will probably 
make its way out in an upcoming Virtual PC bug fix update.

Thanks for the bug report.

Hope you are enjoying Virtual PC otherwise.

Eric Traut
Virtual PC Lead Engineer
Connectix Corp.

-----------------------------

Jake Hamby, jehamby@be.com wrote:

>Just for fun, I tried to boot FreeBSD 2.2.2 from within the VirtualPC
>emulator for MacOS, which claims to simulate a full Intel Pentium PC at
>the hardware level.  It can run unmodified version of Windows 95, NT,
>OS/2, and NextStep, and so I assumed it wouldn't have much trouble with
>FreeBSD.
>
>Unfortunately, immediately after loading the kernel, FreeBSD panicked with
>this error:
>
>Fatal trap 1:  privileged instruction fault while in kernel mode
>
>instruction ptr = 0x8:0xf01b99aa
>stack ptr  = 0x10:0xefbfff38
>frame ptr = 0x10:0xefbfff50
>code segment = base 0x0, limit 0xfffff type 0x1b
>	= DPL 0, pres 1, def 32 1, grant
>process eflags = IOPL = 0
>current process = 0 ()
>interrupt mask = net tty bio
>panic: privileged instruction fault
>
>Obviously, this is a bug in Connectix's CPU emulator.  But I'm curious if
>anyone could give any information off-hand as to what they might be doing
>wrong that would trigger such an error from the FreeBSD kernel.
>
>Thanks,
>Jake Hamby



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199707290711.AAA24104>