Date: Thu, 1 Apr 2010 07:39:02 +0800 From: Adrian Chadd <adrian@freebsd.org> To: Guillaume Seigneuret <gs@omegacube.fr> Cc: freebsd-xen@freebsd.org Subject: Re: Xen 8 & 9 DomU kernel panic with 2 or more virtual CPU Message-ID: <u2xd763ac661003311639qccae0258yd885cff8c9bf02fb@mail.gmail.com> In-Reply-To: <00ba01cad0f2$30fed2f0$92fc78d0$@fr> References: <00ba01cad0f2$30fed2f0$92fc78d0$@fr>
next in thread | previous in thread | raw e-mail | index | archive | help
The last time I checked, FreeBSD/DomU was highly buggy, and this includes SMP support. I never managed to get around to figuring out what wasn't being locked correctly. :/ Adrian On 1 April 2010 00:49, Guillaume Seigneuret <gs@omegacube.fr> wrote: > Dear all, > > > > When I try to make FreeBSD work in Xen domU with multiple vcups, I got a > kernel panic. If someone have a clue . > > > > I got the following error : > > > > WARNING: loader(8) metadata is missing! > > GDB: no debug ports present > > KDB: debugger backends: ddb > > KDB: current backend: ddb > > Copyright (c) 1992-2010 The FreeBSD Project. > > Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994 > > =A0 =A0 =A0 =A0The Regents of the University of California. All rights re= served. > > FreeBSD is a registered trademark of The FreeBSD Foundation. > > FreeBSD 9.0-CURRENT #1: Tue Mar 23 20:38:17 CET 2010 > > =A0 =A0drgkill@RedProxy2:/usr/obj/usr/src/sys/XEN i386 > > WARNING: WITNESS option enabled, expect reduced performance. > > Xen reported: 2526.982 MHz processor. > > Timecounter "ixen" frequency 1000000000 Hz quality 0 > > CPU: Intel(R) Xeon(R) CPU =A0 =A0 =A0 =A0 =A0 X3440 =A0@ 2.53GHz (2526.98= -MHz 686-class > CPU) > > =A0Origin =3D "GenuineIntel" =A0Id =3D 0x106e5 =A0Family =3D 6 =A0Model = =3D 1e =A0Stepping =3D > 5 > > > Features=3D0xbfebfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PG= E,MCA > ,CMOV,PAT,PSE36,CLFLUSH,DTS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE> > > > Features2=3D0x98e3fd<SSE3,DTES64,MON,DS_CPL,VMX,SMX,EST,TM2,SSSE3,CX16,xT= PR,PD > CM,SSE4.1,SSE4.2,POPCNT> > > =A0AMD Features=3D0x28100000<NX,RDTSCP,LM> > > =A0AMD Features2=3D0x1<LAHF> > > =A0TSC: P-state invariant > > > > Data TLB: 4 KB pages, 4-way set associative, 64 entries > > 1st-level data cache: 32 KB, 8-way set associative, 64 byte line size > > L2 cache: 256 kbytes, 8-way associative, 64 bytes/line > > real memory =A0=3D 536870912 (512 MB) > > Physical memory chunk(s): > > 0x00000000007f0000 - 0x000000001f638fff, 518295552 bytes (126537 pages) > > avail memory =3D 515362816 (491 MB) > > APIC: Using the MPTable enumerator. > > SMP: Added CPU 0 (BSP) > > ULE: setup cpu 0 > > [XEN] IPI cpu=3D0 irq=3D128 vector=3DRESCHEDULE_VECTOR (0) > > [XEN] IPI cpu=3D0 irq=3D129 vector=3DCALL_FUNCTION_VECTOR (1) > > Event-channel device installed. > > mem: <memory> > > Pentium Pro MTRR support enabled > > nfslock: pseudo-device > > null: <null device, zero device> > > random: <entropy source, Software, Yarrow> > > io: <I/O> > > crypto: <crypto core> > > Grant table initialized > > xenbus0: <Xen Devices> on motherboard > > xc0: <Xen Console> on motherboard > > kernel trap 12 with interrupts disabled > > Fatal trap 12: page fault while in kernel mode > > cpuid =3D 0; apic id =3D 00 > > fault virtual address =A0 =3D 0x8 > > fault code =A0 =A0 =A0 =A0 =A0 =A0 =A0=3D supervisor read, page not prese= nt > > instruction pointer =A0 =A0 =3D 0x21:0xc0389142 > > stack pointer =A0 =A0 =A0 =A0 =A0 =3D 0x29:0xc06c6ad8 > > frame pointer =A0 =A0 =A0 =A0 =A0 =3D 0x29:0xc06c6af0 > > code segment =A0 =A0 =A0 =A0 =A0 =A0=3D base 0x0, limit 0xfffff, type 0x1= b > > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0=3D DPL 1, pres 1, def32 1= , gran 1 > > processor eflags =A0 =A0 =A0 =A0=3D resume, IOPL =3D 0 > > current process =A0 =A0 =A0 =A0 =3D 0 (swapper) > > [ thread pid 0 tid 100000 ] > > Stopped at =A0 =A0 =A0intr_execute_handlers+0x12: =A0 =A0 movl =A0 =A00x8= (%ebx),%eax > > db> > > db> > > db> show alllocks > > Process 0 (kernel) thread 0xc044f430 (100000) > > exclusive sleep mutex Giant (Giant) r =3D 0 (0xc0450c50) locked @ > /usr/src/sys/kern/kern_module.c:117 > > > > > > Or : > > > > Started domain RedProxy2 (id=3D23) > > WARNING: loader(8) metadata is missing! > > GDB: no debug ports present > > KDB: debugger backends: ddb > > KDB: current backend: ddb > > Copyright (c) 1992-2010 The FreeBSD Project. > > Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994 > > =A0 =A0 =A0 =A0The Regents of the University of California. All rights re= served. > > FreeBSD is a registered trademark of The FreeBSD Foundation. > > FreeBSD 9.0-CURRENT #1: Tue Mar 23 20:38:17 CET 2010 > > =A0 =A0drgkill@RedProxy2:/usr/obj/usr/src/sys/XEN i386 > > WARNING: WITNESS option enabled, expect reduced performance. > > Xen reported: 2526.984 MHz processor. > > Timecounter "ixen" frequency 1000000000 Hz quality 0 > > CPU: Intel(R) Xeon(R) CPU =A0 =A0 =A0 =A0 =A0 X3440 =A0@ 2.53GHz (2526.98= -MHz 686-class > CPU) > > =A0Origin =3D "GenuineIntel" =A0Id =3D 0x106e5 =A0Family =3D 6 =A0Model = =3D 1e =A0Stepping =3D > 5 > > > Features=3D0xbfebfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PG= E,MCA > ,CMOV,PAT,PSE36,CLFLUSH,DTS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE> > > > Features2=3D0x98e3fd<SSE3,DTES64,MON,DS_CPL,VMX,SMX,EST,TM2,SSSE3,CX16,xT= PR,PD > CM,SSE4.1,SSE4.2,POPCNT> > > =A0AMD Features=3D0x28100000<NX,RDTSCP,LM> > > =A0AMD Features2=3D0x1<LAHF> > > =A0TSC: P-state invariant > > > > Data TLB: 4 KB pages, 4-way set associative, 64 entries > > 1st-level data cache: 32 KB, 8-way set associative, 64 byte line size > > L2 cache: 256 kbytes, 8-way associative, 64 bytes/line > > real memory =A0=3D 536870912 (512 MB) > > Physical memory chunk(s): > > 0x00000000007f0000 - 0x000000001f638fff, 518295552 bytes (126537 pages) > > avail memory =3D 515362816 (491 MB) > > APIC: Using the MPTable enumerator. > > SMP: Added CPU 0 (BSP) > > SMP: Added CPU 1 (AP) > > gdtpfn=3D219746 pdptpfn=3D5cc05 > > panic: HYPERVISOR_vcpu_op(VCPUOP_initialise, cpu, &ctxt): > /usr/src/sys/i386/xen/mp_machdep.c:927 > > cpuid =3D 0 > > KDB: enter: panic > > > > Here are the kernel informations : > > uname -a > > FreeBSD RedProxy2 9.0-CURRENT FreeBSD 9.0-CURRENT > > > > Kernel conf : > > # > > # XEN -- Kernel configuration for i386 XEN DomU > > # > > # $FreeBSD: src/sys/i386/conf/XEN,v 1.13 2010/03/13 09:21:00 ed Exp $ > > > > cpu =A0 =A0 =A0 =A0I686_CPU > > ident =A0 =A0 =A0XEN > > > > makeoptions =A0 =A0DEBUG=3D-g =A0 =A0 =A0 =A0 # Build kernel with gdb(1) = debug symbols > > makeoptions =A0 =A0MODULES_OVERRIDE=3D"" > > > > options =A0 =A0SCHED_ULE =A0 =A0 =A0 =A0 =A0 =A0# ULE scheduler > > options =A0 =A0PREEMPTION =A0 =A0 =A0 =A0 =A0 # Enable kernel thread pree= mption > > #options =A0 SCHED_4BSD > > > > options =A0 =A0INET =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 # InterNETworking > > options =A0 =A0INET6 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0# IPv= 6 communications protocols > > options =A0 =A0SCTP =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 # Stream Control Tran= smission Protocol > > options =A0 =A0FFS =A0 =A0 =A0 =A0 =A0# Berkeley Fast Filesystem > > options =A0 =A0SOFTUPDATES =A0 =A0 =A0 =A0 =A0# Enable FFS soft updates s= upport > > options =A0 =A0UFS_ACL =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0# Suppo= rt for access control lists > > options =A0 =A0UFS_DIRHASH =A0 =A0 =A0 =A0 =A0# Improve performance on bi= g directories > > options =A0 =A0UFS_GJOURNAL =A0 =A0 =A0 =A0 # Enable gjournal-based UFS j= ournaling > > options =A0 =A0NFSCLIENT =A0 =A0 =A0 =A0 =A0 =A0# Network Filesystem Clie= nt > > options =A0 =A0NFSSERVER =A0 =A0 =A0 =A0 =A0 =A0# Network Filesystem Serv= er > > options =A0 =A0NFSLOCKD =A0 =A0 =A0 =A0 =A0 =A0 # Network Lock Manager > > options =A0 =A0NFS_ROOT =A0 =A0 =A0 =A0 =A0 =A0 # NFS usable as /, requir= es NFSCLIENT > > options =A0 =A0MSDOSFS =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0# MSDOS= Filesystem > > options =A0 =A0CD9660 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 # ISO 9= 660 Filesystem > > options =A0 =A0PROCFS =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 # Proce= ss filesystem (requires > PSEUDOFS) > > options =A0 =A0PSEUDOFS =A0 =A0 =A0 =A0 =A0 =A0 # Pseudo-filesystem frame= work > > options =A0 =A0GEOM_PART_GPT =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0# GUID Partit= ion Tables. > > options =A0 =A0GEOM_LABEL =A0 =A0 =A0 =A0 =A0 # Provides labelization > > options =A0 =A0COMPAT_FREEBSD4 =A0 =A0 =A0 =A0 =A0 =A0 =A0# Compatible wi= th FreeBSD4 > > options =A0 =A0COMPAT_FREEBSD5 =A0 =A0 =A0 =A0 =A0 =A0 =A0# Compatible wi= th FreeBSD5 > > options =A0 =A0COMPAT_FREEBSD6 =A0 =A0 =A0 =A0 =A0 =A0 =A0# Compatible wi= th FreeBSD6 > > options =A0 =A0COMPAT_FREEBSD7 =A0 =A0 =A0 =A0 =A0 =A0 =A0# Compatible wi= th FreeBSD7 > > options =A0 =A0KTRACE =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 # ktrac= e(1) support > > options =A0 =A0STACK =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0# sta= ck(9) support > > options =A0 =A0SYSVSHM =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0# SYSV-= style shared memory > > options =A0 =A0SYSVMSG =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0# SYSV-= style message queues > > options =A0 =A0SYSVSEM =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0# SYSV-= style semaphores > > options =A0 =A0_KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B real-time ext= ensions > > options =A0 =A0KBD_INSTALL_CDEV =A0 =A0 # install a CDEV entry in /dev > > options =A0 =A0AUDIT =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0# Sec= urity event auditing > > > > # Debugging for use in -current > > options =A0 =A0KDB =A0 =A0 =A0 =A0 =A0# Enable kernel debugger support. > > options =A0 =A0DDB =A0 =A0 =A0 =A0 =A0# Support DDB. > > options =A0 =A0GDB =A0 =A0 =A0 =A0 =A0# Support remote GDB. > > options =A0 =A0DEADLKRES =A0 =A0 =A0 =A0 =A0 =A0# Enable the deadlock res= olver > > options =A0 =A0INVARIANTS =A0 =A0 =A0 =A0 =A0 # Enable calls of extra san= ity checking > > options =A0 =A0INVARIANT_SUPPORT =A0 =A0# Extra sanity checks of internal > structures, required by INVARIANTS > > options =A0 =A0WITNESS =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0# Enabl= e checks to detect deadlocks > and cycles > > options =A0 =A0WITNESS_SKIPSPIN =A0 =A0 # Don't run witness on spinlocks = for speed > > > > options =A0 =A0PAE > > nooption =A0 NATIVE > > option =A0 =A0 XEN > > nodevice =A0 atpic > > nodevice =A0 isa > > options =A0 =A0MCLSHIFT=3D12 > > > > # To make an SMP kernel, the next two lines are needed > > options =A0 =A0SMP =A0 =A0 =A0 =A0 =A0# Symmetric MultiProcessor Kernel > > device =A0 =A0 apic =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 # I/O APIC > > > > > > #device =A0 =A0atkbdc =A0 =A0 =A0 =A0 =A0 =A0 =A0 # AT keyboard controlle= r > > #device =A0 =A0atkbd =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0# AT keyboard > > device =A0 =A0 psm =A0# PS/2 mouse > > device =A0 =A0 pci > > > > #device =A0 =A0kbdmux =A0 =A0 =A0 =A0 =A0 =A0 =A0 # keyboard multiplexer > > > > # Pseudo devices. > > device =A0 =A0 loop =A0 =A0 =A0 =A0 # Network loopback > > device =A0 =A0 random =A0 =A0 =A0 =A0 =A0 =A0 =A0 # Entropy device > > device =A0 =A0 ether =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0# Ethernet support > > device =A0 =A0 tun =A0# Packet tunnel. > > device =A0 =A0 pty =A0# Pseudo-ttys (telnet etc) > > device =A0 =A0 md =A0 # Memory "disks" > > device =A0 =A0 gif =A0# IPv6 and IPv4 tunneling > > device =A0 =A0 faith =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0# IPv6-to-IPv4 relayi= ng (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 =A0 =A0 bpf =A0# Berkeley packet filter > > > > device =A0 =A0 pf > > device =A0 =A0 pfsync > > device =A0 =A0 pflog > > device =A0 =A0 carp > > > > option =A0 =A0 IPSEC > > option =A0 =A0 IPSEC_ESP > > device =A0 =A0 crypto > > > > options =A0 =A0 =A0 =A0 ALTQ > > options =A0 =A0 =A0 =A0 ALTQ_CBQ =A0 =A0 =A0 =A0# Class Bases Queuing (CB= Q) > > options =A0 =A0 =A0 =A0 ALTQ_RED =A0 =A0 =A0 =A0# Random Early Detection = (RED) > > options =A0 =A0 =A0 =A0 ALTQ_RIO =A0 =A0 =A0 =A0# RED In/Out > > options =A0 =A0 =A0 =A0 ALTQ_HFSC =A0 =A0 =A0 # Hierarchical Packet Sched= uler (HFSC) > > options =A0 =A0 =A0 =A0 ALTQ_PRIQ =A0 =A0 =A0 # Priority Queuing (PRIQ) > > options =A0 =A0 =A0 =A0 ALTQ_NOPCC =A0 =A0 =A0# Required for SMP build > > > > Informations about the Xen domU : > > > > Xen 3.4 amd 64 with 2.6.32-3-xen-amd64 linux kernel. > > > > > > Thanks by advance. > > > > Regards, > > > Guillaume Seigneuret > > _______________________________________________ > freebsd-xen@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-xen > To unsubscribe, send any mail to "freebsd-xen-unsubscribe@freebsd.org" >
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?u2xd763ac661003311639qccae0258yd885cff8c9bf02fb>