happen if there are watches in flight at the same time as a deregistration, and
also seems to happen spuriously on xend restart.
This fixes the Invalid token error that has been seen on xend restart.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
because we are already inside the ValueError exception handler, so we know that
the give device identifier is not an integer, and DevController.destroyDevice
only accepts integers. Fixes bug #315.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
the domain, to make it clear that it is a zombie, but this renaming cannot
check the uniqueness of the new name, because this causes a deadlock with
XendDomain. Instead, we allow the name to be non-unique for the case of
zombie domains.
Change the locking in waitForShutdown and state_set to be robust in the face of
exceptions.
Rename the STATE_VM_ constants to STATE_DOM_.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
and xenconsole out of /usr/libexec/xen and into one of /usr/lib/xen/bin or
/usr/lib64/xen/bin. Remove all the PATH hacking inside Xend, and rely upon
the PATH being set correctly from outside. Added an auxbin module for
handling the hacky stuff.
Replace the few /usr/bin/python bang paths with /usr/bin/env python.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
xc.domain_create call fails (eg, when ACM policy prevents creation of a
domain). When xc.domain_create fails, dompath never gets set.
Signed-off-by: Tom Lendacky <toml@us.ibm.com>
from nowhere at all.
Log to a temporary file if permission is denied to log to /var/log/xend.log,
as happens when you are not root. Fixes bug #305.
Remove all the log-related garbage from XendRoot -- just about every module
was going straight to XendLogging.log already, so there was no need to have
XendRoot replicate this functionality.
Remove XendRoot.event_handler, which hasn't been in use since the EventServer
was removed.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
handle on appropriate operations. Next step is to plug this
through to the store daemon and get rid of the nasty serialisation
mutex for transactions.
Signed-off-by: Keir Fraser <keir@xensource.com>
already seeded from the clock, so this is unnecessary, non-portable, and
expensive. This should improve start-up time of Xend. Replace twisty maze of
code with something sensible.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
construct method. This ensures that the domain will have any stale paths in
the store removed on restore.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
Allow xm block-detach to take a device name as well as a device ID. This
closes bug #285 and fixes xm-test's 01_block-destroy_btblock_pos.py and
02_block-destroy_rtblock_pos.py.
Rename and reconnect XendDomainInfo.configureDevice to reconfigureDevice.
There is nothing using this at the moment, mind you.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
tools. /dev/xen/evtchn is now used by daemons to connect to
remote domains: the advantage is that the local ports are garbage
collected automatically if the daemon dies. xen no longer
constructs end-to-end event-channel port pairs -- it allocates an
unbound port in new domU and writes that port to xenstore. It is
then picked up by teh appropriate daemon which does interdomain bind
via /dev/xen/evtchn.
Signed-off-by: Keir Fraser <keir@xensource.com>
exciting, but it's there to encourage the creation of more interesting ones. A
test target has been added to the main Makefile, and the one in tools/python.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
to be created with the same name, fixing the race condition inside XendDomain
that caused bug #278.
Move the state_set(TERMINATED) call onto the end of cleanupDomain rather than
destroyDomain, so that this flag is set when XendDomain cleans up a domain
that was killed without going through Xend.
Remove is_terminated, as this check is no longer necessary, since we are using
Zombie prefixes instead.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
be able to show them any longer, as the paths in the store have gone. Don't
call cleanupVm when a domain dies, as localhost-migrating VMs will be blown
away by this (there is actually a race between the saving process and the
resuming process). This fixes bug #276.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
sure that the child's pipes are closed even under that exception. Move the
handling of POLLHUP to the end of the loop, so that we guarantee to read any
remaining data from the child if POLLHUP and POLLIN appear at the same time.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
#280. The cpu/<id>/availability paths had moved into /vm, but that is not
easily accessible by the hotplugging driver, so I have created a /vm entry
called vcpu_avail, so that the setting migrates along with the domain, and
moved the cpu/<id> ones back to /local/domain.
Don't try and destroy the domain twice if it fails within construct. This
wasn't harming anything, but there's no need.
Signed-off-by: Ewan Mellor <ewan@xensource.com>