aboutsummaryrefslogtreecommitdiffstats
path: root/tools/xenstore/xenstored_domain.h
Commit message (Collapse)AuthorAgeFilesLines
* xenstored: allow guest to shutdown all its watches/transactionsOlaf Hering2011-09-151-0/+3
| | | | | | | | | | | | | | | | During kexec all old watches have to be removed, otherwise the new kernel will receive unexpected events. Allow a guest to reset itself and cleanup all of its watches and transactions. Add a new XS_RESET_WATCHES command to do the reset on behalf of the guest. (Changes by iwj: specify the argument to be a single nul byte. Permit read-only clients to use the new command.) Signed-off-by: Olaf Hering <olaf@aepfle.de> Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com> Committed-by: Ian Jackson <ian.jackson@eu.citrix.com>
* libxc: convert evtchn interfaces to use an opaque handle typeIan Campbell2010-12-231-2/+1
| | | | | | | | | | | | This makes the interface consistent with the changes made to the main interface in 21483:779c0ef9682c. Also fix some references to "struct xc_interface" which should have been simply "xc_interface" in tools/xenpaging, and update QEMU_TAG to pull in the corresponding qemu change. Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
* New XS_SET_TARGETKeir Fraser2008-01-231-0/+3
| | | | | | | | | | | Stubdomains (and probably other domain disagregation elements too) need to be able to tinker with another domain. This adds XS_SET_TARGET so that XenStore allows domains to have permissions on files on which the "target" has permissions. This also adds xs_set_target, called by the domain builder when the 'target' option is used in the configuration. Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
* Fix xenstore entry accountingkfraser@localhost.localdomain2007-05-301-0/+1
| | | | | | | | | xenstored is incorrectly accounting domain nodes when transactions fail. Store pending count changes in the transaction structure, and apply at transaction completion, instead of directly applying the changes. Signed-off-by: Max Zhen <max.zhen@sun.com>
* xenstore: add XS_RESUME command; export it to xend.kfraser@localhost.localdomain2007-01-191-0/+3
| | | | | | | | This clears the shutdown flag for a domain in xenstore, allowing subsequent shutdowns of the same domain to fire the appropriate watches. Signed-off-by: Brendan Cully <brendan@cs.ubc.ca>
* Fix handling of the entries-per-domain quota. Entries which are created byEwan Mellor2006-11-131-2/+2
| | | | | | | | | | | | | the guest but deleted by dom0 were remaining accounted against the guest, which meant that the guest would eventually run out of quota. This patch also prevents unprivileged domains from changing the owner of a node. One guest could attack another by creating nodes and then transferring them to the ownership of another, and though the accounting could be made to work properly in this case, domains should never be transferring nodes in any case, so it seems safer just to disallow the operation entirely. Signed-off-by: Ewan Mellor <ewan@xensource.com>
* dom0 and anonymous connections can create unlimited sized entries in the store.vhanquez@kneesa.uk.xensource.com2006-05-111-0/+2
| | | | | Signed-off-by: Vincent Hanquez <vincent@xensource.com>
* add quota to xenstored.vhanquez@kneesa.uk.xensource.com2006-04-131-0/+8
| | | | | Signed-off-by: Vincent Hanquez <vincent@xensource.com>
* Change the semantics of GetDomainPath so that it always succeeds, regardless ofemellor@leeni.uk.xensource.com2005-10-231-0/+3
| | | | | | | | | | | | | | | | | | | | | whether a domain has been introduced to the store. Added a separate message XS_IS_DOMAIN_INTRODUCED and API for that (xs_is_domain_introduced) to determine whether the domain has really been introduced. This change means that the tools can determine the correct domain path earlier in the domain creation process, which is particularly a factor with live migration, as it allows us to create the devices earlier in the process, and unpause the new domain before performing the introduce. Until recently we already had these features, but the simplification of the interface between xend and xenstored caused breakage. No longer clear out the domain path when a domain is introduced -- this was a hack to work around the recent problematic semantics of GetDomainPath. Do not write the contents of the info block to the store. All the configuration info is written to the /vm path, and anything else in the info block is either dealt with explicitly or is ephemeral and has no place in the store. Signed-off-by: Ewan Mellor <ewan@xensource.com>
* User tools send evtchn notifications via /dev/xen/evtchnkaf24@firebug.cl.cam.ac.uk2005-10-061-1/+1
| | | | | | | | rather than using hypercall directly. Signed-off-by: Keir Fraser <keir@xensource.com>
* Fix up testsuite from recent changes.cl349@firebug.cl.cam.ac.uk2005-09-131-4/+0
| | | | | | | | | | | | | | | (1) Make TESTDIR relative (my directory exceeded 108 chars, breaking sockets) (2) Make TESTDIR if it doesn't exist (3) Add dummy xc_domain_getinfo and xc_evtchn_bind_virq for fake libxc (4) Fix tests broken by b594bb976a743d509f1ffabb5bc698874ab90d8f (5) domain_cleanup() can be static, as it's not used elsewhere. (6) With -Werror, "use" unused variable in domain_init() if TESTING (7) Remove debugging printf on watch without perms. (8) Loosen timeout in xs_test (valgrind + slow machine == bogus timeouts) Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> (authored) Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
* Make xenstored listen to domain exception virqs.cl349@firebug.cl.cam.ac.uk2005-09-061-0/+4
| | | | | | | The virq triggers a scan for domains which have gone away, and then removes those domains. Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
* 1) More testing: include tests which I forgot in previous patch, removekaf24@firebug.cl.cam.ac.uk2005-08-081-0/+4
| | | | | | | | | | | | | | | | | | | xs_watch_stress, reduce cycles in "make check" random test. 2) xs_crashme: corrupt random packets going to xenstored, watch it crash. 3) Handle second input from before we finished output on first one. 4) Fix bug where one-arg operations are given zero args. 5) Fix bug where SET_PERMS fails after blocking on transaction. 6) Fix memory leak when DIRECTORY op given no argument. 7) Fail on first memory leak, for better testing. 8) Fix missing waiting_for_ack initialization for new connections. 9) Ensure all input and output is handled for domains so we don't stall. 10) Fix overrun bug in xs_count_strings on non-nul-terminated strings. 11) New test for clients which write without waiting for response. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
* Change from bool indicating blocked to an enum: when watches gocl349@firebug.cl.cam.ac.uk2005-07-261-3/+3
| | | | | | | | | | synchronous this makes it easier (because then we have two reasons to block) Instead of using return value, use explicit state member inside struct connection. Signed-off-by: Rusty Russel <rusty@rustcorp.com.au> Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
* Start of code to persistent store connections when xenstored restartscl349@firebug.cl.cam.ac.uk2005-07-261-0/+3
| | | | | | Signed-off-by: Rusty Russel <rusty@rustcorp.com.au> Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
* bitkeeper revision 1.1713.3.5 (42b2a4e2r6SNlC_nq2hAkXEQjEFAmA)cl349@firebug.cl.cam.ac.uk2005-06-171-1/+3
| | | | | | | | | | | | | | | | | | | Many files: - watch now takes a token, returned when reading watch - More tests - Fix domain shared page communication (flush output) - Add "home" path for domains - More permissions checks in various functions - Simplify watch acknowledgement code and fix occasional bug xs_watch_stress.c, 12readonly.sh, 11domain-watch.sh, 10domain-homedir.sh: new file xs_stress.c, xs_lib.h, xs_lib.c: Cleanup whitespace. ignore: Add tools/xenstore/xs_watch_stress Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
* bitkeeper revision 1.1662.1.15 (42a5968eiZE_DjdIFPjxvzLw6ACvCQ)cl349@firebug.cl.cam.ac.uk2005-06-071-0/+38
Add xenstore daemon and library. Makefile: Add xenstore subdirectory. Remove xs_stress on clean. Many files: new file ignore: Update ignore list for xenstore. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> (authored) Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>