Instable 32bit domU on 64bit dom0 (w/Xen 3.3.1)

Kai Mosebach kai at freshx.de
Wed Feb 4 02:20:40 PST 2009


Hi Kip,

After rebuilding the kernel (which improved stability by roughly 80%) and
rebuilding world (which improved stability by another 19% ;) the userland
seems to be much more stable now! Kernel wise I hit the bug you described
below at every bootup/shutdown and the first hit of a key on the console,
but the system keeps running afterwards...

Booting with 2 CPUs is still ending up in

Spanic: blockable sleep lock (sleep mutex) XCONS LOCK @
dev/xen/console/console.c:290
cpuid = 1
KDB: enter: panic
[thread pid 11 tid 100003 ]
Stopped at      kdb_enter+0x3a: movl    $0,kdb_why

Anyway, thanks for your effort!

Kai

On 2/3/09 6:36 AM, "Kip Macy" <kmacy at freebsd.org> wrote:

> Hi Kai,
> 
> This should be fixed by r188042. Interrupts need to be disabled on
> entry to the page fault handler or we risk being preempted prior to
> reading cr2 (the faulting address).
> 
> There is still another fundamental stability bug whereby timer
> interrupts appear to sometimes be left disabled until another
> interrupt (console, network, disk) comes in at which point they're
> re-enabled. You may or may not hit that, I only have one configuration
> where I'm able to reproduce that issue.
> 
> Cheers,
> Kip
> 
> 
> On Thu, Jan 29, 2009 at 7:34 AM, Kai Mosebach <xen at komadev.de> wrote:
>> Hi,
>> 
>> i recently got my first FreeBSD 8 domU working and i am quite happy to see
>> that there is eventually progress on the important Xen topic for FreeBSD.
>> Since this domU as a svn -head checkout from 23.01.09 still segfaults here
>> and there i startet to rebuild the whole world with debugging symbols in the
>> hope that the backtraces give more info's on where to find bugs.
>> 
>> Here are the first results from several core files which hang around in the
>> system after a world build and i hope the developers here can make more sense
>> out of it than me.
>> 
>> If you need further dumps/traces or have some advises how to go on from here,
>> please let me know!
>> 
>> Best Kai
>> 
>> /usr/obj/usr/src/make.core
>> 
>> Program terminated with signal 11, Segmentation fault.
>> #0  0x0804da01 in Cmd_Exec (
>>   cmd=0x2812df00 "/usr/bin/env -i PATH=/sbin:/bin:/usr/sbin:/usr/bin make
>> __MAKE_CONF=/etc/make.conf  -f /dev/null -V MAKEOBJDIRPREFIX dummy",
>>   error=0xbf7fdb18) at /usr/src/usr.bin/make/job.c:2713
>> 2713            if ((ps.child_pid = vfork()) == -1) {
>> (gdb) bt
>> #0  0x0804da01 in Cmd_Exec (
>>   cmd=0x2812df00 "/usr/bin/env -i PATH=/sbin:/bin:/usr/sbin:/usr/bin make
>> __MAKE_CONF=/etc/make.conf  -f /dev/null -V MAKEOBJDIRPREFIX dummy",
>>   error=0xbf7fdb18) at /usr/src/usr.bin/make/job.c:2713
>> #1  0x080544ed in Parse_DoVar (line=0x28128b00 "_MAKEOBJDIRPREFIX",
>>   ctxt=0x2810e200) at /usr/src/usr.bin/make/parse.c:1520
>> #2  0x08055a1a in Parse_File (name=0xbf7fdbf8 "/usr/src/Makefile",
>>   stream=0x80a4960) at /usr/src/usr.bin/make/parse.c:2457
>> #3  0x08051e68 in ReadMakefile (p=Variable "p" is not available.
>> ) at /usr/src/usr.bin/make/main.c:323
>> #4  0x08051f24 in TryReadMakefile (p=0x8094744 "Makefile")
>>   at /usr/src/usr.bin/make/main.c:342
>> #5  0x080527c3 in main (argc=1, argv=0xbf7feddc)
>>   at /usr/src/usr.bin/make/main.c:1209
>> (gdb)
>> 
>> 
>> 
>> /usr/src/sbin/atacontrol/sh.core
>> 
>> Core was generated by `sh'.
>> Program terminated with signal 11, Segmentation fault.
>> Reading symbols from /lib/libedit.so.6...done.
>> Loaded symbols for /lib/libedit.so.6
>> Reading symbols from /lib/libncurses.so.7...done.
>> Loaded symbols for /lib/libncurses.so.7
>> Reading symbols from /lib/libc.so.7...done.
>> Loaded symbols for /lib/libc.so.7
>> Reading symbols from /libexec/ld-elf.so.1...done.
>> Loaded symbols for /libexec/ld-elf.so.1
>> #0  0x080555e6 in forkshell (jp=0x2830c0c0, n=0x28304d94, mode=0) at
>> /usr/src/bin/sh/jobs.c:746
>> 746             pid = fork();
>> (gdb) bt
>> #0  0x080555e6 in forkshell (jp=0x2830c0c0, n=0x28304d94, mode=0) at
>> /usr/src/bin/sh/jobs.c:746
>> #1  0x0804d759 in evalcommand (cmd=0x28304d94, flags=0, backcmd=0x0) at
>> /usr/src/bin/sh/eval.c:747
>> #2  0x0804e725 in evaltree (n=0x28304d94, flags=0) at
>> /usr/src/bin/sh/eval.c:267
>> #3  0x0804e4ff in evaltree (n=0x28304da4, flags=0) at
>> /usr/src/bin/sh/eval.c:238
>> #4  0x0804e86c in evaltree (n=0x28304210, flags=0) at
>> /usr/src/bin/sh/eval.c:341
>> #5  0x0804eba7 in evalstring (
>>    s=0xbf7fea84 "for entry in adjkerntz  atacontrol  atm  badsect  bsdlabel
>> camcontrol  ccdconfig  clri  comcontrol  conscontrol  ddb  devd  devfs
>> dhclient  dmesg  dump  dumpfs  dumpon  fdisk    ffsinfo  fsck   fsck_"...) at
>> /usr/src/bin/sh/eval.c:169
>> #6  0x08056d98 in main (argc=3, argv=0xbf7fe9a8) at
>> /usr/src/bin/sh/main.c:181
>> 
>> 
>> 
>> 
>> /usr/obj/usr/src/libexec/ftpd/make.core
>> 
>> Program terminated with signal 11, Segmentation fault.
>> #0  0x080898bf in memset ()
>> (gdb) bt
>> #0  0x080898bf in memset ()
>> #1  0x0000000c in ?? ()
>> #2  0x0806f8b2 in arena_malloc ()
>> #3  0x0807106b in malloc ()
>> #4  0x0805a2d1 in emalloc (len=256) at /usr/src/usr.bin/make/util.c:234
>> #5  0x08049d3f in Buf_Init (size=0) at /usr/src/usr.bin/make/buf.c:184
>> #6  0x0805a63a in VarCreate (name=0x2810d118 ".CURDIR", value=0xbf7fe0b6
>> "/usr/src/libexec/ftpd", flags=0) at /usr/src/usr.bin/make/var.c:214
>> #7  0x0805a68d in VarAdd (name=0x2810d118 ".CURDIR", val=0xbf7fe0b6
>> "/usr/src/libexec/ftpd", ctxt=0x28112180) at /usr/src/usr.bin/make/var.c:954
>> #8  0x0805d2fc in Var_Set (name=0x809409d ".CURDIR", val=0xbf7fe0b6
>> "/usr/src/libexec/ftpd", ctxt=0x28112180) at /usr/src/usr.bin/make/var.c:1009
>> #9  0x0805d321 in Var_SetGlobal (name=0x809409d ".CURDIR", value=0xbf7fe0b6
>> "/usr/src/libexec/ftpd") at /usr/src/usr.bin/make/var.c:1035
>> #10 0x0805243f in main (argc=3, argv=0xbf7fed74) at
>> /usr/src/usr.bin/make/main.c:1115
>> 
>> 
>> 
>> /usr/obj/usr/src/usr.bin/telnet/as.core
>> 
>> Program terminated with signal 11, Segmentation fault.
>> #0  0x080480d6 in _start ()
>> (gdb) bt
>> #0  0x080480d6 in _start ()
>> #1  0x00000003 in ?? ()
>> _______________________________________________
>> freebsd-xen at freebsd.org mailing list
>> http://lists.freebsd.org/mailman/listinfo/freebsd-xen
>> To unsubscribe, send any mail to "freebsd-xen-unsubscribe at freebsd.org"
>> 




More information about the freebsd-xen mailing list