Files
qemu/hw
David Gibson 3153119e9b vfio: Start improving VFIO/EEH interface
At present the code handling IBM's Enhanced Error Handling (EEH) interface
on VFIO devices operates by bypassing the usual VFIO logic with
vfio_container_ioctl().  That's a poorly designed interface with unclear
semantics about exactly what can be operated on.

In particular it operates on a single vfio container internally (hence the
name), but takes an address space and group id, from which it deduces the
container in a rather roundabout way.  groupids are something that code
outside vfio shouldn't even be aware of.

This patch creates new interfaces for EEH operations.  Internally we
have vfio_eeh_container_op() which takes a VFIOContainer object
directly.  For external use we have vfio_eeh_as_ok() which determines
if an AddressSpace is usable for EEH (at present this means it has a
single container with exactly one group attached), and vfio_eeh_as_op()
which will perform an operation on an AddressSpace in the unambiguous case,
and otherwise returns an error.

This interface still isn't great, but it's enough of an improvement to
allow a number of cleanups in other places.

Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Reviewed-by: Alexey Kardashevskiy <aik@ozlabs.ru>
Acked-by: Alex Williamson <alex.williamson@redhat.com>
2016-03-16 09:55:10 +11:00
..
2016-02-23 12:43:05 +00:00
2016-03-11 16:59:11 +02:00
2016-03-10 20:03:16 -07:00
2016-02-23 12:43:05 +00:00
2016-01-29 15:07:25 +00:00
2016-03-07 13:18:28 +01:00
2016-01-29 15:07:25 +00:00
2016-03-15 16:16:57 +02:00
2016-03-11 16:45:21 +02:00
2016-01-29 15:07:25 +00:00
2016-03-11 16:45:21 +02:00
2016-03-07 13:26:29 +01:00
2016-03-11 16:45:21 +02:00
2016-03-11 16:59:12 +02:00
2016-01-29 15:07:25 +00:00
2016-03-16 09:55:06 +11:00
2016-03-04 11:30:17 +00:00
2016-01-29 15:07:24 +00:00
2016-01-29 15:07:25 +00:00
2016-01-29 15:07:25 +00:00
2016-01-29 15:07:25 +00:00
2016-01-29 15:07:22 +00:00
2016-01-29 15:07:23 +00:00
2015-12-22 18:39:19 +02:00