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

[Xen-devel] Xenalyze questions



I've been trying to use xenalyze to investigate some problems on our Xen 4.2.2 
based product and have run into a couple of issues:

First, I ran into problem running xenalyze on 64-bit Linux because some of the 
trace data structures were not properly packed  - I worked around this by 
adding the packed attribute where needed but I suspect there is a more elegant 
solution (see attached patch).

With that out of the way, I am now running it on a trace file and it craps out 
in the following code because e->pf_case has a large -ve value (presumably 
uninitialized):
 
void shadow_mmio_postprocess(struct hvm_data *h)
{
    struct pf_xen_extra *e = &h->inflight.pf_xen;
    if ( opt.summary_info )
    {
        if(e->pf_case)
=>          update_summary(&h->summary.pf_xen[e->pf_case],
                           h->arc_cycles);
        else
            fprintf(warn, "Strange, pf_case 0!\n");
 
        hvm_update_short_summary(h, HVM_SHORT_SUMMARY_MMIO);
    }
 
    if(opt.with_mmio_enumeration)
        enumerate_mmio(h);
}
 
The output from running the program is:
 
Starting program: /home/sgraham/sandbox/Community/xenalyze/xenalyze ~/tmp/e.evt
No output defined, using summary.
Using VMX hardware-assisted virtualization.
scan_for_new_pcpu: Activating pcpu 0 at offset 0
Creating vcpu 0 for dom 32768
scan_for_new_pcpu: Activating pcpu 1 at offset 1560
Creating vcpu 1 for dom 32768
scan_for_new_pcpu: Activating pcpu 2 at offset 1772
Creating vcpu 2 for dom 32768
scan_for_new_pcpu: Activating pcpu 3 at offset 68428
Creating vcpu 3 for dom 32768
scan_for_new_pcpu: Activating pcpu 5 at offset 68520
Creating vcpu 5 for dom 32768
scan_for_new_pcpu: Activating pcpu 10 at offset 73632
Creating vcpu 10 for dom 32768
scan_for_new_pcpu: Activating pcpu 11 at offset 90588
Creating vcpu 11 for dom 32768
init_pcpus: through first trace write, done for now.
hvm_generic_postprocess_init: Strange, h->postprocess set!
 
Program received signal SIGSEGV, Segmentation fault.
0x0000000000402888 in update_summary (s=0x7fe8aa769ca8, c=23368) at 
xenalyze.c:2244
 
This is using Xen 4.2.2 with several VMs running (32-bit Win7, 64-bit HVM 
Linux, 64-bit Win8). The trace file was generated by a 10s run of 'xentrace -e 
all' and is 200MB so I haven't attached it!
 
I suspect the problem is related to the specific set of trace records being 
output but I'm having a hard time grok'ing the code - Any suggestions welcome!

Simon Graham



Attachment: xenalyze-packed.patch
Description: xenalyze-packed.patch

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel

 


Rackspace

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