the older hotplug infrastructure does not, so we must be able to serialise the
block-sharing checks (etc) ourselves.
Redirect stderr to /var/log/xen-hotplug.log, for better debugging.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
want to end up with multiple watches on the same path, otherwise we get a
watch event storm after many such reboots or migrates.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
This transaction may be starved for a short while, and logging inside the while
loop won't help!
Use new xstransact.complete to tidy up one other transaction.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
the permission checking in xenstored.
Default the store permissions to read/write nobody (apart from the privileged
domain). Create a /local node with these permissions, ready for inheriting by
children. In Xend, create a /vm node with these permissions too, for the same
reason, and set the permissions on /local/domain/<domid> and each device
backend path to allow the guest domain to access these paths appropriately.
Added xstransact.{set_permissions,SetPermissions,mkdir,Mkdir,complete} as
support facilities.
This closes bug #290.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
parsed the same as xm list --long VM. This is only in Python 2.3 -- for
Python 2.2 we keep the old getopt.getopt behaviour.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
server, where it can be used on reboot and migrate as well as create.
Ballooning bugs may still exist (it is unclear) but this is certainly a good
step in the right direction.
Ignore the memory and maxmem entries in the store for dom0 when restarting.
This means that the value in use at the time becomes the configured target.
This should fix the bug whereby dom0_mem settings on the command line are
being overridden by (older) entries in the store.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
dependency between those two classes.
Split the XendDomain constructor into two pieces so that XendDomainInfo can
call XendDomain.instance even during the initial startup of XendDomain.
These two together mean that there is no need for the horrendous hack using
XendRoot.get_component to pass the singleton instance of XendDomain around.
Both XendRoot.get_component and XendRoot.add_component can go.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
created if the domain creation actually succeeded). Use total_memory not
free_memory to determine how big to make the domain -- when ballooning down of
dom0 works properly, creating a domain larger than free_memory is possible.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
the domain has gone away, then no-one can attach to the pty because Xend will
have cleaned up the entries in the store, so the pty will never become ready to
write. The buffer will never get emptied, so cleanup will never occur. This
leaks ptys, file descriptors, and memory. Simply throw those data away instead.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
xc has access to the page size for the platform and the Python layer does not,
so there was a hardcoded "/ 256" in there.
Rename the "memory" physinfo parameter to "total_memory", to match the usage
elsewhere.
Tidy the code generating the SXP for xm info.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
this macro where newlines have been appended -- the macro does this itself so
there is no need to add another one.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
separate fields. Update callers for new interface. Also
use int16_t as standard error code type on all public
interfaces.
Signed-off-by: Keir Fraser <keir@xensource.com>
interface defintions for future extensibility. In particular,
grant references are now 32 bits and this has some knock-on
effects on split-driver interfaces.
Signed-off-by: Keir Fraser <keir@xensource.com>
avoid weird buffering behaviour and obtain the pty name
via ptsname().
Signed-off-by: Ping Yu <ping.y.yu@intel.com>
Signed-off-by: Keir Fraser <keir@xensource.com>
The L2 page and already shadowed L1 page may be out of sync.
This fixes the problems of segmentation faults and strange prints
when booting Redhat FC3 and make kernel in FC3 in VMX domain.
Signed-off-by: Xiaofeng Ling <xiaofeng.ling@intel.com>