WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-users

Re: [Xen-users] Xen w/ IntelVT->Windows Success Report

To: "Petersson, Mats" <Mats.Petersson@xxxxxxx>
Subject: Re: [Xen-users] Xen w/ IntelVT->Windows Success Report
From: Marcus Carlson <marcus@xxxxxxxxxxx>
Date: Sat, 24 Jun 2006 13:45:41 +0200
Cc: Michael Walker <Michael.Walker@xxxxxxxxxxx>, xen-users@xxxxxxxxxxxxxxxxxxx
Delivery-date: Sat, 24 Jun 2006 04:46:33 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
In-reply-to: <907625E08839C4409CE5768403633E0BA7FD0A@xxxxxxxxxxxxxxxxx>
List-help: <mailto:xen-users-request@lists.xensource.com?subject=help>
List-id: Xen user discussion <xen-users.lists.xensource.com>
List-post: <mailto:xen-users@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-users>, <mailto:xen-users-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-users>, <mailto:xen-users-request@lists.xensource.com?subject=unsubscribe>
References: <907625E08839C4409CE5768403633E0BA7FD0A@xxxxxxxxxxxxxxxxx>
Sender: xen-users-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Mozilla Thunderbird 1.0.7 (X11/20051019)
Hej Mats,

Is there anything I can try to do different to make this install, such as change CPU family with the F5 key in the Win 2003 Install? Else I'll try to install this with qemu and then run the installed OS with xen.

Do you think this is a bug that will be fixed later or is there a patch I can try? This is not a production server so I can test anything I want.

Thanks,
Marcus

Petersson, Mats skrev:

Hej Marcus,
The exit reason 43 is a INT3, which I doubt that we should really
intercept, but on the other hand, it's not really supposed to happen
either... I'll have a look to see what we should be doing to avoid
intercepting it...
I actually don't think it's a blue-screen - the code is in user-mode, so
it's probably just some assert or other catch that happens in the
user-mode app that happens to be running at the time - why that should
happen is another interesting question...
I have installed Win2K3 SP1 on my machine previously, and it worked just
fine - but some minor detail difference may well make the difference
between your setup and mine, and that could be sufficient to cause this
to happen...
--
Mats
-----Original Message-----
From: xen-users-bounces@xxxxxxxxxxxxxxxxxxx [mailto:xen-users-bounces@xxxxxxxxxxxxxxxxxxx] On Behalf Of Marcus Carlson
Sent: 20 June 2006 21:43
To: xen-users@xxxxxxxxxxxxxxxxxxx
Cc: Michael Walker
Subject: Re: [Xen-users] Xen w/ IntelVT->Windows Success Report

Last xm dmesg when domU(10) crashes;

(XEN) (GUEST: 10)
(XEN) (GUEST: 10) Booting from Hard Disk...
(XEN) (GUEST: 10) unsupported PCI BIOS function 0x0E
(XEN) (GUEST: 10) int13_harddisk: function 15, unmapped device for ELDL=81 (XEN) (GUEST: 10) *** int 15h function AX=E980, BX=00E4 not yet supported!
(XEN) HVM_PIT: guest freq in cycles=22145449

---- DIES HERE ---

(XEN) HVM_PIT: guest freq in cycles=2218437
(XEN) HVM_PIT: guest freq in cycles=22145449
(XEN) unexpected VMEXIT: exit reason = 0x43, exitinfo1 = 0, exitinfo2 = 0
(XEN) __hvm_bug at svm.c:2628
(XEN) ----[ Xen-3.0.2-2    Not tainted ]----
(XEN) CPU:    1
(XEN) EIP:    001b:[<01019e5b>]
(XEN) EFLAGS: 00000246   CONTEXT: hvm
(XEN) eax: 00000004   ebx: 7ffd7000   ecx: 00000000   edx: 00000002
(XEN) esi: 00000000   edi: 00000003   ebp: 4243484b   esp: 0006efa0
(XEN) cr0: 80010031   cr3: 07e2c000
(XEN) ds: 0023   es: 0023   fs: 003b   gs: 0000   ss: 0023   cs: 001b
(XEN) domain_crash_sync called from svm.c:2628
(XEN) Domain 10 (vcpu#0) crashed on cpu#1:
(XEN) ----[ Xen-3.0.2-2    Not tainted ]----
(XEN) CPU:    1
(XEN) EIP:    001b:[<01019e5b>]
(XEN) EFLAGS: 00000246   CONTEXT: hvm
(XEN) eax: 00000004   ebx: 7ffd7000   ecx: 00000000   edx: 00000002
(XEN) esi: 00000000   edi: 00000003   ebp: 4243484b   esp: 0006efa0
(XEN) cr0: 80010031   cr3: 07e2c000

Marcus

Marcus Carlson skrev:

Hi,

Thanks for a good report/howto - helped me a lot!

But - when I'm trying to install a Windows 2003 server (sp1) the installation dies (possibly blue screen, can't tell via vnc) on the last step in the installation (Registrating compontents
with approx 13
minutes left). I tried both with the trick with F5 and
without - same
result.

Have tried many times but same result every time. Did you have the same error?

Little sys info:
Processor: AMD X2 with SVM support (socket AM2)
Total RAM: 2GB
domU RAM: 512 M
domU CPUs: 1

Tell me if you need more info.

TIA,
Marcus

Michael Walker skrev:

Folks,

I've spent quite a few weeks trying to get a IntelVT enabled
system loaded with a Xen and then running a version of Windows
with the IntelVT support.

After many trials and tribulations - I thought it would be worth
writing up a little report in the hopes that it will help others
down this path.  Note I'm not going into the full details of how
to get a Xen system up & booted - there is plenty of information
on that in the WiKi's - I'm just offering what I thought was
interesting in getting Windows booted in a IntelVT/HVM enabled
system.

1) Get a IntelVT enabled system and enable the settings in
the BIOS:
First you need a IntelVT enabled system, I have a very nice
server system with 4 dual core Intel Xeon processors.  The
Xeon's have the vmx capabilities, but you *must* also make
sure that the IntelVT capabilities are enabled via the BIOS.
The one other gotchya I ran into was that for my system after
re-setting the BIOS you must power-cycle the system for the
updated settings to take place.  If you do not, on this
system, even though the BIOS says VT is enabled Xen will not
recognize it as such (that cost me a couple of days =O).

2) Base system - Fedora Core 5 + Xen3.0-Unstable

My base system was Fedora Core 5.  I tried to use the Xen3.0.2
which is distributed with FC5, but that failed on this system,
each time I attempted to boot a VT enabled system the whole
system would crash.  No error to the console, nothing left for
me to examine - just reboot.

So - I next pulled the latest Xen-unstable development tree down
using Mercurial and created a build workspace.  I installed
the additional packages required for a HVM enabled build
(libvncserver & dev86) and completed the default 'make world'
followed by 'make install' and booted to that new Xen
hypervisor and Domain0 kernel.

3) Once system has booted Xen - verify that VMX is enabled.

Once the Xen0 enabled kernel has booted - you can verify that
your Xen has found the IntelVT enabled bits by doing the
following:

  [root@vermont ~]# xm dmesg | grep VMX
  (XEN) VMXON is done
  (XEN) VMXON is done
  (XEN) VMXON is done
  (XEN) VMXON is done
  (XEN) VMXON is done
  (XEN) VMXON is done
  (XEN) VMXON is done
  (XEN) VMXON is done
  (XEN) VMXON is done
  (XEN) VMXON is done
  (XEN) VMXON is done
  (XEN) VMXON is done
  (XEN) VMXON is done
  (XEN) VMXON is done
  (XEN) VMXON is done
  (XEN) VMXON is done
  [root@vermont ~]#

 You should have a VMXON for each reported processor.  If you
 have any other messages visit your BIOS settings.  There is
 no reason to go any further until you have VMXON reported -
 it just isn't going to work.

4) Create the Xen disk image & find a install media

I created my Xen enabled disk image as follows:
    # mkdir -p /root/xenimages
    # cd /root/xenimages
    # dd if=/dev/zero of=WS128.img bs=1M count=4096

For my install media I chose to use a iso image of the
WinXP - ServicePack2 CDRom.  I copied this into the
/root/xenimages.

For some reason my cdrom device was not available when I was
booted into the Xen-unstable kernel.  If it had been, I also
could have installed with the media in the CDRom drive.

4) Create a HVM enabled Xen Configuration

I created mine by starting with /etc/xen/xmexample.hvm and
then modifying it as appropriate.  Following is my Xen
configuration file:

  [root@vermont xen]# cat /etc/xen/winXP128
  kernel = "/usr/lib/xen/boot/hvmloader"
  builder='hvm'
  memory = 512
  name = "WinXP128"
  vcpus=1
  pae=0
  acpi=0
  apic=0
  cpus = ""
  vif = [ 'type=ioemu, bridge=xenbr0' ]
  disk = [ 'file:/root/xenimages/winXP128.img,ioemu:hda,w' ]
  on_poweroff = 'destroy'
  on_reboot   = 'destroy'
  on_crash    = 'destroy'
  device_model = '/usr/lib/xen/bin/qemu-dm'
  cdrom='/root/xenimages/en_winxp_pro_with_sp2.iso'
  boot='d'
  sdl=0
  vnc=1
  vncviewer=0
  stdvga=0
  serial='pty'
  ne2000=0
  [root@vermont xen]#

Note that the "boot='d'" designates that this Xen image
should boot off of the 'cdrom image'.  This is required for
the initial boot - and will be changed to "boot='c'" once the
hard drive image has Windows installed on it.

Also note that this image is set to place the console onto a
VNC enabled terminal.

You can also use SDL to access the graphics console - I did
not try this since my system is in a lab and I wanted to
remotely connect to my DomainU images.

5) Boot system and connect to terminal with VNC

Now we're ready to boot the system.  Note that the terminal
will be on a VNC console - so once the xen domain is created
you need another window to attach with a vncviewer (either
from the same system or from a different system).

    # xm create -c /etc/xen/winXP128
    Using config file "/etc/xen/winXP128".
    Started domain WinXP128

Then in another terminal (on another machine if you like)
connect to your <server> as follows:

   % vncviewer vermont:1

My system is named vermont - you must provide whatever the
server address for your system is.  Note that the VNC session
number (:1 above) matches to the Xen Domain ID for
the session you just created.  A 'xm list' on the
Domain0 kernel will reveal what your current number is.

6) "Setup is Starting Windows" - install hangs

This one got me for a long time.  I think the problem only
occurs on system which have more then 4(maybe 8) cpus - so
not everyone is seeing it.  The WindowsXP install starts,
we get the 'BlueScreen' and some nice messages as hardware
is probed out.  Then the install just hangs with the last
message displayed in the bottom corner of:

   Setup is Starting Windows

I was stuck here for a few days - until the following snippet
was posted to the xen-devel alias to help me past this point:


http://lists.xensource.com/archives/html/xen-devel/2006-06/msg
00208.html
 In that posting is the following little tidbit:

  > After passing the 1st screen of windows setup of install XP,
  > the first
  > thing you'll see at the bottom of the screen is the option to
  > press F6
  > if you need to install a SCSI or RAID controller. Don't press
  > F6. Press
  > F5 instead. This will take you to a separate menu of Hardware
  > Abstraction Layer's where you can choose an appropriate HAL
  > .The choices
  > are:
  >
  > ACPI Multiprocessor PC
  > ACPI Uniprocessor PC
  > Advanced Configuration and Power Interface (ACPI) PC
  > Compaq SystemPro Multiprocessor or 100% Compatible PC
  > MPS Uniprocessor PC
  > MPS Multiprocessor PC
  > Standard PC
  > Standard PC with C-Step i486
  > Other
  >
  > Select "Standard PC". This will allow the installation to
  > complete in
  > about 20 minutes.


 So - 'press F5' when it says 'press F6'.  Whooda thunk

7) Installing via VNC

The next thing to work around is that driving WinXP through
the vncviewer is a little tricky.  I found the following
issues:

   a) The mouse support is spotty (this is a known issue I've
      seen discussed).  This means that in order to
   do the install and initial setup I had to use just
   the keyboard and keyboard shortcuts (tab, ...).

   b) The vncviewer doesn't resize with the install window.
   At times during the install the graphics window would
   resize (standard windows stuff) but the vncviewer did
   not resize resulting in part of the window being
   truncated in the viewer.  I found that if I just quit
   the 'vncviewer' and restarted it - it would get the
   correct size.

8) Boot from disk image to complete install

Windows Install initially formats your (virtual) hard
drive and copies some files over.  It then reboots to that
hard drive to complete the install.

When the system reboots your virtual machine will terminate,
at this point you want to update your Xen configuration
file to boot from the hard drive.  So - this required
updating the 'boot' entry in the winXP file as follows:

   boot='c'

Then boot the Xen domain and re-attach with VNC:

   [root@vermont xen]# xm create -c /etc/xen/winXP128
   Using config file "/etc/xen/winXP128".
   Started domain WinXP128

And attach with the vncviewer:

   % vncviewer vermont:2

Note that I am now attached at ':2' since that is the XenID
this session was assigned on my system (xm list).

8) Once installed - using rdesktop

Don't be too worried about the problems with the VNC console.
You only really need to use it to do the initial install &
setup.  Once that is done - you can use Windows Remote Desktop
to connect to your virtual Windows machine.  And - on Linux
(and other Unix's) there is a nice RDP client called rdesktop
(www.rdesktop.org).

So - once your system has been installed you can enable the
RemoteDesktop via the following tab in Windows:

 ControlPanel->System->Remote tab

Enable that - and you can then connect to your client with
Remote Desktop.  At this point you're good to go.


Well - that's it.

I've used the above to install both Windows Server 2003 & Windows
XP clients.  I've had multiple WinXP & WS2003 clients running
simultaneously - and they all seems great.

Hope this helps someone.


Cheers,

_Mike_


_______________________________________________
Xen-users mailing list
Xen-users@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-users


_______________________________________________
Xen-users mailing list
Xen-users@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-users

_______________________________________________
Xen-users mailing list
Xen-users@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-users




_______________________________________________
Xen-users mailing list
Xen-users@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-users


_______________________________________________
Xen-users mailing list
Xen-users@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-users