All of lore.kernel.org
 help / color / mirror / Atom feed
From: Kirti Wankhede <kwankhede@nvidia.com>
To: <alex.williamson@redhat.com>, <pbonzini@redhat.com>,
	<kraxel@redhat.com>, <cjia@nvidia.com>
Cc: <qemu-devel@nongnu.org>, <kvm@vger.kernel.org>,
	<kevin.tian@intel.com>, <jike.song@intel.com>,
	<bjsdjshi@linux.vnet.ibm.com>, <eblake@redhat.com>
Subject: Re: [PATCH v7 4/4] docs: Add Documentation for Mediated devices
Date: Sat, 3 Sep 2016 22:10:08 +0530	[thread overview]
Message-ID: <aadabdb9-454a-5e2a-d03a-df72ff785fb1@nvidia.com> (raw)
In-Reply-To: <1472097235-6332-5-git-send-email-kwankhede@nvidia.com>

Adding Eric.

Eric,
This is the v7 version of patch. I'll incorporate changes that you
suggested here.

Kirti.

On 8/25/2016 9:23 AM, Kirti Wankhede wrote:
> Add file Documentation/vfio-mediated-device.txt that include details of
> mediated device framework.
> 
> Signed-off-by: Kirti Wankhede <kwankhede@nvidia.com>
> Signed-off-by: Neo Jia <cjia@nvidia.com>
> Change-Id: I137dd646442936090d92008b115908b7b2c7bc5d
> Reviewed-on: http://git-master/r/1182512
> Reviewed-by: Automatic_Commit_Validation_User
> ---
>  Documentation/vfio-mediated-device.txt | 203 +++++++++++++++++++++++++++++++++
>  1 file changed, 203 insertions(+)
>  create mode 100644 Documentation/vfio-mediated-device.txt
> 
> diff --git a/Documentation/vfio-mediated-device.txt b/Documentation/vfio-mediated-device.txt
> new file mode 100644
> index 000000000000..237d8eb630b7
> --- /dev/null
> +++ b/Documentation/vfio-mediated-device.txt
> @@ -0,0 +1,203 @@
> +VFIO Mediated devices [1]
> +-------------------------------------------------------------------------------
> +
> +There are more and more use cases/demands to virtualize the DMA devices which
> +doesn't have SR_IOV capability built-in. To do this, drivers of different
> +devices had to develop their own management interface and set of APIs and then
> +integrate it to user space software. We've identified common requirements and
> +unified management interface for such devices to make user space software
> +integration easier.
> +
> +The VFIO driver framework provides unified APIs for direct device access. It is
> +an IOMMU/device agnostic framework for exposing direct device access to
> +user space, in a secure, IOMMU protected environment. This framework is
> +used for multiple devices like GPUs, network adapters and compute accelerators.
> +With direct device access, virtual machines or user space applications have
> +direct access of physical device. This framework is reused for mediated devices.
> +
> +Mediated core driver provides a common interface for mediated device management
> +that can be used by drivers of different devices. This module provides a generic
> +interface to create/destroy mediated device, add/remove it to mediated bus
> +driver, add/remove device to IOMMU group. It also provides an interface to
> +register bus driver, for example, Mediated VFIO mdev driver is designed for
> +mediated devices and supports VFIO APIs. Mediated bus driver add/delete mediated
> +device to VFIO Group.
> +
> +Below is the high Level block diagram, with NVIDIA, Intel and IBM devices
> +as example, since these are the devices which are going to actively use
> +this module as of now.
> +
> +     +---------------+
> +     |               |
> +     | +-----------+ |  mdev_register_driver() +--------------+
> +     | |           | +<------------------------+              |
> +     | |  mdev     | |                         |              |
> +     | |  bus      | +------------------------>+ vfio_mdev.ko |<-> VFIO user
> +     | |  driver   | |     probe()/remove()    |              |    APIs
> +     | |           | |                         +--------------+
> +     | +-----------+ |
> +     |               |
> +     |  MDEV CORE    |
> +     |   MODULE      |
> +     |   mdev.ko     |
> +     | +-----------+ |  mdev_register_device() +--------------+
> +     | |           | +<------------------------+              |
> +     | |           | |                         |  nvidia.ko   |<-> physical
> +     | |           | +------------------------>+              |    device
> +     | |           | |        callbacks        +--------------+
> +     | | Physical  | |
> +     | |  device   | |  mdev_register_device() +--------------+
> +     | | interface | |<------------------------+              |
> +     | |           | |                         |  i915.ko     |<-> physical
> +     | |           | +------------------------>+              |    device
> +     | |           | |        callbacks        +--------------+
> +     | |           | |
> +     | |           | |  mdev_register_device() +--------------+
> +     | |           | +<------------------------+              |
> +     | |           | |                         | ccw_device.ko|<-> physical
> +     | |           | +------------------------>+              |    device
> +     | |           | |        callbacks        +--------------+
> +     | +-----------+ |
> +     +---------------+
> +
> +
> +Registration Interfaces
> +-------------------------------------------------------------------------------
> +
> +Mediated core driver provides two types of registration interfaces:
> +
> +1. Registration interface for mediated bus driver:
> +-------------------------------------------------
> +     /*
> +      * struct mdev_driver [2] - Mediated device's driver
> +      * @name: driver name
> +      * @probe: called when new device created
> +      * @remove: called when device removed
> +      * @driver: device driver structure
> +      */
> +     struct mdev_driver {
> +	     const char *name;
> +	     int  (*probe)  (struct device *dev);
> +	     void (*remove) (struct device *dev);
> +	     struct device_driver    driver;
> +     };
> +
> +Mediated bus driver for mdev should use this interface to register and
> +unregister with core driver respectively:
> +
> +extern int  mdev_register_driver(struct mdev_driver *drv, struct module *owner);
> +extern void mdev_unregister_driver(struct mdev_driver *drv);
> +
> +Mediated bus driver is responsible to add/delete mediated devices to/from VFIO
> +group when devices are bound and unbound to the driver.
> +
> +2. Physical device driver interface:
> +-----------------------------------
> +This interface [3] provides a set of APIs to manage physical device related work
> +in its driver. APIs are:
> +
> +* dev_attr_groups: attributes of the parent device.
> +* mdev_attr_groups: attributes of the mediated device.
> +* supported_config: to provide supported configuration list by the driver.
> +* create: to allocate basic resources in driver for a mediated device.
> +* destroy: to free resources in driver when mediated device is destroyed.
> +* reset: to free and reallocate resources in driver on mediated device reset.
> +* set_online_status: to change online status of mediated device.
> +* get_online_status: to get current (online/offline) status of mediated device.
> +* read : read emulation callback.
> +* write: write emulation callback.
> +* mmap: mmap emulation callback.
> +* get_irq_info: to retrieve information about mediated device's IRQ.
> +* set_irqs: gives interrupt configuration information that VMM sets.
> +* get_region_info: to provide region size and its flags for the mediated device.
> +    Vendor driver can provide the capability id and corresponding capability
> +    structure if want to support a capability.
> +* get_device_info: to retrieve VFIO device related flags, number of regions and
> +  number of IRQs supported.
> +
> +Drivers should use this interface to register and unregister device to mdev core
> +driver respectively:
> +
> +extern int  mdev_register_device(struct device *dev,
> +                                 const struct parent_ops *ops);
> +extern void mdev_unregister_device(struct device *dev);
> +
> +Mediated device management interface via sysfs
> +-------------------------------------------------------------------------------
> +This is the interface that allows user space software, like libvirt, to query
> +and configure mediated device in a HW agnostic fashion. This management
> +interface provide flexibility to underlying physical device's driver to support
> +mediated device hotplug, multiple mediated devices per virtual machine, multiple
> +mediated devices from different physical devices, etc.
> +
> +Under per-physical device sysfs:
> +--------------------------------
> +
> +* mdev_supported_types: (read only)
> +    List the current supported mediated device types and its details.
> +
> +* mdev_create: (write only)
> +	Create a mediated device on target physical device.
> +	Input syntax: <UUID:params>
> +	where,
> +		UUID: mediated device's UUID
> +		params: extra parameters required by driver
> +	Example:
> +	# echo "12345678-1234-1234-1234-123456789abc:0" >
> +				 /sys/bus/pci/devices/0000\:05\:00.0/mdev_create
> +
> +* mdev_destroy: (write only)
> +	Destroy a mediated device on a target physical device.
> +	Input syntax: <UUID>
> +	where,
> +		UUID: mediated device's UUID
> +	Example:
> +	# echo "12345678-1234-1234-1234-123456789abc" >
> +			       /sys/bus/pci/devices/0000\:05\:00.0/mdev_destroy
> +
> +Under per mdev device:
> +----------------------------------------
> +
> +* online: (read write)
> +	Read on this file provides current status of mediated device (0 or 1).
> +	Write on this file (0 or 1) will change the state of mediated device.
> +	This trigger the registration callback to notify the driver to commit
> +	or free mediated device resources. This callback is blocking call,
> +	successful return of this call will indicate requested mdev resources
> +	has been fully committed, the VMM should continue.
> +	Example:
> +	# echo "1|0" > /sys/bus/mdev/devices/$mdev_UUID/online
> +
> +
> +Mediated device Hotplug:
> +-----------------------
> +
> +To support mediated device hotplug, <mdev_create> and <mdev_destroy> can be
> +accessed during VM runtime, and the corresponding registration callback is
> +invoked to allow driver to support hotplug.
> +
> +Translation APIs for Mediated device
> +------------------------------------------------------------------------------
> +
> +Below APIs are provided for user pfn to host pfn translation in VFIO driver:
> +
> +extern long vfio_pin_pages(struct device *dev, unsigned long *user_pfn,
> +                           long npage, int prot, unsigned long *phys_pfn);
> +
> +extern long vfio_unpin_pages(struct device *dev, unsigned long *pfn,
> +			     long npage);
> +
> +These functions call back into the backend IOMMU module using two callbacks of
> +struct vfio_iommu_driver_ops, pin_pages and unpin_pages [4]. Currently these are
> +supported in TYPE1 IOMMU module. To enable the same for other IOMMU backend
> +modules, such as PPC64 sPAPR module, they need to provide these two callback
> +functions.
> +
> +References
> +-------------------------------------------------------------------------------
> +
> +[1] See Documentation/vfio.txt for more information on VFIO.
> +[2] struct mdev_driver in include/linux/mdev.h
> +[3] struct parent_ops in include/linux/mdev.h
> +[4] struct vfio_iommu_driver_ops in include/linux/vfio.h
> +
> 

WARNING: multiple messages have this Message-ID (diff)
From: Kirti Wankhede <kwankhede@nvidia.com>
To: alex.williamson@redhat.com, pbonzini@redhat.com,
	kraxel@redhat.com, cjia@nvidia.com
Cc: qemu-devel@nongnu.org, kvm@vger.kernel.org, kevin.tian@intel.com,
	jike.song@intel.com, bjsdjshi@linux.vnet.ibm.com,
	eblake@redhat.com
Subject: Re: [Qemu-devel] [PATCH v7 4/4] docs: Add Documentation for Mediated devices
Date: Sat, 3 Sep 2016 22:10:08 +0530	[thread overview]
Message-ID: <aadabdb9-454a-5e2a-d03a-df72ff785fb1@nvidia.com> (raw)
In-Reply-To: <1472097235-6332-5-git-send-email-kwankhede@nvidia.com>

Adding Eric.

Eric,
This is the v7 version of patch. I'll incorporate changes that you
suggested here.

Kirti.

On 8/25/2016 9:23 AM, Kirti Wankhede wrote:
> Add file Documentation/vfio-mediated-device.txt that include details of
> mediated device framework.
> 
> Signed-off-by: Kirti Wankhede <kwankhede@nvidia.com>
> Signed-off-by: Neo Jia <cjia@nvidia.com>
> Change-Id: I137dd646442936090d92008b115908b7b2c7bc5d
> Reviewed-on: http://git-master/r/1182512
> Reviewed-by: Automatic_Commit_Validation_User
> ---
>  Documentation/vfio-mediated-device.txt | 203 +++++++++++++++++++++++++++++++++
>  1 file changed, 203 insertions(+)
>  create mode 100644 Documentation/vfio-mediated-device.txt
> 
> diff --git a/Documentation/vfio-mediated-device.txt b/Documentation/vfio-mediated-device.txt
> new file mode 100644
> index 000000000000..237d8eb630b7
> --- /dev/null
> +++ b/Documentation/vfio-mediated-device.txt
> @@ -0,0 +1,203 @@
> +VFIO Mediated devices [1]
> +-------------------------------------------------------------------------------
> +
> +There are more and more use cases/demands to virtualize the DMA devices which
> +doesn't have SR_IOV capability built-in. To do this, drivers of different
> +devices had to develop their own management interface and set of APIs and then
> +integrate it to user space software. We've identified common requirements and
> +unified management interface for such devices to make user space software
> +integration easier.
> +
> +The VFIO driver framework provides unified APIs for direct device access. It is
> +an IOMMU/device agnostic framework for exposing direct device access to
> +user space, in a secure, IOMMU protected environment. This framework is
> +used for multiple devices like GPUs, network adapters and compute accelerators.
> +With direct device access, virtual machines or user space applications have
> +direct access of physical device. This framework is reused for mediated devices.
> +
> +Mediated core driver provides a common interface for mediated device management
> +that can be used by drivers of different devices. This module provides a generic
> +interface to create/destroy mediated device, add/remove it to mediated bus
> +driver, add/remove device to IOMMU group. It also provides an interface to
> +register bus driver, for example, Mediated VFIO mdev driver is designed for
> +mediated devices and supports VFIO APIs. Mediated bus driver add/delete mediated
> +device to VFIO Group.
> +
> +Below is the high Level block diagram, with NVIDIA, Intel and IBM devices
> +as example, since these are the devices which are going to actively use
> +this module as of now.
> +
> +     +---------------+
> +     |               |
> +     | +-----------+ |  mdev_register_driver() +--------------+
> +     | |           | +<------------------------+              |
> +     | |  mdev     | |                         |              |
> +     | |  bus      | +------------------------>+ vfio_mdev.ko |<-> VFIO user
> +     | |  driver   | |     probe()/remove()    |              |    APIs
> +     | |           | |                         +--------------+
> +     | +-----------+ |
> +     |               |
> +     |  MDEV CORE    |
> +     |   MODULE      |
> +     |   mdev.ko     |
> +     | +-----------+ |  mdev_register_device() +--------------+
> +     | |           | +<------------------------+              |
> +     | |           | |                         |  nvidia.ko   |<-> physical
> +     | |           | +------------------------>+              |    device
> +     | |           | |        callbacks        +--------------+
> +     | | Physical  | |
> +     | |  device   | |  mdev_register_device() +--------------+
> +     | | interface | |<------------------------+              |
> +     | |           | |                         |  i915.ko     |<-> physical
> +     | |           | +------------------------>+              |    device
> +     | |           | |        callbacks        +--------------+
> +     | |           | |
> +     | |           | |  mdev_register_device() +--------------+
> +     | |           | +<------------------------+              |
> +     | |           | |                         | ccw_device.ko|<-> physical
> +     | |           | +------------------------>+              |    device
> +     | |           | |        callbacks        +--------------+
> +     | +-----------+ |
> +     +---------------+
> +
> +
> +Registration Interfaces
> +-------------------------------------------------------------------------------
> +
> +Mediated core driver provides two types of registration interfaces:
> +
> +1. Registration interface for mediated bus driver:
> +-------------------------------------------------
> +     /*
> +      * struct mdev_driver [2] - Mediated device's driver
> +      * @name: driver name
> +      * @probe: called when new device created
> +      * @remove: called when device removed
> +      * @driver: device driver structure
> +      */
> +     struct mdev_driver {
> +	     const char *name;
> +	     int  (*probe)  (struct device *dev);
> +	     void (*remove) (struct device *dev);
> +	     struct device_driver    driver;
> +     };
> +
> +Mediated bus driver for mdev should use this interface to register and
> +unregister with core driver respectively:
> +
> +extern int  mdev_register_driver(struct mdev_driver *drv, struct module *owner);
> +extern void mdev_unregister_driver(struct mdev_driver *drv);
> +
> +Mediated bus driver is responsible to add/delete mediated devices to/from VFIO
> +group when devices are bound and unbound to the driver.
> +
> +2. Physical device driver interface:
> +-----------------------------------
> +This interface [3] provides a set of APIs to manage physical device related work
> +in its driver. APIs are:
> +
> +* dev_attr_groups: attributes of the parent device.
> +* mdev_attr_groups: attributes of the mediated device.
> +* supported_config: to provide supported configuration list by the driver.
> +* create: to allocate basic resources in driver for a mediated device.
> +* destroy: to free resources in driver when mediated device is destroyed.
> +* reset: to free and reallocate resources in driver on mediated device reset.
> +* set_online_status: to change online status of mediated device.
> +* get_online_status: to get current (online/offline) status of mediated device.
> +* read : read emulation callback.
> +* write: write emulation callback.
> +* mmap: mmap emulation callback.
> +* get_irq_info: to retrieve information about mediated device's IRQ.
> +* set_irqs: gives interrupt configuration information that VMM sets.
> +* get_region_info: to provide region size and its flags for the mediated device.
> +    Vendor driver can provide the capability id and corresponding capability
> +    structure if want to support a capability.
> +* get_device_info: to retrieve VFIO device related flags, number of regions and
> +  number of IRQs supported.
> +
> +Drivers should use this interface to register and unregister device to mdev core
> +driver respectively:
> +
> +extern int  mdev_register_device(struct device *dev,
> +                                 const struct parent_ops *ops);
> +extern void mdev_unregister_device(struct device *dev);
> +
> +Mediated device management interface via sysfs
> +-------------------------------------------------------------------------------
> +This is the interface that allows user space software, like libvirt, to query
> +and configure mediated device in a HW agnostic fashion. This management
> +interface provide flexibility to underlying physical device's driver to support
> +mediated device hotplug, multiple mediated devices per virtual machine, multiple
> +mediated devices from different physical devices, etc.
> +
> +Under per-physical device sysfs:
> +--------------------------------
> +
> +* mdev_supported_types: (read only)
> +    List the current supported mediated device types and its details.
> +
> +* mdev_create: (write only)
> +	Create a mediated device on target physical device.
> +	Input syntax: <UUID:params>
> +	where,
> +		UUID: mediated device's UUID
> +		params: extra parameters required by driver
> +	Example:
> +	# echo "12345678-1234-1234-1234-123456789abc:0" >
> +				 /sys/bus/pci/devices/0000\:05\:00.0/mdev_create
> +
> +* mdev_destroy: (write only)
> +	Destroy a mediated device on a target physical device.
> +	Input syntax: <UUID>
> +	where,
> +		UUID: mediated device's UUID
> +	Example:
> +	# echo "12345678-1234-1234-1234-123456789abc" >
> +			       /sys/bus/pci/devices/0000\:05\:00.0/mdev_destroy
> +
> +Under per mdev device:
> +----------------------------------------
> +
> +* online: (read write)
> +	Read on this file provides current status of mediated device (0 or 1).
> +	Write on this file (0 or 1) will change the state of mediated device.
> +	This trigger the registration callback to notify the driver to commit
> +	or free mediated device resources. This callback is blocking call,
> +	successful return of this call will indicate requested mdev resources
> +	has been fully committed, the VMM should continue.
> +	Example:
> +	# echo "1|0" > /sys/bus/mdev/devices/$mdev_UUID/online
> +
> +
> +Mediated device Hotplug:
> +-----------------------
> +
> +To support mediated device hotplug, <mdev_create> and <mdev_destroy> can be
> +accessed during VM runtime, and the corresponding registration callback is
> +invoked to allow driver to support hotplug.
> +
> +Translation APIs for Mediated device
> +------------------------------------------------------------------------------
> +
> +Below APIs are provided for user pfn to host pfn translation in VFIO driver:
> +
> +extern long vfio_pin_pages(struct device *dev, unsigned long *user_pfn,
> +                           long npage, int prot, unsigned long *phys_pfn);
> +
> +extern long vfio_unpin_pages(struct device *dev, unsigned long *pfn,
> +			     long npage);
> +
> +These functions call back into the backend IOMMU module using two callbacks of
> +struct vfio_iommu_driver_ops, pin_pages and unpin_pages [4]. Currently these are
> +supported in TYPE1 IOMMU module. To enable the same for other IOMMU backend
> +modules, such as PPC64 sPAPR module, they need to provide these two callback
> +functions.
> +
> +References
> +-------------------------------------------------------------------------------
> +
> +[1] See Documentation/vfio.txt for more information on VFIO.
> +[2] struct mdev_driver in include/linux/mdev.h
> +[3] struct parent_ops in include/linux/mdev.h
> +[4] struct vfio_iommu_driver_ops in include/linux/vfio.h
> +
> 

  reply	other threads:[~2016-09-03 16:40 UTC|newest]

Thread overview: 162+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-08-25  3:53 [PATCH v7 0/4] Add Mediated device support Kirti Wankhede
2016-08-25  3:53 ` [Qemu-devel] " Kirti Wankhede
2016-08-25  3:53 ` [PATCH v7 1/4] vfio: Mediated device Core driver Kirti Wankhede
2016-08-25  3:53   ` [Qemu-devel] " Kirti Wankhede
2016-09-08  8:09   ` Jike Song
2016-09-08  8:09     ` [Qemu-devel] " Jike Song
2016-09-08  9:38     ` Neo Jia
2016-09-08  9:38       ` [Qemu-devel] " Neo Jia
2016-09-09  6:26       ` Jike Song
2016-09-09  6:26         ` [Qemu-devel] " Jike Song
2016-09-09 17:48     ` Kirti Wankhede
2016-09-09 17:48       ` [Qemu-devel] " Kirti Wankhede
2016-09-09 18:42       ` Alex Williamson
2016-09-09 18:42         ` [Qemu-devel] " Alex Williamson
2016-09-09 19:55         ` Kirti Wankhede
2016-09-09 19:55           ` [Qemu-devel] " Kirti Wankhede
2016-09-12  5:10           ` Jike Song
2016-09-12  5:10             ` [Qemu-devel] " Jike Song
2016-09-12  7:49             ` Kirti Wankhede
2016-09-12  7:49               ` [Qemu-devel] " Kirti Wankhede
2016-09-12 15:53               ` Alex Williamson
2016-09-12 15:53                 ` [Qemu-devel] " Alex Williamson
2016-09-19  7:08                 ` Jike Song
2016-09-19  7:08                   ` [Qemu-devel] " Jike Song
2016-09-19 17:29                 ` Kirti Wankhede
2016-09-19 17:29                   ` [Qemu-devel] " Kirti Wankhede
2016-09-19 18:11                   ` Alex Williamson
2016-09-19 18:11                     ` [Qemu-devel] " Alex Williamson
2016-09-19 20:09                     ` Kirti Wankhede
2016-09-19 20:09                       ` [Qemu-devel] " Kirti Wankhede
2016-09-19 20:59                       ` Alex Williamson
2016-09-20 12:48   ` Jike Song
2016-09-20 12:48     ` [Qemu-devel] " Jike Song
2016-08-25  3:53 ` [PATCH v7 2/4] vfio: VFIO driver for mediated devices Kirti Wankhede
2016-08-25  3:53   ` [Qemu-devel] " Kirti Wankhede
2016-08-25  9:22   ` Dong Jia
2016-08-25  9:22     ` [Qemu-devel] " Dong Jia
2016-08-26 14:13     ` Kirti Wankhede
2016-08-26 14:13       ` [Qemu-devel] " Kirti Wankhede
2016-09-08  2:38       ` Jike Song
2016-09-08  2:38         ` [Qemu-devel] " Jike Song
2016-09-19 18:22       ` Kirti Wankhede
2016-09-19 18:22         ` Kirti Wankhede
2016-09-19 18:36         ` Alex Williamson
2016-09-19 18:36           ` Alex Williamson
2016-09-19 19:13           ` Kirti Wankhede
2016-09-19 19:13             ` Kirti Wankhede
2016-09-19 20:03             ` Alex Williamson
2016-09-19 20:03               ` Alex Williamson
2016-09-20  2:50               ` Jike Song
2016-09-20 16:24                 ` Alex Williamson
2016-09-21  3:19                   ` Jike Song
2016-09-21  4:51                     ` Alex Williamson
2016-09-21  5:02                       ` Jike Song
2016-09-08  2:45     ` Jike Song
2016-09-08  2:45       ` [Qemu-devel] " Jike Song
2016-09-13  2:35       ` Jike Song
2016-09-13  2:35         ` [Qemu-devel] " Jike Song
2016-09-20  5:48         ` Dong Jia Shi
2016-09-20  5:48         ` [Qemu-devel] " Dong Jia Shi
2016-09-20  6:37           ` Jike Song
2016-09-20  6:37             ` [Qemu-devel] " Jike Song
2016-09-20 12:53   ` Jike Song
2016-09-20 12:53     ` [Qemu-devel] " Jike Song
2016-08-25  3:53 ` [PATCH v7 3/4] vfio iommu: Add support " Kirti Wankhede
2016-08-25  3:53   ` [Qemu-devel] " Kirti Wankhede
2016-08-25  7:29   ` Dong Jia
2016-08-25  7:29     ` [Qemu-devel] " Dong Jia
2016-08-26 13:50     ` Kirti Wankhede
2016-08-26 13:50       ` [Qemu-devel] " Kirti Wankhede
2016-09-29  2:17   ` Jike Song
2016-09-29  2:17     ` [Qemu-devel] " Jike Song
2016-09-29 15:06     ` Kirti Wankhede
2016-09-29 15:06       ` [Qemu-devel] " Kirti Wankhede
2016-09-30  2:58       ` Jike Song
2016-09-30  2:58         ` [Qemu-devel] " Jike Song
2016-09-30  3:10         ` Jike Song
2016-09-30  3:10           ` [Qemu-devel] " Jike Song
2016-09-30 11:44           ` Kirti Wankhede
2016-09-30 11:44             ` [Qemu-devel] " Kirti Wankhede
2016-10-08  7:09             ` Jike Song
2016-10-08  7:09               ` [Qemu-devel] " Jike Song
2016-08-25  3:53 ` [PATCH v7 4/4] docs: Add Documentation for Mediated devices Kirti Wankhede
2016-08-25  3:53   ` [Qemu-devel] " Kirti Wankhede
2016-09-03 16:40   ` Kirti Wankhede [this message]
2016-09-03 16:40     ` Kirti Wankhede
2016-08-30 16:16 ` [PATCH v7 0/4] Add Mediated device support Alex Williamson
2016-08-30 16:16   ` [Qemu-devel] " Alex Williamson
2016-08-31  6:12   ` Tian, Kevin
2016-08-31  6:12     ` [Qemu-devel] " Tian, Kevin
2016-08-31  7:04     ` Jike Song
2016-08-31  7:04       ` [Qemu-devel] " Jike Song
2016-08-31 15:48       ` Alex Williamson
2016-08-31 15:48         ` [Qemu-devel] " Alex Williamson
2016-09-01  4:09         ` Tian, Kevin
2016-09-01  4:09           ` [Qemu-devel] " Tian, Kevin
2016-09-01  4:10         ` Tian, Kevin
2016-09-01  4:10           ` [Qemu-devel] " Tian, Kevin
2016-09-01 18:22         ` Kirti Wankhede
2016-09-01 18:22           ` [Qemu-devel] " Kirti Wankhede
2016-09-01 20:01           ` Alex Williamson
2016-09-01 20:01             ` [Qemu-devel] " Alex Williamson
2016-09-02  6:17             ` Kirti Wankhede
2016-09-02  6:17               ` [Qemu-devel] " Kirti Wankhede
2016-09-01 16:47     ` Michal Privoznik
2016-09-01 16:59       ` Alex Williamson
2016-09-01 16:59         ` [Qemu-devel] " Alex Williamson
2016-09-02  4:48         ` Michal Privoznik
2016-09-02  5:21           ` Kirti Wankhede
2016-09-02 10:05             ` Paolo Bonzini
2016-09-02 17:15               ` Kirti Wankhede
2016-09-02 17:25                 ` Paolo Bonzini
2016-09-02 18:33                   ` Kirti Wankhede
2016-09-02 20:29                     ` [libvirt] " John Ferlan
2016-09-02 20:29                       ` [Qemu-devel] [libvirt] " John Ferlan
2016-09-03 16:31                       ` Kirti Wankhede
2016-09-03 16:31                         ` [Qemu-devel] " Kirti Wankhede
2016-09-06 17:54                         ` [libvirt] [Qemu-devel] " Alex Williamson
2016-09-06 17:54                           ` [Qemu-devel] [libvirt] " Alex Williamson
2016-09-02 21:48                     ` [Qemu-devel] " Paolo Bonzini
2016-09-03 11:56                       ` [libvirt] " John Ferlan
2016-09-03 11:56                         ` [Qemu-devel] [libvirt] " John Ferlan
2016-09-03 13:07                         ` [libvirt] [Qemu-devel] " Paolo Bonzini
2016-09-03 13:07                           ` [Qemu-devel] [libvirt] " Paolo Bonzini
2016-09-03 17:47                           ` Kirti Wankhede
2016-09-03 17:47                             ` [Qemu-devel] " Kirti Wankhede
2016-09-03 16:34                       ` [Qemu-devel] " Kirti Wankhede
2016-09-06 17:40                         ` Alex Williamson
2016-09-06 19:35                           ` Kirti Wankhede
2016-09-06 21:28                             ` Alex Williamson
2016-09-07  8:22                               ` Tian, Kevin
2016-09-07  8:22                                 ` Tian, Kevin
2016-09-07 16:00                                 ` Alex Williamson
2016-09-07 16:15                               ` Kirti Wankhede
2016-09-07 16:44                                 ` Alex Williamson
2016-09-07 18:06                                   ` Kirti Wankhede
2016-09-07 22:13                                     ` Alex Williamson
2016-09-08 18:48                                       ` Kirti Wankhede
2016-09-08 20:51                                         ` Alex Williamson
2016-09-07 18:17                                   ` Neo Jia
2016-09-07 18:27                                     ` Daniel P. Berrange
2016-09-07 18:32                                       ` Neo Jia
2016-09-07  6:48                           ` Tian, Kevin
2016-09-07  6:48                             ` Tian, Kevin
2016-09-02 20:19               ` [libvirt] " John Ferlan
2016-09-02 20:19                 ` [Qemu-devel] [libvirt] " John Ferlan
2016-09-02 21:44                 ` [libvirt] [Qemu-devel] " Paolo Bonzini
2016-09-02 21:44                   ` [Qemu-devel] [libvirt] " Paolo Bonzini
2016-09-02 23:57                   ` [libvirt] [Qemu-devel] " Laine Stump
2016-09-02 23:57                     ` [Qemu-devel] [libvirt] " Laine Stump
2016-09-03 16:49                     ` [libvirt] [Qemu-devel] " Kirti Wankhede
2016-09-03 16:49                       ` [Qemu-devel] [libvirt] " Kirti Wankhede
2016-09-05  7:52                     ` [libvirt] [Qemu-devel] " Paolo Bonzini
2016-09-05  7:52                       ` [Qemu-devel] [libvirt] " Paolo Bonzini
2016-09-03 11:57                   ` [libvirt] [Qemu-devel] " John Ferlan
2016-09-03 11:57                     ` [Qemu-devel] [libvirt] " John Ferlan
2016-09-05  7:54                     ` [libvirt] [Qemu-devel] " Paolo Bonzini
2016-09-05  7:54                       ` [Qemu-devel] [libvirt] " Paolo Bonzini
2016-09-02 17:55         ` [libvirt] [Qemu-devel] " Laine Stump
2016-09-02 17:55           ` [Qemu-devel] [libvirt] " Laine Stump
2016-09-02 19:15           ` Alex Williamson
2016-09-02 19:15             ` [Qemu-devel] " Alex Williamson

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=aadabdb9-454a-5e2a-d03a-df72ff785fb1@nvidia.com \
    --to=kwankhede@nvidia.com \
    --cc=alex.williamson@redhat.com \
    --cc=bjsdjshi@linux.vnet.ibm.com \
    --cc=cjia@nvidia.com \
    --cc=eblake@redhat.com \
    --cc=jike.song@intel.com \
    --cc=kevin.tian@intel.com \
    --cc=kraxel@redhat.com \
    --cc=kvm@vger.kernel.org \
    --cc=pbonzini@redhat.com \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.