]> xenbits.xensource.com Git - rumpuser-xen.git/commit
mini-os/xenbus: Expose lower-level interface
authorIan Jackson <ian.jackson@eu.citrix.com>
Wed, 11 Jun 2014 15:17:20 +0000 (16:17 +0100)
committerIan Jackson <Ian.Jackson@eu.citrix.com>
Tue, 24 Jun 2014 16:32:39 +0000 (17:32 +0100)
commit33a1eff693a444387623aa17ab2034c13839157c
tree41c6a56799ebe1192c852f1d49905c171e28cb7c
parent353e348f258896b0be480011edb1dba18cdbf1d6
mini-os/xenbus: Expose lower-level interface

Provide an interface that allows a xenbus user to explicitly allocate
ids, deal with responses asynchronously, specify the queues to be used
for responses and watches, etc.

More specifically:

* Enhance xenbus_event to be capable of dealing with both watches and
  command replies.  In particular, arrange that it will contain a
  pointer to the watch.  We leave the old fields undisturbed because
  of the way that this struct is already used in various places.

* Provide that a xenbus_event for a command response contains a copy
  of the pointer to the reply message, rather than putting it in the
  req_info (which is visible only internally).

* Rename `struct watch' to `struct xenbus_watch' because it needs
  to be in the public interface.

* allocate_xenbus_id becomes xenbus_id_allocate; same for release.

* Make xb_write into a public function, xenbus_xb_write.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
include/mini-os/xenbus.h
xen/xenbus/xenbus.c