[SeaBIOS] [PATCH 00/10] Xenstore communication support for Seabios

Daniel Castro evil.dani at gmail.com
Thu Aug 18 18:08:57 CEST 2011


As part of Google Summer of Code we are in the process to add Block PV-drivers to
Seabios, in order to this, first we have to be able to communicate with xenstore
so we can exchange information before the front and back ends connect. To communicate
with xenstore we need to make seabios Xen-friendly so support for hypercalls has been
added to Seabios. In the next month, Seabios will become a front-end for the block devices,
connecting to dom0 back-end block device when used with Xen.

There is an issue, if you issue a query and the ring did not prepare the answer
fast enough, after the event signal hypercall, the ring will force a ring wait for
an event that will never arrive. For now this is solved by doing a dprintf after the
hypercall, this gives enough time to the ring.

This patch should be applied to Seabios and must be used with qemu-upstream with 
xen4.1, please follow this guide for this:
http://wiki.xensource.com/xenwiki/QEMUUpstream

Some more documentation on this can be found here:
http://wiki.xensource.com/xenwiki/SeaBIOS

Daniel Castro (10):
  Xen: Guest Handlers and Copyrights
  Move PAGE_SHIFT to memmap.h
  Xen: Use PAGE_SHIFT as a constant
  Xen: Support for interdomain event channel
  Xen: Support for HVM_op Hypercall
  Xen: Support for memory_op Hypercall
  Xen: Support for sched_op hypercall
  Xen: Shared info for CPU yield support and xenbus protocol
  Xen: Xenstore communication via xenbus
  Xen: Xenstore example -do not apply

 Makefile          |    2 +-
 src/bitops.h      |   14 ++
 src/memmap.h      |    2 +
 src/post.c        |    2 +
 src/virtio-ring.h |    2 +-
 src/xen-xs.c      |  251 +++++++++++++++++++++++++++++++++++++
 src/xen-xs.h      |    9 ++
 src/xen.c         |   20 +++-
 src/xen.h         |  357 ++++++++++++++++++++++++++++++++++++++++++++++++++++-
 9 files changed, 653 insertions(+), 6 deletions(-)
 create mode 100644 src/bitops.h
 create mode 100644 src/xen-xs.c
 create mode 100644 src/xen-xs.h

-- 
1.7.4.1




More information about the SeaBIOS mailing list