Xen-Devel Archive on lore.kernel.org
 help / color / Atom feed
* [Xen-devel] list of Xen external interfaces for FuSa
@ 2019-06-17 18:01 Stefano Stabellini
  0 siblings, 0 replies; only message in thread
From: Stefano Stabellini @ 2019-06-17 18:01 UTC (permalink / raw)
  To: fusa-sig
  Cc: lars.kurth, sstabellini, George.Dunlap, lars.kurth.xen,
	julien.grall, xen-devel

Hi all,

This is the list of external interfaces that we need to document for the
Xen FuSa work. I divided it into categories to make it easier to deal
with. The doc is also available in markdown format on github [1].

Cheers,

Stefano

[1] https://github.com/sstabellini/FuSa.git

---

# Intro

This document covers the external interfaces in a dom0less deployment
that we need to document for safety certifications.

Dom0 and Xen userspace tools, such as xl and libxl, are out of scope for
now, we are only discussing the hypervisor. vm_assist, xsm, argo are
also out of scope: the assumption is that they will disabled via
kconfig.


# From the user perspective

- Xen hypervisor command line options
- Dom0less device tree configuration


# Xen - Bootloader interfaces

- multiboot
- Xen boot protocol


# From a DomU perspective

- kernel image format
- boot protocol
- device tree
- memory map: location of memory and other resources
- exposed devices
  - GIC interrupt controller
  - Generic Timer
  - virtual UART (PL011)
- PSCI
- hypercall protocol (i.e. registers, etc.)
- memory sharing (i.e. memory/cache attributes)


# Hypercalls exposed to all DomUs

These hypercalls are unused by dom0less domUs, however, they are
still exposed to all domUs.

- memory_op
- sched_op
- xen_version
- hvm_op
- multicall
- platform_op
- vcpu_op
- physdev_op (NOP on Arm)


# PV drivers interfaces

Dom0less domUs cannot use PV drivers today. However, these interfaces
are still exposed to them, and one day they might be able to use them
correctly:

- hypercalls
  - console_io
  - grant_table_op
  - event_channel_op
- xenstore
  - xenstore initialization
  - xenstore protocol
    - message format
    - notifications
  - xenstore as a bus
- PV protocols
  - PV console
  - PV network
  - PV block
  

# Privileged hypercalls (dom0 and toolstack)

- domctl
- sysctl

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, back to index

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-06-17 18:01 [Xen-devel] list of Xen external interfaces for FuSa Stefano Stabellini

Xen-Devel Archive on lore.kernel.org

Archives are clonable:
	git clone --mirror https://lore.kernel.org/xen-devel/0 xen-devel/git/0.git
	git clone --mirror https://lore.kernel.org/xen-devel/1 xen-devel/git/1.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 xen-devel xen-devel/ https://lore.kernel.org/xen-devel \
		xen-devel@lists.xenproject.org xen-devel@archiver.kernel.org
	public-inbox-index xen-devel


Newsgroup available over NNTP:
	nntp://nntp.lore.kernel.org/org.xenproject.lists.xen-devel


AGPL code for this site: git clone https://public-inbox.org/ public-inbox