From owner-svn-src-stable-8@FreeBSD.ORG Mon Dec 13 15:31:55 2010 Return-Path: Delivered-To: svn-src-stable-8@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id F13D1106566B; Mon, 13 Dec 2010 15:31:55 +0000 (UTC) (envelope-from rwatson@FreeBSD.org) Received: from cyrus.watson.org (cyrus.watson.org [65.122.17.42]) by mx1.freebsd.org (Postfix) with ESMTP id ABAF38FC17; Mon, 13 Dec 2010 15:31:55 +0000 (UTC) Received: from lemongrass.sec.cl.cam.ac.uk (lemongrass.sec.cl.cam.ac.uk [128.232.18.47]) by cyrus.watson.org (Postfix) with ESMTPSA id D410546B03; Mon, 13 Dec 2010 10:31:52 -0500 (EST) Mime-Version: 1.0 (Apple Message framework v1082) Content-Type: text/plain; charset=us-ascii From: "Robert N. M. Watson" In-Reply-To: <20101213160021.60401b79@it.buh.tecnik93.com> Date: Mon, 13 Dec 2010 15:31:48 +0000 Content-Transfer-Encoding: quoted-printable Message-Id: References: <201012131234.oBDCYZvl082510@svn.freebsd.org> <20101213160021.60401b79@it.buh.tecnik93.com> To: Ion-Mihai Tetcu X-Mailer: Apple Mail (2.1082) Cc: svn-src-stable@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org, svn-src-stable-8@freebsd.org Subject: Re: svn commit: r216406 - stable/8/sys/amd64/conf X-BeenThere: svn-src-stable-8@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: SVN commit messages for only the 8-stable src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 13 Dec 2010 15:31:56 -0000 On 13 Dec 2010, at 14:00, Ion-Mihai Tetcu wrote: >> 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). >=20 > What about the same for i386? We don't currently support combining PV drivers with a non-PV kernel on = i386; nor do we support a pure PV kernel on amd64. The former strikes me = as more of a problem than the latter. Other than Amazon EC2, it seems = most interesting targets will support HVM in practice, and benefit from = PV drivers, but not require a pure PV kernel (i.e., Xen-modified VM = system). Your kernel configuration is likely trying to build options XEN on i386 = without PAE; we currently require options PAE to build a PV Xen kernel = on i386. (It also looks like "options XEN" is spelled "option XEN" in = your config file below?) Robert >=20 >=20 > BTW, on a i386R trying to do a > make buildworld && make buildkernel KERNCONF=3DVPS > yesterday resulted in: >=20 > cc -c -O -pipe -std=3Dc99 -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=3D8000 --param inline-unit-growth=3D100 --param = large-function-growth=3D1000 -mno-align-long-strings = -mpreferred-stack-boundary=3D2 -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 >=20 >=20 > Maybe I have something wrong in the KERNCONF? >=20 > # cat /root/kernels/ > # > # XEN -- Kernel configuration for i386 XEN DomU > # > # $FreeBSD: src/sys/i386/conf/XEN,v 1.9.2.2 2010/11/28 16:25:16 = cperciva Exp $ >=20 > cpu I686_CPU > ident XEN >=20 > makeoptions DEBUG=3D-g # Build kernel with gdb(1) = debug symbols > #makeoptions MODULES_OVERRIDE=3D"" >=20 > options SCHED_ULE # ULE scheduler > options PREEMPTION # Enable kernel thread = preemption >=20 > 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 >=20 > # 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 >=20 > nooption NATIVE > option XEN > nodevice atpic > nodevice isa > options MCLSHIFT=3D12 >=20 > # To make an SMP kernel, the next two lines are needed > options SMP # Symmetric MultiProcessor = Kernel > device apic # I/O APIC >=20 >=20 > #device atkbdc # AT keyboard controller > #device atkbd # AT keyboard > #device psm # PS/2 mouse > device pci >=20 > #device kbdmux # keyboard multiplexer >=20 > device loop # Network loopback > device random # Entropy device > device ether # Ethernet support > device pty # Pseudo-ttys (telnet etc) > device bpf # Berkeley packet filter >=20 > device eisa > device ata > options ATA_STATIC_ID # Static device numbering >=20 > device vga # VGA video card driver > options VGA_NO_FONT_LOADING > options VGA_NO_MODE_CHANGE >=20 > # 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 >=20 > device pmtimer >=20 >=20 >=20 > --=20 > IOnut - Un^d^dregistered ;) FreeBSD "user" > "Intellectual Property" is nowhere near as valuable as = "Intellect" > FreeBSD committer -> itetcu@FreeBSD.org, PGP Key ID 057E9F8B493A297B