WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

[Xen-devel] SMP DOM0 is broken on x86_64

To: "xen-devel" <xen-devel@xxxxxxxxxxxxxxxxxxx>
Subject: [Xen-devel] SMP DOM0 is broken on x86_64
From: "Kamble, Nitin A" <nitin.a.kamble@xxxxxxxxx>
Date: Fri, 14 Oct 2005 17:31:12 -0700
Cc: Ian Pratt <m+Ian.Pratt@xxxxxxxxxxxx>
Delivery-date: Sat, 15 Oct 2005 00:28:45 +0000
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Thread-index: AcXRH77Yh+dXcGzDSNW3J/+e5S7ogg==
Thread-topic: SMP DOM0 is broken on x86_64
It was with the changeset 7380: f9b300fab36e

The per_cpu data access is causing the problematic page fault.

void local_setup_timer(unsigned int cpu)
{
        int seq;

        BUG_ON(cpu == 0);

        do {
                seq = read_seqbegin(&xtime_lock);
                per_cpu(processed_system_time, cpu) =
                        per_cpu(shadow_time, cpu).system_timestamp;
        } while (read_seqretry(&xtime_lock, seq));



CPU: Physical Processor ID: 0
                   Genuine Intel(R) CPU 3.80GHz stepping 06
Unable to handle kernel paging request at 0000003fa814a688 RIP:
<ffffffff8011a31a>{local_setup_timer+74}
PGD 0
Oops: 0000 [1] SMP
CPU 1
Modules linked in:
Pid: 0, comm: swapper Not tainted 2.6.12-xen0
RIP: e030:[<ffffffff8011a31a>] <ffffffff8011a31a>{local_setup_timer+74}
RSP: e02b:ffff880075135f20  EFLAGS: 00010206
RAX: ffffffff80665440 RBX: 0000000000000000 RCX: 00000000000000c6
RDX: 00000000000000c6 RSI: ffffffff80665428 RDI: ffffffff804f68c0
RBP: 0000004027b46000 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000001 R11: 0000000000000010 R12: 0000000000000000
R13: 00000000804f68c0 R14: 00000000804f68c0 R15: 0000000000000000
FS:  0000000000000000(0000) GS:ffffffff80604700(0000) knlGS:0000000000000000
CS:  e033 DS: 002b ES: 002b
Process swapper (pid: 0, threadinfo ffff880075134000, task ffff88007512edb0)
Stack: 0000000000000000 0000000000000000 0000000000000000 0000000000000000
       0000000000000000 ffffffff806238b3 0000000000000000 0000000000000000
       0000000000000000 0000000000000000
Call Trace:<ffffffff806238b3>{start_secondary+19}

Code: 48 8b 95 88 46 60 80 48 8b 44 02 08 48 89 04 16 0f ae e8 8b
RIP <ffffffff8011a31a>{local_setup_timer+74} RSP <ffff880075135f20>
CR2: 0000003fa814a688
 <0>Kernel panic - not syncing: Attempted to kill the idle task!
 <1>Unable to handle kernel NULL pointer dereference at 0000000000000408 RIP:
<ffffffff80147302>{queue_work+34}
PGD 0
Oops: 0000 [2] SMP
CPU 0
Modules linked in:
Pid: 1, comm: swapper Not tainted 2.6.12-xen0
RIP: e030:[<ffffffff80147302>] <ffffffff80147302>{queue_work+34}
RSP: e02b:ffff8800751028e8  EFLAGS: 00010246
RAX: 0000000000000408 RBX: 0000000000000000 RCX: 0000000000000000
RDX: 0000000000000000 RSI: ffffffff80512460 RDI: 0000000000000000
RBP: 0000000000000100 R08: 0000000000000001 R09: 0000000000000018
R10: 0000000000007ff0 R11: 0000000000000246 R12: ffff8800029b0f60
R13: ffffffff80271510 R14: ffff8800751028f8 R15: 000000000000000a
FS:  0000000000000000(0000) GS:ffffffff80604680(0000) knlGS:0000000000000000
CS:  e033 DS: 0000 ES: 0000
Process swapper (pid: 1, threadinfo ffff880075102000, task ffff880075101410)
Stack: 0000000000000000 ffffffff8013f486 ffff8800751028f8 ffff8800751028f8
       0000000000000001 ffffffff80605c90 ffffffff80605c90 0000000000000000
       ffffffff8066a080 ffffffff8013ae00
Call Trace:<ffffffff8013f486>{run_timer_softirq+390} <ffffffff8013ae00>{__do_so}
       <ffffffff8013aeec>{do_softirq+76} <ffffffff80115c99>{do_IRQ+57}
       <ffffffff8010dced>{evtchn_do_upcall+141} <ffffffff80112bad>{do_hyperviso}
       <ffffffff8062379a>{__cpu_up+1066} <ffffffff80623739>{__cpu_up+969}
       <ffffffff801130a8>{divide_error+0} <ffffffff80112f58>{debug+0}
       <ffffffff80112f74>{int3+0} <ffffffff80112f90>{overflow+0}
       <ffffffff80112fac>{bounds+0} <ffffffff80112fc8>{invalid_op+0}
       <ffffffff80112f3c>{device_not_available+0} <ffffffff80112fe4>{coprocesso}
       <ffffffff8011301c>{invalid_TSS+0} <ffffffff80113038>{segment_not_present}
       <ffffffff80113054>{stack_segment+0} <ffffffff80113070>{general_protectio}
       <ffffffff80112e94>{page_fault+0} <ffffffff801130c4>{spurious_interrupt_b}
       <ffffffff80112f04>{coprocessor_error+0} <ffffffff8011308c>{alignment_che}
       <ffffffff80112f20>{simd_coprocessor_error+0} <ffffffff801221d0>{ia32_sys}
       <ffffffff80112b80>{hypervisor_callback+0} <ffffffff80112c68>{failsafe_ca}
       <ffffffff8011223c>{system_call+0} <ffffffff8014f736>{cpu_up+150}
       <ffffffff8010d14b>{init+251} <ffffffff80112dbf>{child_rip+8}
       <ffffffff8010d050>{init+0} <ffffffff80112db7>{child_rip+0}


Code: 48 3b 87 08 04 00 00 48 63 d2 48 8d 46 08 48 0f 45 ca 48 3b
RIP <ffffffff80147302>{queue_work+34} RSP <ffff8800751028e8>
CR2: 0000000000000408
 <0>Kernel panic - not syncing: Aiee, killing interrupt handler!
 stop_this_cpu disable_local_APIC


Thanks & Regards,
Nitin
-----------------------------------------------------------------------------------
Open Source Technology Center, Intel Corp


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-devel] SMP DOM0 is broken on x86_64, Kamble, Nitin A <=