I've managed to compile and setup a paravirtualized domU with FreeBSD 8
(SVN snapshot from 'head').

Currently I'm running into two mayor problems:
- The system time is not behaving as expected.
        I fired the domain up at 01:43 in the morning and watch the 
        clock. Time passes normally within the maschine, and the 
        suddenly jumps back to 01:30:<VARIES>. From there on time
        passes normally up to 15 minutes (the latest time I've seen
        is 01:44:52).
        Right now the domain is running for more than 18 hours, and the
        clock still says: Tue Jan 13 01:32:52 CET 2009

        Running 'ntpd' inside the domU doesn't help to solve the 

        If found a lot of hints for linux domU's, which say that you
        need to set the sysctl 'xen.independent_wallclock' to '1' and
        run 'ntpd' in the domU to keep time correct.
        Does 'sysctl machdep.independent_wallclock=1' the same in 
        FreeBSD? (If so, this doesn' work.)

- 2-way SMP doesn't work.
        When I put the line
        into my config file, I get the following output during
        boot, and the domU is destroyed after the reboot by
        the kernel:
# xm create 00_template_8-CURRENT.XENconfig -c
Using config file "./00_template_8-CURRENT.XENconfig".
Started domain template_8-CURRENT
WARNING: loader(8) metadata is missing!
Copyright (c) 1992-2009 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
        The Regents of the University of California. All rights reserved.
FreeBSD is a registered trademark of The FreeBSD Foundation.
FreeBSD 8.0-CURRENT #3: Thu Jan  8 04:34:03 CET 2009
WARNING: WITNESS option enabled, expect reduced performance.
Xen reported: 1600.056 MHz processor.
Timecounter "ixen" frequency 1000000000 Hz quality 0
CPU: AMD Athlon(tm) Processor (1600.06-MHz 686-class CPU)
  Origin = "AuthenticAMD"  Id = 0x662  Stepping = 2
  AMD Features=0xc0480800<SYSCALL,MP,MMX+,3DNow!+,3DNow!>
real memory  = 671088640 (640 MB)
avail memory = 649625600 (619 MB)
gdtpfn=3edd9 pdptpfn=11113
FreeBSD/SMP: Multiprocessor System Detected: 2 CPUs
 cpu0 (BSP): APIC ID:  0
 cpu1 (AP): APIC ID:  1
cpu=0 irq=0 vector=0
cpu=0 irq=0 vector=1
cpu=1 irq=0 vector=0
cpu=1 irq=0 vector=1
kbd0 at kbdmux0
xenbus0: <Xen Devices> on motherboard
xc0: <Xen Console> on motherboard
Timecounters tick every 10.000 msec
xbd0: 8192MB <Virtual Block Device> at device/vbd/768 on xenbus0
xbd0: attaching as ad0
GEOM: ad0s1: geometry does not match label (15h,63s != 255h,63s).
xn0: <Virtual Network Interface> at device/vif/0 on xenbus0
xn0: Ethernet address: 00:16:3e:06:c3:80
[XEN] netfront_backend_changed: newstate=2
Spanic: blockable sleep lock (sleep mutex) XCONS LOCK @ 
cpuid = 1
Uptime: 1s
Cannot dump. Device not defined or unavailable.
Automatic reboot in 15 seconds - press a key on the console to abort
--> Press a key on the console to reboot,
--> or switch off the system now.

I've attached my kernelconfig file to this mail, if someone sees a
failure in it.

Any hints on how to solve these 2 problems would be really great. Using
FreeBSD in it's current state as domU really rocks. :-)))

# XEN -- Kernel configuration for i386 XEN DomU
# $FreeBSD$

cpu             I686_CPU
ident           XEN

makeoptions     DEBUG=-g                # Build kernel with gdb(1) debug symbols
makeoptions     MODULES_OVERRIDE=""

options         SCHED_ULE               # ULE scheduler
options         PREEMPTION              # Enable kernel thread preemption
#options                SCHED_4BSD               

options         INET                    # InterNETworking
#options        INET6                   # IPv6 communications protocols
#options        SCTP                    # Stream Control Transmission Protocol
options         FFS                     # Berkeley Fast Filesystem
options         SOFTUPDATES             # Enable FFS soft updates support
options         UFS_ACL                 # Support for access control lists
options         UFS_DIRHASH             # Improve performance on big directories
#options        UFS_GJOURNAL            # Enable gjournal-based UFS journaling
#options        NFSCLIENT               # Network Filesystem Client
#options        NFSSERVER               # Network Filesystem Server
#options        NFSLOCKD                # Network Lock Manager
#options        NFS_ROOT                # NFS usable as /, requires NFSCLIENT
#options        MSDOSFS                 # MSDOS Filesystem
options         CD9660                  # ISO 9660 Filesystem
options         PROCFS                  # Process filesystem (requires PSEUDOFS)
options         PSEUDOFS                # Pseudo-filesystem framework
options         GEOM_PART_GPT           # GUID Partition Tables.
options         GEOM_LABEL              # Provides labelization
options         COMPAT_43TTY            # BSD 4.3 TTY compat (sgtty)
options         COMPAT_FREEBSD4         # Compatible with FreeBSD4
options         COMPAT_FREEBSD5         # Compatible with FreeBSD5
options         COMPAT_FREEBSD6         # Compatible with FreeBSD6
options         COMPAT_FREEBSD7         # Compatible with FreeBSD7
options         KTRACE                  # ktrace(1) support
options         STACK                   # stack(9) support
options         SYSVSHM                 # SYSV-style shared memory
options         SYSVMSG                 # SYSV-style message queues
options         SYSVSEM                 # SYSV-style semaphores
options         _KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B real-time 
options         KBD_INSTALL_CDEV        # install a CDEV entry in /dev
options         AUDIT                   # Security event auditing

# Debugging for use in -current
#options        KDB                     # Enable kernel debugger support.
#options        DDB                     # Support DDB.
#options        GDB                     # Support remote GDB.
#options        INVARIANTS              # Enable calls of extra sanity checking
#options        INVARIANT_SUPPORT       # Extra sanity checks of internal 
structures, required by INVARIANTS
options         WITNESS                 # Enable checks to detect deadlocks and 
#options        WITNESS_SKIPSPIN        # Don't run witness on spinlocks for 

options         PAE
nooption        NATIVE
option          XEN
nodevice        atpic
nodevice        isa
options         MCLSHIFT=12

# To make an SMP kernel, the next two lines are needed
options         SMP                     # Symmetric MultiProcessor Kernel
device          apic                    # I/O APIC

device         atkbdc          # AT keyboard controller
device         atkbd           # AT keyboard
device         psm             # PS/2 mouse
device         pci

device          kbdmux          # keyboard multiplexer

# Pseudo devices.
device          loop            # Network loopback
device          random          # Entropy device
device          ether           # Ethernet support
device          tun             # Packet tunnel.
device          pty             # Pseudo-ttys (telnet etc)
#device         md              # Memory "disks"
#device         gif             # IPv6 and IPv4 tunneling
#device         faith           # IPv6-to-IPv4 relaying (translation)

# The `bpf' device enables the Berkeley Packet Filter.
# Be aware of the administrative consequences of enabling this!
# Note that 'bpf' is required for DHCP.
device          bpf             # Berkeley packet filter

freebsd-xen@freebsd.org mailing list
To unsubscribe, send any mail to "freebsd-xen-unsubscr...@freebsd.org"

Reply via email to