From: David Vrabel <david.vrabel@citrix.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>,
Xen-devel <xen-devel@lists.xen.org>
Cc: Wei Liu <wei.liu2@citrix.com>,
Ian Jackson <Ian.Jackson@eu.citrix.com>,
Ian Campbell <Ian.Campbell@citrix.com>
Subject: Re: [PATCH for-4.6 4/8] docs/libxl: Re-specify XENSTORE_DATA as EMULATOR_XENSTORE_DATA
Date: Wed, 29 Jul 2015 10:35:52 +0100 [thread overview]
Message-ID: <55B89E78.60701@citrix.com> (raw)
In-Reply-To: <1438119883-8083-5-git-send-email-andrew.cooper3@citrix.com>
On 28/07/15 22:44, Andrew Cooper wrote:
> The legacy "toolstack" record as implemented in libxl turns out not to
> be 32/64bit safe. As migration v2 has not shipped yet, take this
> opportunity to adjust the specification and fix the incompatibility.
>
> Libxl shall loose all knowledge of the old "toolstack" blob and use this
> EMULATOR_XENSTORE_DATA record instead. Compatibility shall be handled
> by the legacy conversion script.
[...]
> +EMULATOR\_XENSTORE\_DATA
> +------------------------
>
> -A record containing xenstore key/value pairs of data.
> +A set of xenstore key/value pairs for a specific emulator associated with the
> +domain.
>
> 0 1 2 3 4 5 6 7 octet
> - +-------------------------------------------------+
> - | xenstore key/value pairs |
> + +------------------------+------------------------+
> + | emulator_id | index |
> + +------------------------+------------------------+
> + | xenstore key/value data |
> ...
> +-------------------------------------------------+
>
> +Xenstore key and value data are encoded as a pair of NUL terminated C
> +strings. Keys shall be relative to to the device models xenstore tree for the
> +new domain
This isn't quite descriptive enough, suggest:
"Xenstore key/value data is encoded as a packed sequence of (key,
value) tuples. Each (key, value) tuple is a packed pair of NUL
terminated UTF-8 encoded character strings. The keys are relative
to..."
In particular, it is essential that character strings have a well
defined encoding (I always recommend UTF-8) but the Xenstore protocol
may specify a different encoding (perhaps ASCII?). The data may also be
better specified as a NULL-terminated octet sequence (rather than
characters).
> +
> +i.e. relative to `/local/domain/$dm_domid/device-model/$domid/`
> +
> +The _emulator\_id_ and _index_ have the same meaning as the
> +**EMULATOR\_CONTEXT** record.
> +
> EMULATOR\_CONTEXT
> ----------------
>
next prev parent reply other threads:[~2015-07-29 9:35 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-07-28 21:44 [PATCH for-4.6 0/8] Fix libxl TOOLSTACK records for migration v2 Andrew Cooper
2015-07-28 21:44 ` [PATCH for-4.6 1/8] tools/libxl: Only continue stream operations if the stream is still in progress Andrew Cooper
2015-07-28 21:44 ` [PATCH for-4.6 2/8] tools/libxl: Assert that libxl__ao_inprogress_gc() is not called with NULL Andrew Cooper
2015-07-29 11:03 ` Ian Jackson
2015-07-28 21:44 ` [PATCH for-4.6 3/8] tools/libxl: Make libxl__conversion_helper_abort() safe to use Andrew Cooper
2015-07-29 11:22 ` Ian Jackson
2015-07-28 21:44 ` [PATCH for-4.6 4/8] docs/libxl: Re-specify XENSTORE_DATA as EMULATOR_XENSTORE_DATA Andrew Cooper
2015-07-29 9:35 ` David Vrabel [this message]
2015-07-30 16:42 ` Andrew Cooper
2015-07-29 11:28 ` Ian Jackson
2015-07-30 16:35 ` Andrew Cooper
2015-07-28 21:44 ` [PATCH for-4.6 5/8] tools/libxl: Save and restore EMULATOR_XENSTORE_DATA content Andrew Cooper
2015-07-29 10:51 ` Wei Liu
2015-07-29 11:49 ` Ian Jackson
2015-07-30 17:34 ` Andrew Cooper
2015-07-31 16:34 ` Ian Jackson
2015-07-31 16:38 ` Andrew Cooper
2015-07-31 16:56 ` Ian Campbell
2015-07-31 17:36 ` Andrew Cooper
2015-07-28 21:44 ` [PATCH for-4.6 6/8] tools/libxl: Prepare to write multiple records with EMULATOR headers Andrew Cooper
2015-07-29 11:54 ` Ian Jackson
2015-07-30 17:36 ` Andrew Cooper
2015-07-28 21:44 ` [PATCH for-4.6 7/8] libxl/save&restore&convert: Switch to new EMULATOR_XENSTORE_DATA records Andrew Cooper
2015-07-29 11:14 ` Wei Liu
2015-07-29 12:00 ` Ian Jackson
2015-07-31 10:17 ` Andrew Cooper
2015-07-31 16:38 ` Ian Jackson
2015-07-28 21:44 ` [PATCH for-4.6 8/8] tools/libxl: Drop all legacy "toolstack" record infrastructure Andrew Cooper
2015-07-29 11:10 ` Wei Liu
2015-07-29 12:00 ` Ian Jackson
2015-07-29 15:05 ` [PATCH for-4.6 0/8] Fix libxl TOOLSTACK records for migration v2 Ian Campbell
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=55B89E78.60701@citrix.com \
--to=david.vrabel@citrix.com \
--cc=Ian.Campbell@citrix.com \
--cc=Ian.Jackson@eu.citrix.com \
--cc=andrew.cooper3@citrix.com \
--cc=wei.liu2@citrix.com \
--cc=xen-devel@lists.xen.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.