aboutsummaryrefslogtreecommitdiffstats
path: root/tools/xenstore/xs.c
diff options
context:
space:
mode:
authoremellor@leeni.uk.xensource.com <emellor@leeni.uk.xensource.com>2005-10-17 16:22:05 +0100
committeremellor@leeni.uk.xensource.com <emellor@leeni.uk.xensource.com>2005-10-17 16:22:05 +0100
commit706fcdf4de51d825c80d3695664df34bc5ea01ff (patch)
tree24d380192fd0a6cb5df9bd1f530c59cdac554034 /tools/xenstore/xs.c
parentdcd2f1cf1fb61742d669a959f552c774f36eb832 (diff)
downloadxen-706fcdf4de51d825c80d3695664df34bc5ea01ff.tar.gz
xen-706fcdf4de51d825c80d3695664df34bc5ea01ff.tar.bz2
xen-706fcdf4de51d825c80d3695664df34bc5ea01ff.zip
Have xenstored initialise its connections, meaning that xend can be out of
that loop completely -- the xc_init_store, initDomainStore calls can all go. Have xenstored understand where the local domain information goes. Xend no longer has to generate a path and pass it to xenstored through xs_introduce_domain -- we just allow xenstored to generate the path, and then call GetDomainPath later. There is still some work required to tidy this up. Change the uuid module to generate uuids as lists of bytes, not in the stringified form. Added a unit test for that module. Change the semantics of Xend restart, relying on these changes to the xenstored semantics and earlier changes to add an opaque handle to the hypervisor's domain-specific data block. The semantics are now clearer, as Xend can validate whether the details in the store match the current live domain. Added a usage statement to xenstored. Some of this code is by Steven Hand. Signed-off-by: Ewan Mellor <ewan@xensource.com>
Diffstat (limited to 'tools/xenstore/xs.c')
-rw-r--r--tools/xenstore/xs.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/tools/xenstore/xs.c b/tools/xenstore/xs.c
index 18e875e801..22710d5d01 100644
--- a/tools/xenstore/xs.c
+++ b/tools/xenstore/xs.c
@@ -674,12 +674,12 @@ bool xs_transaction_end(struct xs_handle *h, struct xs_transaction_handle *t,
*/
bool xs_introduce_domain(struct xs_handle *h,
unsigned int domid, unsigned long mfn,
- unsigned int eventchn, const char *path)
+ unsigned int eventchn)
{
char domid_str[MAX_STRLEN(domid)];
char mfn_str[MAX_STRLEN(mfn)];
char eventchn_str[MAX_STRLEN(eventchn)];
- struct iovec iov[4];
+ struct iovec iov[3];
sprintf(domid_str, "%u", domid);
sprintf(mfn_str, "%lu", mfn);
@@ -691,8 +691,6 @@ bool xs_introduce_domain(struct xs_handle *h,
iov[1].iov_len = strlen(mfn_str) + 1;
iov[2].iov_base = eventchn_str;
iov[2].iov_len = strlen(eventchn_str) + 1;
- iov[3].iov_base = (char *)path;
- iov[3].iov_len = strlen(path) + 1;
return xs_bool(xs_talkv(h, NULL, XS_INTRODUCE, iov,
ARRAY_SIZE(iov), NULL));