[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] current unstable doesn't boot dom0 (SMP bug?)

On Wed, Oct 19, 2005 at 03:40:14PM +0200, Gerd Knorr wrote:
>   Hi,
> This is changeset 7425:7c951e3eb5ab, last messages are:
> Mount-cache hash table entries: 512
> CPU: Trace cache: 12K uops, L1 D cache: 16K
> CPU: L2 cache: 2048K
> Enabling fast FPU save and restore... done.
> Enabling unmasked SIMD FPU exception support... done.
> Checking 'hlt' instruction... disabled
> (XEN) DOM0: (file=mm.c, line=1467) Bad type (saw f0000001 != exp 
> a0000000) for mfn 10a2 (pfn 18a2)
> kernel BUG at arch/xen/kernel/smpboot.c:184 (vcpu_prepare)!
>  [<c0109c96>] dump_stack+0x1e/0x20
>  [<c0107166>] vcpu_prepare+0x184/0x190
>  [<c0447443>] smp_prepare_cpus+0x134/0x205
>  [<c01040a4>] init+0x3a/0x1b6
>  [<c01078b5>] kernel_thread_helper+0x5/0xb
> Kernel panic - not syncing: BUG!
>  smp_send_stop disable_local_APIC
> (XEN) Domain 0 shutdown: rebooting machine.

Hi Gerd,

it looks like we can't reproduce the problems here.
apparently the cpu that it's trying to start, got a gdt page which xen
consider as a writable page, where it should not.

The code in arch/xen/kernel/smpboot.c that set the page looks fine:

cpu_gdt_descr[cpu].address = __get_free_page(GFP_KERNEL|__GFP_ZERO);
BUG_ON(cpu_gdt_descr[0].size > PAGE_SIZE);
cpu_gdt_descr[cpu].size = cpu_gdt_descr[0].size;
memcpy((void *)cpu_gdt_descr[cpu].address,
        (void *)cpu_gdt_descr[0].address,
make_page_readonly((void *)cpu_gdt_descr[cpu].address);

is there anything special with your box ?

Vincent Hanquez

Xen-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.