From: Michal Novotny <minovotn@redhat.com>
To: Keir Fraser <keir.fraser@eu.citrix.com>
Cc: "xen-devel@lists.xensource.com" <xen-devel@lists.xensource.com>
Subject: Re: Re: Xen-unstable save error
Date: Mon, 21 Jun 2010 15:37:01 +0200 [thread overview]
Message-ID: <4C1F6AFD.8070805@redhat.com> (raw)
In-Reply-To: <C8452690.180FC%keir.fraser@eu.citrix.com>
On 06/21/2010 03:24 PM, Keir Fraser wrote:
> On 21/06/2010 14:18, "Michal Novotny"<minovotn@redhat.com> wrote:
>
>
>> So there's no xs_suspend_evtchn_port (or anything xs_*) function being
>> exported by /usr/lib64/libxenctrl.so (which is the symlink to
>> /usr/lib64/libxenctrl.so.4.0.0), therefore:
>>
>> #objdump -x /usr/lib64/libxenctrl.so.4.0.0 | grep xs_
>> #objdump -x /xen-unstable.hg/tools/libxc/libxenctrl.so.4.0.0 | grep xs_
>>
> Libxenstore, libxenstore, libxen**STORE**.
>
> #nm /my/path/to/libxenstore.so.3.0.0 | grep xs_sus
> 000000000000346a T xs_suspend_evtchn_port
>
> -- Keir
>
>
>
Oh, sorry for that and thanks for noticing my mistake. I overlooked this
one, nevertheless it's still not working:
[2010-06-21 17:27:39 4305] DEBUG (XendCheckpoint:126) [xc_save]:
/usr/lib64/xen/bin/xc_save 56 1 0 0 4
[2010-06-21 17:27:39 4305] INFO (XendCheckpoint:410) xc_save: failed to
get the suspend evtchn port
[2010-06-21 17:27:39 4305] INFO (XendCheckpoint:410)
[2010-06-21 17:27:39 4305] DEBUG (XendCheckpoint:381) suspend
[2010-06-21 17:27:39 4305] DEBUG (XendCheckpoint:129) In
saveInputHandler suspend
[2010-06-21 17:27:39 4305] DEBUG (XendCheckpoint:131) Suspending 1 ...
[2010-06-21 17:27:39 4305] DEBUG (XendDomainInfo:521)
XendDomainInfo.shutdown(suspend)
[2010-06-21 17:27:39 4305] DEBUG (XendDomainInfo:1877)
XendDomainInfo.handleShutdownWatch
[2010-06-21 17:27:39 4305] INFO (XendDomainInfo:538) HVM save:remote
shutdown dom 1!
[2010-06-21 17:27:39 4305] INFO (XendCheckpoint:137) Domain 1 suspended.
[2010-06-21 17:27:39 4305] INFO (XendDomainInfo:2074) Domain has
shutdown: name=migrating-rhel5-32fv-stubdom id=1 reason=suspend.
[2010-06-21 17:27:40 4305] INFO (image:538) signalDeviceModel:restore dm
state to running
[2010-06-21 17:27:40 4305] DEBUG (XendCheckpoint:146) Written done
[2010-06-21 17:27:46 4305] DEBUG (XendDomainInfo:3067)
XendDomainInfo.destroy: domid=1
[2010-06-21 17:27:46 4305] DEBUG (XendDomainInfo:2397) Destroying device
model
[2010-06-21 17:27:47 4305] INFO (image:615) migrating-rhel5-32fv-stubdom
device model terminated
# ls -al rhel5-32fv.sav
-rwxr-xr-x 1 root root 54657427 Jun 21 17:27 rhel5-32fv.sav
# xm restore rhel5-32fv.sav
Error: /usr/lib64/xen/bin/xc_restore 4 2 2 3 1 1 1 0 failed
Usage: xm restore <CheckpointFile> [-p]
Restore a domain from a saved state.
-p, --paused Do not unpause domain after restoring it
# tail /var/log/xen/xend.log
[2010-06-21 17:29:21 4305] INFO (image:822) Need to create platform
device.[domid:2]
[2010-06-21 17:29:21 4305] DEBUG (XendCheckpoint:273)
restore:shadow=0x9, _static_max=0x40000000, _static_min=0x0,
[2010-06-21 17:29:21 4305] DEBUG (XendCheckpoint:292) [xc_restore]:
/usr/lib64/xen/bin/xc_restore 4 2 2 3 1 1 1 0
[2010-06-21 17:29:22 4305] INFO (XendCheckpoint:410) xc: error: Error
when reading batch size (0 = Success): Internal error
[2010-06-21 17:29:22 4305] INFO (XendCheckpoint:410) xc: error: error
when buffering batch, finishing (0 = Success): Internal error
[2010-06-21 17:29:22 4305] INFO (XendCheckpoint:410) xc: error: error
zeroing magic pages (22 = Invalid argument): Internal error
[2010-06-21 17:29:22 4305] DEBUG (XendDomainInfo:3067)
XendDomainInfo.destroy: domid=2
[2010-06-21 17:29:22 4305] ERROR (XendDomainInfo:3081)
XendDomainInfo.destroy: domain destruction failed.
Traceback (most recent call last):
File "usr/lib64/python2.4/site-packages/xen/xend/XendDomainInfo.py",
line 3074, in destroy
xc.domain_pause(self.domid)
Error: (3, 'No such process')
[2010-06-21 17:29:22 4305] DEBUG (XendDomainInfo:2402) No device model
[2010-06-21 17:29:22 4305] DEBUG (XendDomainInfo:2404) Releasing devices
[2010-06-21 17:29:22 4305] DEBUG (XendDomainInfo:2410) Removing vif/0
[2010-06-21 17:29:22 4305] DEBUG (XendDomainInfo:1272)
XendDomainInfo.destroyDevice: deviceClass = vif, device = vif/0
[2010-06-21 17:29:22 4305] DEBUG (XendDomainInfo:2410) Removing vbd/768
[2010-06-21 17:29:22 4305] DEBUG (XendDomainInfo:1272)
XendDomainInfo.destroyDevice: deviceClass = vbd, device = vbd/768
[2010-06-21 17:29:22 4305] DEBUG (XendDomainInfo:2410) Removing vbd/2048
[2010-06-21 17:29:22 4305] DEBUG (XendDomainInfo:1272)
XendDomainInfo.destroyDevice: deviceClass = vbd, device = vbd/2048
[2010-06-21 17:29:22 4305] DEBUG (XendDomainInfo:2410) Removing vfb/0
[2010-06-21 17:29:22 4305] DEBUG (XendDomainInfo:1272)
XendDomainInfo.destroyDevice: deviceClass = vfb, device = vfb/0
[2010-06-21 17:29:22 4305] DEBUG (XendDomainInfo:2410) Removing console/0
[2010-06-21 17:29:22 4305] DEBUG (XendDomainInfo:1272)
XendDomainInfo.destroyDevice: deviceClass = console, device = console/0
[2010-06-21 17:29:22 4305] ERROR (XendCheckpoint:344)
/usr/lib64/xen/bin/xc_restore 4 2 2 3 1 1 1 0 failed
Traceback (most recent call last):
File "/usr/lib64/python2.4/site-packages/xen/xend/XendCheckpoint.py",
line 296, in restore
forkHelper(cmd, fd, handler.handler, True)
File "/usr/lib64/python2.4/site-packages/xen/xend/XendCheckpoint.py",
line 398, in forkHelper
raise XendError("%s failed" % string.join(cmd))
XendError: /usr/lib64/xen/bin/xc_restore 4 2 2 3 1 1 1 0 failed
[2010-06-21 17:29:22 4305] ERROR (XendDomain:1182) Restore failed
Traceback (most recent call last):
File "usr/lib64/python2.4/site-packages/xen/xend/XendDomain.py", line
1166, in domain_restore_fd
dominfo = XendCheckpoint.restore(self, fd, paused=paused,
relocating=relocating)
File "/usr/lib64/python2.4/site-packages/xen/xend/XendCheckpoint.py",
line 345, in restore
raise exn
XendError: /usr/lib64/xen/bin/xc_restore 4 2 2 3 1 1 1 0 failed
So now it seems to be linked with the correct library but it can't get
the suspend port by now:
>> xc_save: failed to get the suspend evtchn port
This is being called from xc_save.c (snippet from line 192):
...
port = xs_suspend_evtchn_port(si.domid);
if (port < 0)
warnx("failed to get the suspend evtchn port\n");
else {
... suspend...
}
I had a look at the code for xenstore/xs.c I saw it's reading the value at:
/local/domain/%d/device/suspend/event-channel
but when I try to get it using:
xenstore-ls /local/domain/3/device/suspendupstream
where 3 is my domid I saw nothing, I saw just:
# xenstore-ls /local/domain/3/device
vfb = ""
0 = ""
state = "1"
backend-id = "0"
backend = "/local/domain/0/backend/vfb/3/0"
vbd = ""
768 = ""
backend-id = "0"
virtual-device = "768"
device-type = "disk"
state = "1"
backend = "/local/domain/0/backend/vbd/3/768"
2048 = ""
backend-id = "0"
virtual-device = "2048"
device-type = "disk"
state = "1"
backend = "/local/domain/0/backend/vbd/3/2048"
vif = ""
0 = ""
state = "1"
backend-id = "0"
backend = "/local/domain/0/backend/vif/3/0"
console = ""
0 = ""
state = "1"
backend-id = "0"
backend = "/local/domain/0/backend/console/3/0"
#
My guest is RHEL-5 i386 guest but this seems that the suspend port is
missing. AFAIK, you started using the SUSPEND_CANCEL some time ago which
requires the modified kernel.
Isn't it possible that's the issue or how is it with the SUSPEND_CANCEL
functionality?
Thanks,
Michal
--
Michal Novotny<minovotn@redhat.com>, RHCE
Virtualization Team (xen userspace), Red Hat
next prev parent reply other threads:[~2010-06-21 13:37 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-06-21 11:15 Xen-unstable save error Michal Novotny
2010-06-21 12:05 ` Keir Fraser
2010-06-21 12:38 ` Michal Novotny
2010-06-21 12:44 ` Keir Fraser
2010-06-21 12:47 ` Michal Novotny
2010-06-21 12:56 ` Keir Fraser
2010-06-21 13:10 ` Michal Novotny
2010-06-21 13:11 ` Keir Fraser
2010-06-21 12:57 ` Michal Novotny
2010-06-21 13:08 ` Keir Fraser
2010-06-21 13:18 ` Michal Novotny
2010-06-21 13:24 ` Keir Fraser
2010-06-21 13:37 ` Michal Novotny [this message]
2010-06-21 13:45 ` Keir Fraser
2010-06-21 14:02 ` Michal Novotny
2010-06-21 14:06 ` Keir Fraser
2010-06-21 14:09 ` Michal Novotny
2010-06-21 14:50 ` Michal Novotny
2010-06-21 17:57 ` Keir Fraser
2010-06-22 5:38 ` Michal Novotny
2010-06-22 5:58 ` Keir Fraser
2010-06-22 6:23 ` Michal Novotny
2010-06-22 6:48 ` Jan Beulich
2010-06-22 6:51 ` Keir Fraser
2010-06-22 7:12 ` Jan Beulich
2010-06-22 7:36 ` Keir Fraser
2010-06-22 7:38 ` Michal Novotny
2010-06-22 10:01 ` Keir Fraser
2010-06-22 10:05 ` Michal Novotny
2010-06-22 10:23 ` Keir Fraser
2010-06-22 10:53 ` Michal Novotny
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4C1F6AFD.8070805@redhat.com \
--to=minovotn@redhat.com \
--cc=keir.fraser@eu.citrix.com \
--cc=xen-devel@lists.xensource.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).