Description of problem: installing Xen timer for CPU 0 ------------[ cut here ]------------ kernel BUG at arch/x86/xen/time.c:122! invalid opcode: 0000 [#1] SMP Modules linked in: Pid: 0, comm: swapper Not tainted (2.6.25-0.2.rc4.fc9xen #1) EIP: e019:[<c0405e1b>] EFLAGS: 00010282 CPU: 0 EIP is at xen_setup_timer+0xa2/0xae EAX: fffffff2 EBX: 00000005 ECX: 00000000 EDX: c0771f80 ESI: c064c540 EDI: 00000005 EBP: c0771f94 ESP: c0771f7c DS: e021 ES: e021 FS: 00d8 GS: 0000 SS: e021 Process swapper (pid: 0, ti=c0771000 task=c0734450 task.ti=c0771000) Stack: c181ec18 c181ebac de9d6c9c 00000007 00000000 00000000 c0771fa8 c077c74b 00000020 c0809a88 c18bfa88 c0771fd4 c07768ce 3f846000 00013ea2 c18c2000 00052000 0004fa88 c07a080c 00acf000 c07a07e4 c0738a88 c0771ffc c077c309 Call Trace: [<c077c74b>] ? xen_time_init+0xd7/0xe4 [<c07768ce>] ? start_kernel+0x2df/0x372 [<c077c309>] ? xen_start_kernel+0x314/0x31c ======================= Code: 00 00 00 89 51 20 8d 55 ec 89 41 1c b8 ac ab 7b c0 89 d9 03 04 9d 00 e2 76 c0 89 fb 89 45 ec e8 ec 74 40 00 83 c4 0c 85 c0 74 04 <0f> 0b eb fe 8d 65 f4 5b 5e 5f 5d c3 55 b8 18 ac 7b c0 89 e5 57 EIP: [<c0405e1b>] xen_setup_timer+0xa2/0xae SS:ESP e021:c0771f7c ---[ end trace ca143223eefdc828 ]--- Kernel panic - not syncing: Attempted to kill the idle task! Version-Release number of selected component (if applicable): 2.6.25-0.2.rc4.fc9xen
Orion: just to be clear, this is an x86_32 Xen guest, right? How many vcpus do you have assigned to it? Is this 100% reproducible? Eduardo: have you seen this? I don't recall seeing it before For reference, the code is: static void setup_runstate_info(int cpu) { struct vcpu_register_runstate_memory_area area; area.addr.v = &per_cpu(runstate, cpu); if (HYPERVISOR_vcpu_op(VCPUOP_register_runstate_memory_area, cpu, &area)) BUG(); } Is this perhaps related to the PER_CPU changes in the x86_64 patch?
This is 32 bit (--arch=i686) xen guest on 64-bit 2.6.21.7-2.fc8xen host. Happens with 1 or 2 vcpus. 100% reproducible.
Ah, thanks. The 32-on-64 part is probably what we need to reproduce.
Okay, this turns out to be a 32-on-64 bug with the F-8 HV: http://xenbits.xensource.com/xen-3.1-testing.hg?rev/aa44bbc4a2de The difference with pv_ops xen is that that it notices when VCPUOP_register_runstate_memory_area fails; older kernels didn't notice To solve this we're going to update the HV to 3.1.3 in F-8 kernel-xen
kernel-xen-2.6-2.6.21.7-3.fc8 has been submitted as an update for Fedora 8
I've built kernel-xen-2.6-2.6.21.7-3.fc8 with 3.1.3 and requested it be pushed to F8 updates-testing. In the mean time, you can pull it from here: http://koji.fedoraproject.org/koji/buildinfo?buildID=43414 * Thu Mar 20 2008 Mark McLoughlin <markmc> - Update HV to 3.1.1; fixes pv_ops 32-on-64 (bug #436859)
kernel-xen-2.6-2.6.21.7-3.fc8 has been pushed to the Fedora 8 testing repository. If problems still persist, please make note of it in this bug report. If you want to test the update, you can install it with su -c 'yum --enablerepo=updates-testing update kernel-xen-2.6'. You can provide feedback for this update here: http://admin.fedoraproject.org/updates/F8/FEDORA-2008-2618
Confirmed fixed with kernel-xen-2.6-2.6.21.7-3.fc8. Thanks!
kernel-xen-2.6-2.6.21.7-3.fc8 has been pushed to the Fedora 8 stable repository. If problems still persist, please make note of it in this bug report.