xm dump-core options are useless

View: New views
6 Messages — Rating Filter:   Alert me  

xm dump-core options are useless

by John Levon :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


This cset:

changeset:   11473:0008fca70351
date:        Thu Sep 14 08:19:38 2006 +0100
description:
xm dump command add on

xm dump-core [-L|--live][-C| --crash] <domID> [output path]

Didn't actually implement anything. Worse, it looks like we don't even
pause the domain, so it's always live (not good). What's going on?

regards
john

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

Re: xm dump-core options are useless

by Akio Takebe :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi, John

John Levon wrote:

> This cset:
>
> changeset:   11473:0008fca70351
> date:        Thu Sep 14 08:19:38 2006 +0100
> description:
> xm dump command add on
>
> xm dump-core [-L|--live][-C| --crash] <domID> [output path]
>
> Didn't actually implement anything. Worse, it looks like we don't even
> pause the domain, so it's always live (not good). What's going on?
>
What do you mean? Why do you think "it looks like we don't even
pause the domain"? The following code of the patch looks like
we do pause domain by server.xend.domain.pause(dom).

+def xm_dump_core(args):
+    arg_check(args, "dump-core",1,3)
+    live = False
+    crash = False
+    import getopt
+    (options, params) = getopt.gnu_getopt(args, 'LC', ['live','crash'])
+
+    for (k, v) in options:
+        if k in ['-L', '--live']:
+            live = True
+        if k in ['-C', '--crash']:
+            crash = True
+
+    if len(params) == 0 or len(params) > 2:
+        err("invalid number of parameters")
+        usage("dump-core")
+
+    dom = params[0]
+    if len(params) == 2:
+        filename = os.path.abspath(params[1])
+    else:
+        filename = None
+
+    if not live:
+        server.xend.domain.pause(dom) <<< HERE
+
+    try:
+        print "dumping core of domain:%s ..." % str(dom)
+        server.xend.domain.dump(dom, filename, live, crash)
+    finally:
+        if not live:
+            server.xend.domain.unpause(dom)
+
+    if crash:
+        print "destroying domain:%s ..." % str(dom)
+        server.xend.domain.destroy(dom)
+

Best Regards,

Akio Takebe

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

Re: xm dump-core options are useless

by Keir Fraser-3 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On 5/9/08 00:49, "John Levon" <levon@...> wrote:

> changeset:   11473:0008fca70351
> date:        Thu Sep 14 08:19:38 2006 +0100
> description:
> xm dump command add on
>
> xm dump-core [-L|--live][-C| --crash] <domID> [output path]
>
> Didn't actually implement anything. Worse, it looks like we don't even
> pause the domain, so it's always live (not good). What's going on?

I think you're looking at the wrong changeset, perhaps. It certainly has the
appearance of possessing the requisite moving parts.

 -- Keir



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

Re: xm dump-core options are useless

by John Levon :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Fri, Sep 05, 2008 at 11:09:39AM +0900, Akio Takebe wrote:

> >xm dump-core [-L|--live][-C| --crash] <domID> [output path]
> >
> >Didn't actually implement anything. Worse, it looks like we don't even
> >pause the domain, so it's always live (not good). What's going on?
> >
> What do you mean? Why do you think "it looks like we don't even
> pause the domain"? The following code of the patch looks like
> we do pause domain by server.xend.domain.pause(dom).

You are doing this stuff in xm which I missed due to the pointless
passing in of 'live' and 'crash' in the xend API.

This should be happening in the server not in the client if you're going
to pass the options in. In particular libvirt, but anything else that
isn't 'xm', is forced to do live dumps - not good.

I'll send a patch out shortly that implements them in the proper place.

> +    if not live:
> +        server.xend.domain.pause(dom) <<< HERE
> +
> +    try:
> +        print "dumping core of domain:%s ..." % str(dom)
> +        server.xend.domain.dump(dom, filename, live, crash)
> +    finally:
> +        if not live:
> +            server.xend.domain.unpause(dom)

BTW this is buggy if the domain was already paused.

regards
john

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

Re: xm dump-core options are useless

by Masaki Kanno :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

>> +    if not live:
>> +        server.xend.domain.pause(dom) <<< HERE
>> +
>> +    try:
>> +        print "dumping core of domain:%s ..." % str(dom)
>> +        server.xend.domain.dump(dom, filename, live, crash)
>> +    finally:
>> +        if not live:
>> +            server.xend.domain.unpause(dom)
>
>BTW this is buggy if the domain was already paused.

Hi John,

It was fixed by changeset 15888.

Best regards,
 Kan



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

Re: xm dump-core options are useless

by Akio Takebe :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

John Levon wrote:

> On Fri, Sep 05, 2008 at 11:09:39AM +0900, Akio Takebe wrote:
>
>>> xm dump-core [-L|--live][-C| --crash] <domID> [output path]
>>>
>>> Didn't actually implement anything. Worse, it looks like we don't even
>>> pause the domain, so it's always live (not good). What's going on?
>>>
>> What do you mean? Why do you think "it looks like we don't even
>> pause the domain"? The following code of the patch looks like
>> we do pause domain by server.xend.domain.pause(dom).
>
> You are doing this stuff in xm which I missed due to the pointless
> passing in of 'live' and 'crash' in the xend API.
>
> This should be happening in the server not in the client if you're going
> to pass the options in. In particular libvirt, but anything else that
> isn't 'xm', is forced to do live dumps - not good.
>
> I'll send a patch out shortly that implements them in the proper place.
>
Yes, I agree with you. I also think it is not good.

We implemented it before for improving xend downtime at dump-core.
http://lists.xensource.com/archives/html/xen-devel/2007-09/msg00576.html

Best Regards,

Akio Takebe

_______________________________________________
Xen-devel mailing list
Xen-devel@...
http://lists.xensource.com/xen-devel
LightInTheBox - Buy quality products at wholesale price!