xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/6] AER unrecoverable error containment
@ 2017-06-27 17:14 Venu Busireddy
  2017-06-27 17:14 ` [PATCH 1/6] xen: Add support for hiding and unhiding pcie passthrough devices Venu Busireddy
                   ` (5 more replies)
  0 siblings, 6 replies; 25+ messages in thread
From: Venu Busireddy @ 2017-06-27 17:14 UTC (permalink / raw)
  To: venu.busireddy, Jan Beulich, Daniel De Graaf, Ian Jackson,
	Wei Liu, Marek Marczykowski-Górecki
  Cc: xen-devel

This patch set is part of a set of patchs that together allow containment
of unrecoverable AER errors from PCIe devices assigned to guests in
passthrough mode. The containment is achieved by killing the guest and
hiding the device upon receiving the fatal AER error.

The overall approach is:

1. Change the BIOS settings such that the AER error handling is delegated
   to the host.

2. Change the xen_pciback driver to store the name (SBDF) of the erring
   device in xenstore.

3. At the time of creating the guest, setup a watcher for such writes to
   the xenstore.

4. When the watcher is kicked off due to errors, *destroy* the guest and
   mark the erring device as unassignable until administrative intervention.

5. Provide command line tools to manage the erring devices.

This part implements the support for automatically destroying the guest
that has the device assigned to it, and marking the device as hidden.
Also implemented are the command line tools to manage the hidden devices.

Note:
When unrecoverable AER errors are detected from the PCIe devices
assigned to guests in passthrough mode, BIOS's bring down the server,
thus bringing down the entire hypervisor. For this patch set to work,
the AER error handling needs to be delegated to the host operating system.

Venu Busireddy (6):
  xen: Add support for hiding and unhiding pcie passthrough devices
  xl: Add commands for hiding and unhiding pcie passthrough devices
  libxc: Add wrappers for new commands
  libxl: Add wrappers for new commands and add AER error handler
  tools/python/xc: Update pyxc_methods with new commands
  docs: Document the new commands.

 docs/man/xl.pod.1.in                |  24 ++++++
 tools/libxc/include/xenctrl.h       |   4 +
 tools/libxc/xc_domain.c             |  38 +++++++++
 tools/libxl/libxl.h                 |   3 +
 tools/libxl/libxl_event.h           |   2 +
 tools/libxl/libxl_pci.c             | 150 +++++++++++++++++++++++++++++++++
 tools/python/xen/lowlevel/xc/xc.c   |  84 +++++++++++++++++++
 tools/xl/xl.h                       |   3 +
 tools/xl/xl_cmdtable.c              |  17 ++++
 tools/xl/xl_pci.c                   | 125 +++++++++++++++++++++++++++-
 tools/xl/xl_vmcontrol.c             |  11 +++
 xen/common/domctl.c                 |   6 ++
 xen/drivers/passthrough/pci.c       | 161 ++++++++++++++++++++++++++++++++++--
 xen/include/public/domctl.h         |   3 +
 xen/include/xsm/dummy.h             |  18 ++++
 xen/include/xsm/xsm.h               |  16 ++++
 xen/xsm/dummy.c                     |   3 +
 xen/xsm/flask/hooks.c               |  19 +++++
 xen/xsm/flask/policy/access_vectors |   6 +-
 19 files changed, 679 insertions(+), 14 deletions(-)


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

^ permalink raw reply	[flat|nested] 25+ messages in thread

end of thread, other threads:[~2017-07-18 15:38 UTC | newest]

Thread overview: 25+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-06-27 17:14 [PATCH 0/6] AER unrecoverable error containment Venu Busireddy
2017-06-27 17:14 ` [PATCH 1/6] xen: Add support for hiding and unhiding pcie passthrough devices Venu Busireddy
2017-07-04 15:46   ` Jan Beulich
2017-07-05 19:38     ` Venu Busireddy
2017-07-05 20:48       ` Konrad Rzeszutek Wilk
2017-07-06  8:45       ` Jan Beulich
2017-07-07 11:00         ` Wei Liu
2017-07-07 18:22           ` Venu Busireddy
2017-07-07 18:11         ` Venu Busireddy
2017-07-10  7:52           ` Jan Beulich
2017-07-10 16:58             ` Venu Busireddy
2017-06-27 17:14 ` [PATCH 2/6] xl: Add commands " Venu Busireddy
2017-06-30 10:18   ` Wei Liu
2017-07-05 19:52     ` Venu Busireddy
2017-07-07 10:56       ` Wei Liu
2017-07-07 14:00         ` Konrad Rzeszutek Wilk
2017-07-18 13:38           ` Wei Liu
2017-07-18 15:38             ` Konrad Rzeszutek Wilk
2017-06-27 17:14 ` [PATCH 3/6] libxc: Add wrappers for new commands Venu Busireddy
2017-06-29 17:52   ` Wei Liu
2017-06-27 17:14 ` [PATCH 4/6] libxl: Add wrappers for new commands and add AER error handler Venu Busireddy
2017-06-30 10:18   ` Wei Liu
2017-07-05 20:06     ` Venu Busireddy
2017-06-27 17:14 ` [PATCH 5/6] tools/python/xc: Update pyxc_methods with new commands Venu Busireddy
2017-06-27 17:14 ` [PATCH 6/6] docs: Document the " Venu Busireddy

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).