[Kimchi-devel] Host Device Passthrough UI Task Discussion

Yu Xin Huo huoyuxin at linux.vnet.ibm.com
Mon Jul 21 08:25:39 UTC 2014


1. generally, how many devices will be available?
2. the already attached devices will always be a subset of available 
host devices, right?
3. please add support to add multiple devices in one request?

The API design does not match current API style related to vm, please 
change it for consistency.
'devices' is just an attribute along with other vm attributes, should 
not take a separate url.
Refer to API.md for current vm API design and follow it.
change attribute name 'hostdevs' to 'devices', at vm level, it is just 
devices of the vm.

On 7/16/2014 2:33 PM, Zhou Zheng Sheng wrote:
> Hi,
>
> As in Kimchi 1.3 TODO list
> (https://github.com/kimchi-project/kimchi/wiki/Todo-1.3), there is a
> task of passthrough support. It is to enable Kimchi to assign hos
> devices directly to a VM, thus greately improve VM performance.
> Currently we support assigning PCI device, USB device and SCSI LUN. For
> example, we can assign an NIC to VM to improve guest network throughput,
> or passthrough a USB camera to enable the guest OS to record video.
>
> The back-end patch also handles PCI device grouping (attach and detach
> all devices in the same iommu group together) and provides some other
> useful features. Since the due day is near, I think we can come up with
> an easy and simple UI for 1.3, and mark this feature as experimental.
> Then we improve it in future releases. So in this release we may only
> expose PCI devices to user and don't mention the iommu grouping logic.
>
> For this version I think we may provide the following operations to the
> user.
>
> In the VM edit window, initially, the user sees a list of PCI devices
> already assigned to the VM. This maps to GET vms/VM_NAME/hostdevs.
>
> In edit mode, the user can detach device. This maps to DELETE
> vms/VM_NAME/hostdevs/DEVICE_NAME.
>
> The user can also select device to attach to VM from a list. The listing
> of eligible devices is mapped to GET
> host/devices?_passthrough=true&_cap=pci.
>
> To attach a device, just POST a dict containing only the device name to
> vms/VM_NAME/hostdevs.
>
> I think these operations forms a basic interaction to enable user to
> consume this feature. It may be feasible to finish them before the due day.
>





More information about the Kimchi-devel mailing list