> > Hmmm... is that 'hypervisor copy' method the better one?
>
> It places lower load on dom0 and also helps with PV drivers for fully-
> virtualised guest domains.
>
> > Is 'page
> > flip' deprecated?
>
> Yes.

OK, so we want NetBSD to switch in the long run, but Solaris Xen still
shouldn't panic if 'page flip' is being used. :-)

> I had a quick look at the NetBSD source and couldn't see hypervisor
> copy support. It's not difficult to add.

I can't speak for the NetBSD developers, but I'll post a message in
the appropriate mailing list.

Meanwile, here's how to reproduce the panic.  My environment is an X2200M2:

  System Configuration: Sun Microsystems Sun Fire X2200 M2 with Quad Core 
Processor
  BIOS Configuration: Sun Microsystems S39_3D12 10/06/2008
  BMC Configuration: IPMI 1.5 (KCS: Keyboard Controller Style)

  ==== Processor Sockets ====================================

  Version                          Location Tag
  -------------------------------- --------------------------
  Quad-Core AMD Opteron(tm) Processor 2347 HE CPU 1
  Quad-Core AMD Opteron(tm) Processor 2347 HE CPU 2


I am using SXCE Build #122:

  # uname -a
  SunOS glaurung 5.11 snv_122 i86pc i386 i86xpv

and the xVM version that came with it:

  v3.3.2-xvm chgset 'Tue Aug 18 03:21:41 2009 -0700 18433:7e735e9e9bf6'


The NetBSD domU will live on a zvol:

  # zfs get all DATADISK/vol-nbsd-01
  NAME                  PROPERTY              VALUE                  SOURCE
  DATADISK/vol-nbsd-01  type                  volume                 -
  DATADISK/vol-nbsd-01  creation              Wed Sep  2 14:00 2009  -
  DATADISK/vol-nbsd-01  used                  8G                     -
  DATADISK/vol-nbsd-01  available             894G                   -
  DATADISK/vol-nbsd-01  referenced            134M                   -
  DATADISK/vol-nbsd-01  compressratio         1.00x                  -
  DATADISK/vol-nbsd-01  reservation           none                   default
  DATADISK/vol-nbsd-01  volsize               8G                     -
  DATADISK/vol-nbsd-01  volblocksize          8K                     -
  DATADISK/vol-nbsd-01  checksum              on                     default
  DATADISK/vol-nbsd-01  compression           off                    default
  DATADISK/vol-nbsd-01  readonly              off                    default
  DATADISK/vol-nbsd-01  shareiscsi            off                    default
  DATADISK/vol-nbsd-01  copies                1                      default
  DATADISK/vol-nbsd-01  refreservation        8G                     local
  DATADISK/vol-nbsd-01  primarycache          all                    default
  DATADISK/vol-nbsd-01  secondarycache        all                    default
  DATADISK/vol-nbsd-01  usedbysnapshots       0                      -
  DATADISK/vol-nbsd-01  usedbydataset         134M                   -
  DATADISK/vol-nbsd-01  usedbychildren        0                      -
  DATADISK/vol-nbsd-01  usedbyrefreservation  7.87G                  -
  DATADISK/vol-nbsd-01  logbias               latency                default


To set up the NetBSd installation environment, get the following two files:

  
ftp://ftp.netbsd.org/pub/NetBSD/5.0.1/amd64/binary/kernel/netbsd-INSTALL_XEN3_DOMU.gz
  ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-5.0.1/amd64/installation/cdrom/boot.iso

and place them somewhere on the dom0 box (I chose /var/tmp).


Then create the domU, I used an XML file since I went through several
iterations.  Here it is (changed slightly from my first email):

  <domain type='xen'>
    <name>nbsd-01</name>
    <uuid>4a872c6d-cb4c-431c-6899-8e925bbc2001</uuid>
    <memory>1048576</memory>
    <currentMemory>1048576</currentMemory>
    <vcpu>1</vcpu>
    <bootloader></bootloader>
    <os>
      <type>linux</type>
      <kernel>/var/tmp/netbsd-INSTALL_XEN3_DOMU.gz</kernel>
      <initrd>/var/tmp/boot.iso</initrd>
    </os>
    <clock offset='localtime'/>
    <on_poweroff>destroy</on_poweroff>
    <on_reboot>destroy</on_reboot>
    <on_crash>destroy</on_crash>
    <distro>
      <type>unix</type>
      <variant>openbsd4</variant>
    </distro>
    <devices>
      <disk type='block' device='disk'>
        <driver name='phy'/>
        <source dev='/dev/zvol/dsk/DATADISK/vol-nbsd-01'/>
        <target dev='xvda' bus='xen'/>
      </disk>
      <interface type='bridge'>
        <mac address='00:bb:c0:00:20:01'/>
        <source bridge='public0'/>
        <script path='/usr/lib/xen/scripts/vif-vnic'/>
        <target dev='vif-1.0'/>
      </interface>
      <console type='pty'>
        <target port='0'/>
      </console>
    </devices>
  </domain>

(Sorry to the forum readers.)


About the distro variant: I wasn't really too sure what to pick, so I just
selected unix/openbsd4 since it seemed the closest match.  The source network
interface for the bridge is an aggregation:

  # dladm show-link
  LINK        CLASS    MTU    STATE    OVER
  nge0        phys     1500   up       --
  nge1        phys     1500   up       --
  bge0        phys     1500   up       --
  bge1        phys     1500   up       --
  public0     aggr     1500   up       bge0 nge0


Time to create and start up the domain:

  # virsh define nbsd-01.xml
  Domain nbsd-01 defined from nbsd-01.xml

  # xm list
  Name                                        ID   Mem VCPUs      State   
Time(s)
  Domain-0                                     0 32196     8     r-----    546.1
  nbsd-01                                         1024     1                 0.0
  # virsh start nbsd-01                                                         
              Domain nbsd-01 started

  # virsh dominfo nbsd-01
  Id:             2
  Name:           nbsd-01
  UUID:           4a872c6d-cb4c-431c-6899-8e925bbc2001
  OS Type:        linux
  State:          idle
  CPU(s):         1
  CPU time:       3.8s
  Max memory:     1048576 kB
  Used memory:    1047608 kB
  Autostart:      disable

  # virsh console nbsd-01

   Welcome to sysinst, the NetBSD-5.0.1 system installation tool.  This
   menu-driven tool is designed to help you install NetBSD to a hard disk, or
   upgrade an existing NetBSD system, with a minimum of work.
   In the following menus type the reference letter (a, b, c, ...) to select an
   item, or type CTRL+N/CTRL+P to select the next/previous item.
   The arrow keys and Page-up/Page-down may also work.
   Activate the current selection from the menu by typing the enter key.




                 +---------------------------------------------+
                 |>a: Installation messages in English         |
                 | b: Messages d'installation en français      |
                 | c: Installation auf Deutsch                 |
                 | d: Komunikaty instalacyjne w jezyku polskim |
                 | e: Mensajes de instalación en castellano    |
                 +---------------------------------------------+



Just follow the prompts to install NetBSD on the hard disk.  Partition sizes
etc do not really matter; just use the entire disk.  For networking, I use a
fixed MAC address and DHCP; I have verified that the panic will eventually
happen with a static IP address, too.


After network configuration, select the "ftp" installation method.  You will
end up at this screen:


   The following are the ftp site, directory, user, and password that will be
   used.  If "user" is "ftp", then the password is not needed.

  >a: Host                      ftp.NetBSD.org
   b: Base directory            pub/NetBSD/NetBSD-5.0.1
   c: Set directory             /amd64/binary/sets
   d: User                      ftp
   e: Password
   f: Proxy
   g: Transfer directory        /usr/INSTALL
   h: Delete after install      No
   x: Get Distribution


Just select "Get Distribution", all values are correct.  Then watch the
installation sets being retrieved via ftp.  Eventually, the physical box
will panic and reboot.  I have a local copy of the files that I can ftp
to, same result. I've also tried NFS installation from a local share on
the dom0, still same result.

There is no crash dump, and nothing in /var/xen/dump.  I will play
around with the kernel debugge later if I have the time.


Regards -- Volker
-- 
------------------------------------------------------------------------
Volker A. Brandt                  Consulting and Support for Sun Solaris
Brandt & Brandt Computer GmbH                   WWW: http://www.bb-c.de/
Am Wiesenpfad 6, 53340 Meckenheim                     Email: [email protected]
Handelsregister: Amtsgericht Bonn, HRB 10513              Schuhgröße: 45
Geschäftsführer: Rainer J. H. Brandt und Volker A. Brandt
_______________________________________________
xen-discuss mailing list
[email protected]

Reply via email to