svn commit: r216406 - stable/8/sys/amd64/conf

Ion-Mihai Tetcu itetcu at
Mon Dec 13 14:19:51 UTC 2010

On Mon, 13 Dec 2010 12:34:35 +0000 (UTC)
Robert Watson <rwatson at> wrote:

> Author: rwatson
> Date: Mon Dec 13 12:34:35 2010
> New Revision: 216406
> URL:
> Log:
>   Merge r216365 from head to stable/8:
>     Derive the XENHVM kernel from GENERIC, adding only the options
> required to support PV drivers (such as xenpci), and non-adptive
> locking (along with a comment about why).
>     This change eliminates the synchronisation problem between
> GENERIC and XENHVM, which had become severely rotted in HEAD, and in
> 8-STABLE included non-production kernel debugging features such as
>     However, it comes at the cost of enabling devices and options
> that may not be present under Xen (such as random ethernet cards).
> For now, opt for a simpler kernel configuration file rather than
> using nooptions/ nodevice to enumerate and eliminate them.  This
> leads to a somewhat larger XENHVM kernel.
>     This is an MFC candidate for 8-STABLE before 8.2, in order to
> provide a production-worthy XENHVM kernel configuration for amd64.
>     Discussed with:       gibbs, cperciva
>     Reported by:          Piete Brooks <Piete.Brooks at>
>     Sponsored by:         DARPA, AFRL
>   Approved by:	re (kib)

What about the same for i386?

BTW, on a i386R trying to do a
 make buildworld && make buildkernel KERNCONF=VPS
yesterday resulted in:

cc -c -O -pipe  -std=c99 -g -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes  -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual  -Wundef -Wno-pointer-sign -fformat-extensions -nostdinc  -I. -I/usr/src/sys -I/usr/src/sys/contrib/altq -D_KERNEL -DHAVE_KERNEL_OPTION_HEADERS -include opt_global.h -fno-common -finline-limit=8000 --param inline-unit-growth=100 --param large-function-growth=1000  -mno-align-long-strings -mpreferred-stack-boundary=2  -mno-mmx -mno-3dnow -mno-sse -mno-sse2 -mno-sse3 -ffreestanding -fstack-protector -Werror  /usr/src/sys/i386/xen/xen_machdep.c
/usr/src/sys/i386/xen/xen_machdep.c: In function 'initvalues':
/usr/src/sys/i386/xen/xen_machdep.c:1077: error: 'IdlePTDnew' undeclared (first use in this function)
/usr/src/sys/i386/xen/xen_machdep.c:1077: error: (Each undeclared identifier is reported only once
/usr/src/sys/i386/xen/xen_machdep.c:1077: error: for each function it appears in.)
/usr/src/sys/i386/xen/xen_machdep.c:1082: error: 'IdlePTDnewma' undeclared (first use in this function)
/usr/src/sys/i386/xen/xen_machdep.c:1085: error: 'IdlePDPTnew' undeclared (first use in this function)
/usr/src/sys/i386/xen/xen_machdep.c:1124: error: 'IdlePDPT' undeclared (first use in this function)
/usr/src/sys/i386/xen/xen_machdep.c:1125: error: 'IdlePDPTma' undeclared (first use in this function)
/usr/src/sys/i386/xen/xen_machdep.c:1125: error: 'IdlePDPTnewma' undeclared (first use in this function)
cc1: warnings being treated as errors
/usr/src/sys/i386/xen/xen_machdep.c:893: warning: unused variable 'pdir_shadow_ma'
*** Error code 1

Maybe I have something wrong in the KERNCONF?

 # cat /root/kernels/
# XEN -- Kernel configuration for i386 XEN DomU
# $FreeBSD: src/sys/i386/conf/XEN,v 2010/11/28 16:25:16 cperciva Exp $

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         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         GEOM_LABEL              # Provides labelization
options         COMPAT_43TTY            # BSD 4.3 TTY compat (sgtty)
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         P1003_1B_SEMAPHORES     # POSIX-style semaphores
options         _KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B real-time extensions
options         KBD_INSTALL_CDEV        # install a CDEV entry in /dev

# 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 cycles
#options        WITNESS_SKIPSPIN        # Don't run witness on spinlocks for speed

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

device          loop            # Network loopback
device          random          # Entropy device
device          ether           # Ethernet support
device          pty             # Pseudo-ttys (telnet etc)
device          bpf             # Berkeley packet filter

device          eisa
device          ata
options         ATA_STATIC_ID   # Static device numbering

device          vga             # VGA video card driver
options         VGA_NO_FONT_LOADING
options         VGA_NO_MODE_CHANGE

# syscons is the default console driver, resembling an SCO console
device          sc
options         SC_NO_CUTPASTE
options         SC_NO_FONT_LOADING
options         SC_NO_HISTORY
options         SC_NO_MODE_CHANGE
options         SC_NO_SYSMOUSE

device          pmtimer

IOnut - Un^d^dregistered ;) FreeBSD "user"
  "Intellectual Property" is   nowhere near as valuable   as "Intellect"
FreeBSD committer -> itetcu at, PGP Key ID 057E9F8B493A297B
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 196 bytes
Desc: not available
Url :

More information about the svn-src-stable-8 mailing list