diff options
author | kfraser@localhost.localdomain <kfraser@localhost.localdomain> | 2007-05-24 15:21:29 +0100 |
---|---|---|
committer | kfraser@localhost.localdomain <kfraser@localhost.localdomain> | 2007-05-24 15:21:29 +0100 |
commit | be422ace19118d2bf8415bfcaeda9fdf06b50bd4 (patch) | |
tree | 83de32092d8532a4462e981303ac64fef4f7a4f7 /tools/misc/xen-python-path | |
parent | 26e96c98bc70466a5f366d4baf9b58f0b0365fb8 (diff) | |
download | xen-be422ace19118d2bf8415bfcaeda9fdf06b50bd4.tar.gz xen-be422ace19118d2bf8415bfcaeda9fdf06b50bd4.tar.bz2 xen-be422ace19118d2bf8415bfcaeda9fdf06b50bd4.zip |
xend: Fix for removing devices at save/destroy domain.
The function XendDomainInfo:_releaseDevices() is called during the
save/destroy phase of a domain. It made some attempt to clean up the
devices, but wasn't complete, leaving dangling devices in the
xenstore. Not a big problem with normal use of Xen, but a buildup over
a large number of save/destroy instances, it would make the xenstore
database grow quite large, which in turn meant swap-thrashing in Dom0.
This patch makes use of the destroyDevices() function in
XendDomainInfo. This function needed some re-writing to make it work
correctly - I think it had some old code (not sure how old, as xm
annotate says that it's changeset 12071, but that, I think, is when it
was split out from XendDomain.py, rather than when it was created).
I have tested this over a few hundred save/restore cycles [two domains
constantly saved/restored with a short sleep to let them process some
work] combined with a loop of "xenstore-ls|wc". The output of the
latter is pretty much constant (it obviously varies a bit depending on
when in the save/restore cycle it hits). Previously, it would increase
by some 10 lines or so per save/restore cycle.
Signed-off-by: Mats Petersson <mats.petersson@amd.com>
Diffstat (limited to 'tools/misc/xen-python-path')
0 files changed, 0 insertions, 0 deletions