Jump to content
Welcome to our new Citrix community!
  • 0

dot '.' not allowed in xenstore key?


Motohiro Kanda

Question

Hi,

 

When I include dot '.' in xenstore key, the entry I have created gets removed when VM starts.

Is dot character not allowed in xenstore key? Any restrictions on character sets used in xenstore key?

 

How to reproduce:

This is the initial value.
$ xe vm-param-get uuid=snip param-name=xenstore-data
vm-data: ; vm-data/mmio-hole-size: 268435456

 

Add foo and aaa-bbb entries.

$ xe vm-param-set uuid=snip xenstore-data:vm-data/foo=bar
$ xe vm-param-set uuid=snip xenstore-data:vm-data/aaa-bbb=ccc


$ xe vm-param-get uuid=snip param-name=xenstore-data
vm-data/aaa-bbb: ccc; vm-data/foo: bar; vm-data: ; vm-data/mmio-hole-size: 268435456

 

Boot VM and see they are there. Good.

# xenstore list vm-data
aaa-bbb
foo
mmio-hole-size

# xenstore read vm-data/aaa-bbb
ccc

 

Shutdown the VM.

Now add a key ddd.eee
$ xe vm-param-set uuid=snip xenstore-data:vm-data/ddd.eee=fff

 

Looks good.
$ xe vm-param-get uuid=snip param-name=xenstore-data
vm-data/ddd.eee: fff; vm-data: ; vm-data/aaa-bbb: ccc; vm-data/foo: bar; vm-data/mmio-hole-size: 268435456

 

 

Boot VM

$ xe vm-param-get uuid=snip param-name=xenstore-data
vm-data: ; vm-data/mmio-hole-size: 268435456

 

# xenstore list vm-data
mmio-hole-size

 

Wow! All entries I have added are gone.

 

I use CitrixHypervisor-8.2.0

$ xe host-param-list

software-version (MRO): product_version: 8.2.0;

 

Thanks in advance.

Motohiro

Link to comment

1 answer to this question

Recommended Posts

  • 1

No, a dot (period) is not an allowed character. See: https://xenbits.xen.org/docs/4.14-testing/misc/xenstore.txt

 

Quote

The permitted character for paths set is ASCII alphanumerics and plus the four punctuation characters -/_@ (hyphen slash underscore atsign). @ should be avoided except to specify special watches (see below). Doubled slashes and trailing slashes (except to specify the root) are forbidden. The empty path is also forbidden. Paths longer than 3072 bytes are forbidden; clients specifying relative paths should keep them to within 2048 bytes. (See XENSTORE_*_PATH_MAX in xs_wire.h.)

 

-=Tobias

  • Like 1
Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...