diff options
author | Rusty Russell <rusty@rustcorp.com.au> | 2005-09-23 14:25:01 +0100 |
---|---|---|
committer | Rusty Russell <rusty@rustcorp.com.au> | 2005-09-23 14:25:01 +0100 |
commit | f11f68cd1157d84615621edcd7321a6d0a09b158 (patch) | |
tree | becbcc239c8b8c0f26e08428b4ac798fa5bdb4fc /tools/xenstore/xenstored_watch.h | |
parent | 7c7896249b7ffa3a0e6c1c749c8c3b08edf2ae70 (diff) | |
download | xen-f11f68cd1157d84615621edcd7321a6d0a09b158.tar.gz xen-f11f68cd1157d84615621edcd7321a6d0a09b158.tar.bz2 xen-f11f68cd1157d84615621edcd7321a6d0a09b158.zip |
Make xenstored use tdb, transactions can soft-fail (EAGAIN)
Transactions no longer take root dir, no longer lock & block: commit can fail spuriously with EAGAIN, not ETIMEDOUT.
Speeds up transactions by over 1000 times, should be NFS safe.
New program: xs_tdb_dump to dump raw TDB contents.
Don't do failure testing: we are no longer robust against all ENOMEM 8(
Introduce "struct node" which contains perms, children and data.
Make struct xs_permissions unpadded, so we can write to tdb w/o valgrind complaints.
Gently modify TDB to use talloc, not do alloc on tdb_delete.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Diffstat (limited to 'tools/xenstore/xenstored_watch.h')
-rw-r--r-- | tools/xenstore/xenstored_watch.h | 10 |
1 files changed, 2 insertions, 8 deletions
diff --git a/tools/xenstore/xenstored_watch.h b/tools/xenstore/xenstored_watch.h index 30d7e9e172..ed8892c4aa 100644 --- a/tools/xenstore/xenstored_watch.h +++ b/tools/xenstore/xenstored_watch.h @@ -32,15 +32,9 @@ bool is_watch_event(struct connection *conn, struct buffered_data *out); /* Look through our watches: if any of them have an event, queue it. */ void queue_next_event(struct connection *conn); -/* Fire all watches: recurse means all the children are effected (ie. rm). +/* Fire all watches: recurse means all the children are affected (ie. rm). */ -void fire_watches(struct connection *conn, const char *node, bool recurse); - -/* Find shortest timeout: if any, reduce tv (may already be set). */ -void shortest_watch_ack_timeout(struct timeval *tv); - -/* Check for watches which may have timed out. */ -void check_watch_ack_timeout(void); +void fire_watches(struct connection *conn, const char *name, bool recurse); void dump_watches(struct connection *conn); |