[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH v2 0/7] xenstore: support reading directory with many children
Reading the children list of a xenstore node with the length of that list exceeding 4096 bytes is currently not possible. This can be a problem for a large host with a huge number of domains as Xen tools will no longer by capable to scan some directories of xenstore (e.g. /local/domain). This patch series adds a new xs wire command to read a directory in multiple chunks. libxenstore is modified in a compatible way to show an unmodified result in case xenstored doesn't support the new command. The patch set has been verified to work by using the following shell script: xenstore-write /test "test" for i in `seq 100 500` do xenstore-write /test/entry_with_very_long_name_$i $i done xenstore-ls xenstore-rm /test Xenstore has been verified to work by starting multiple domain types. Especially HVM with qemu-stubdom has been tested as this configuration seems to be rather sensible to concurrent transactions. Changes in V2: - complete rework as suggested by Jan Beulich: don't use transactions for consistency, but a per-node generation count - fix a (minor?) problem in transaction code regarding watches (patch 1) Juergen Gross (7): xenstore: fix add_change_node() xenstore: modify add_change_node() parameter types xenstore: call add_change_node() directly when writing node xenstore: use common tdb record header in xenstore xenstore: add per-node generation counter xenstore: add support for reading directory with many children xenstore: support XS_DIRECTORY_PART in libxenstore tools/xenstore/include/xenstore_lib.h | 9 +++ tools/xenstore/xenstored_core.c | 120 ++++++++++++++++++++++++++------- tools/xenstore/xenstored_core.h | 3 + tools/xenstore/xenstored_transaction.c | 27 +++++--- tools/xenstore/xenstored_transaction.h | 4 +- tools/xenstore/xs.c | 80 +++++++++++++++++++--- tools/xenstore/xs_tdb_dump.c | 11 +-- xen/include/public/io/xs_wire.h | 1 + 8 files changed, 205 insertions(+), 50 deletions(-) -- 2.6.6 _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx https://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |