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

[Xen-users] RE: xenoprof: operation 9 failed for dom0 (status: -1)


  • To: Dante Cinco <dantecinco@xxxxxxxxx>
  • From: "Santos, Jose Renato G" <joserenato.santos@xxxxxx>
  • Date: Wed, 11 Nov 2009 08:16:03 +0000
  • Accept-language: en-US
  • Acceptlanguage: en-US
  • Cc: Xen-users <xen-users@xxxxxxxxxxxxxxxxxxx>
  • Delivery-date: Wed, 11 Nov 2009 00:17:36 -0800
  • List-id: Xen user discussion <xen-users.lists.xensource.com>
  • Thread-index: AcpiOt7AKR+pi1xJSE606mWF/+Jn3QAbAiaw
  • Thread-topic: xenoprof: operation 9 failed for dom0 (status: -1)

I think I found the bug.
This patch should fix it.
Please let me know if it works

Thanks

Renato

diff -r 7422afed66ee xen/common/xenoprof.c
--- a/xen/common/xenoprof.c     Mon Sep 07 08:53:07 2009 +0100
+++ b/xen/common/xenoprof.c     Tue Nov 10 23:45:48 2009 -0800
@@ -681,8 +681,9 @@ int do_xenoprof_op(int op, XEN_GUEST_HAN
     {
     case XENOPROF_init:
         ret = xenoprof_op_init(arg);
-        if ( !ret )
-            xenoprof_state = XENOPROF_INITIALIZED;
+        if ( (ret == 0) &&
+             (current->domain == xenoprof_primary_profiler) )
+                xenoprof_state = XENOPROF_INITIALIZED;
         break;
 
     case XENOPROF_get_buffer:
 

> -----Original Message-----
> From: Dante Cinco [mailto:dantecinco@xxxxxxxxx] 
> Sent: Tuesday, November 10, 2009 11:21 AM
> To: Santos, Jose Renato G
> Cc: Xen-users
> Subject: Re: xenoprof: operation 9 failed for dom0 (status: -1)
> 
> As you can see from the output of "opreport -l" below, most 
> of the cycles are coming from domain1-modules so I do need to 
> focus on --active-domains=1 since --passive-domains=1 does 
> not provide the profiling details for the domU modules.
> 
> The steps described in the xenoprof tutorial for active 
> domains is pretty straightforward but I cannot get past the 
> "write error" when I run "opcontrol --start" in dom0.
> 
> After running "opcontrol --start" in domU, I see the response 
> below and I use lsmod to verify that oprofile module is 
> loaded. Given the results from --passive-domains=1, the dom0 
> and Xenoprof interface is working. It's the domU and dom0 
> interface that has some problem. Is there some other way I 
> can tell from dom0 that domU is "ready" before running 
> "opcontrol --start" in dom0?
> 
> FYI: I'm using the same oprofile-0.9.3 with xen-r2.patch in 
> dom0 and domU. If I boot the Debian 2.6.30.1 kernel (the same 
> one I'm using in domU) in bare-metal (no Xen VMM), I'm able 
> to successfully run oprofile-0.9.3.
> 
> opcontrol --start (from domU before "opcontrol --start" in dom0):
> Using 2.6+ OProfile kernel interface.
> Reading module info.
> Using log file /var/lib/oprofile/samples/oprofiled.log
> Daemon started.
> Profiler running.
> 
> opreport -l (from dom0 using --passive-domains=1 
> --passive-images=/boot/vmlinux-2.6.30.1):
> CPU: Core 2, speed 2533.51 MHz (estimated) Counted 
> CPU_CLK_UNHALTED events (Clock cycles when not halted) with a 
> unit mask of 0x00 (Unhalted core cycles) count 100000
> samples  %        image name               app name           
>       symbol name
> 617835   38.6156  domain1-modules          domain1-modules    
>       (no symbols)
> 448911   28.0576  domain1-xen-unknown      
> domain1-xen-unknown      (no symbols)
> 72460     4.5289  domain1-kernel           domain1-kernel     
>       __down
> 43294     2.7059  domain1-kernel           domain1-kernel     
>       __down_killable
> 34145     2.1341  domain1-kernel           domain1-kernel     
>       validate_slab_slab
> 
> Dante
> 
> 
> On Tue, Nov 10, 2009 at 10:22 AM, Santos, Jose Renato G 
> <joserenato.santos@xxxxxx> wrote:
> 
> 
>       With passive domains you cannot have detailed profiling 
> information on modules, only in kernel builtin functions and 
> on Xen. All the samples associated with modules will be 
> grouped under the same symbol "domain1-modules".
>       If you are interested in one particular module you 
> should try to recompile the kernel with the associated code 
> builtin (or you can use active domains, but follow the steps 
> on the xenoprof tutorial to coordinate opcontrol in dom0 and 
> in the guest) 
>        
>       Renato
> 
> 
> ________________________________
> 
>               
>               From: Dante Cinco [mailto:dantecinco@xxxxxxxxx] 
>               
>               Sent: Tuesday, November 10, 2009 10:13 AM
> 
>               To: Santos, Jose Renato G
>               Cc: Xen-users
>               Subject: Re: xenoprof: operation 9 failed for 
> dom0 (status: -1)
>               
> 
>               Renato,
>               
>               I think I'm making progress. I followed your 
> suggestion of using --passive-domains and --passive-images. 
> When I run opreport, it is unable to find /domain1-modules 
> and /domain1-xen-unknown. Where or how do I specify the 
> kernel modules I have running in domU/domain1? I tried 
> copying the *.ko files in /boot in dom0 and used 
> --image-path=/boot in opreport and it is still not finding them.
>               
>               Thanks.
>               
>               Dante
>               
>               
>               On Mon, Nov 9, 2009 at 6:44 PM, Santos, Jose 
> Renato G <joserenato.santos@xxxxxx> wrote:
>               
> 
>                       Try replacing "--active-domains=1" with 
> "--passive-domains=1 passive-images=<domU-kernel-image>" (use 
> the uncompressed version of your kernel image for the guest,  
> vmlinux-*)
>                        
>                       To use "active-domains" you need to run 
> opcontrol in the guest in addition to running it in dom0 and 
> you need to coordinate the execution of both instances.. This 
> require the guest opcontrol to be ready before running 
> "opcontrol --start" in dom0. That is why it is failing. I 
> suspect you have not executed opcontrol in the guest
>                       Using active-domains is very tricky. I 
> suggest that you use --passive-domains, unless you really 
> need active domains (it is only useful in case you need 
> detailed profiles for user processes running in the guest)
>                        
>                       Renato 
>                       
> 
> ________________________________
> 
>                               
>                               From: Dante Cinco 
> [mailto:dantecinco@xxxxxxxxx] 
>                               
>                               Sent: Monday, November 09, 2009 6:13 PM 
> 
>                               To: Santos, Jose Renato G
>                               
>                               Cc: Xen-users
>                               Subject: Re: xenoprof: 
> operation 9 failed for dom0 (status: -1)
>                               
>                               
>                               Renato,
>                               
>                               I've narrowed down the 
> opcontrol command sequence that causes the "write error" I'm 
> having. If I just run "opcontrol --start" in dom0, it runs 
> with no error and after "opcontrol --shutdown" I can run 
> "opreport" and get a real report.
>                               
>                               If I run "opcontrol 
> --start-daemon --active-domains=1" in dom0, run "opcontrol 
> --start" in domU (ID#1) and go back to dom0 and run 
> "opcontrol --start" I get the "write error" message. It's as 
> if "--start-daemon" is grabbing the file handle for 
> /dev/oprofile/enable so when "--start" tries to write "1" to 
> /dev/oprofile/enable, it is unable to do so because it is 
> already locked.
>                               
>                               So I can run OProfile in normal 
> (non-Xen) mode but as soon I start using "--start-daemon" I 
> have problems. To me it seems like a Xenoprofile problem.
>                               
>                               I'm using OProfile 0.9.3 and 
> oprofile-0.9.3-xen-r2.patch applied successfully.
>                               
>                               Dante   
>                               
>                               
>                               On Thu, Nov 5, 2009 at 6:05 PM, 
> Santos, Jose Renato G <joserenato.santos@xxxxxx> wrote:
>                               
> 
>                                       What version of 
> OProfile are you using?
>                                       Did you apply the Xen 
> patch available in http://xenoprof.sourceforge.net ?
>                                        
>                                       Renato
> 
> ________________________________
> 
>                                               From: Dante 
> Cinco [mailto:dantecinco@xxxxxxxxx] 
>                                               Sent: Thursday, 
> November 05, 2009 5:16 PM
>                                               To: Santos, 
> Jose Renato G
>                                               Cc: Xen-devel
>                                               Subject: 
> xenoprof: operation 9 failed for dom0 (status: -1)
>                                               
>                                               Renato,
>                                               
>                                               When I tried 
> running "opcontrol --start" (after previously running 
> "opcontrol --start-daemon") in dom0, I get this error message:
>                                               
>                                               
> /usr/local/bin/opcontrol: line 1639: echo: write error: 
> Operation not permitted
>                                               
>                                               and this 
> message in the Xen console:
>                                               
>                                               (XEN) xenoprof: 
> operation 9 failed for dom 0 (status : -1)
>                                               
>                                               It looks like 
> opcontrol is trying to do this: echo 1 > /dev/oprofile/enable
>                                               
>                                               and it is 
> failing. "operation 9" maps to XENOPROF_start which is 
> consistent with running "opcontrol --start." At first, I 
> ignored the error because it gave the indication "Profiler 
> running" but after I ran "opcontrol --shutdown" followed by 
> "opreport" in dom0, I got this error message:
>                                               
>                                               error: no 
> sample files found: profile specification too strict ?
>                                               
>                                               Do you know why 
> the write error is occurring? I followed the steps in 
> xenoprof_tutorial.ppt.
>                                               
>                                               Dante
>                                               
> 
> 
> 
> 
> 

Attachment: fix_xenoprof_active.patch
Description: fix_xenoprof_active.patch

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

 


Rackspace

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