Bug 436859

Summary: F-8 xen: update HV in kernel-xen to 3.1.3 (fixes 32-on-64 issue with F-9 pv_ops xen)
Product: [Fedora] Fedora Reporter: Orion Poplawski <orion>
Component: kernel-xenAssignee: Mark McLoughlin <markmc>
Status: CLOSED CURRENTRELEASE QA Contact: Virtualization Bugs <virt-bugs>
Severity: low Docs Contact:
Priority: low    
Version: rawhideCC: xen-maint
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: 2.6-2.6.21.7-3.fc8 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2008-03-24 12:26:56 EDT Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---
Bug Depends On:    
Bug Blocks: 434756    

Description Orion Poplawski 2008-03-10 15:48:39 EDT
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
Comment 1 Mark McLoughlin 2008-03-18 07:53:31 EDT
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?
Comment 2 Orion Poplawski 2008-03-18 11:51:16 EDT
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.
Comment 3 Mark McLoughlin 2008-03-18 12:59:50 EDT
Ah, thanks. The 32-on-64 part is probably what we need to reproduce.
Comment 4 Mark McLoughlin 2008-03-20 14:18:39 EDT
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
Comment 5 Fedora Update System 2008-03-20 16:13:06 EDT
kernel-xen-2.6-2.6.21.7-3.fc8 has been submitted as an update for Fedora 8
Comment 6 Mark McLoughlin 2008-03-20 16:17:35 EDT
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@redhat.com>
- Update HV to 3.1.1; fixes pv_ops 32-on-64 (bug #436859)
Comment 7 Fedora Update System 2008-03-21 18:14:08 EDT
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
Comment 8 Orion Poplawski 2008-03-24 12:26:56 EDT
Confirmed fixed with kernel-xen-2.6-2.6.21.7-3.fc8.  Thanks!
Comment 9 Fedora Update System 2008-03-26 13:16:59 EDT
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.