[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH v6 2/2] xl: Add commands for usb hot-plug



On 04/25/2013 12:38 PM, Ian Campbell wrote:
On Thu, 2013-04-25 at 11:16 +0100, George Dunlap wrote:
+    for (i = 0; i < num; i++) {
+        printf("%8s  ", (dev[i].protocol==LIBXL_USB_PROTOCOL_PV)?"pv":"dm");

You can use libxl_usb_protocol_to_string here.

Could do, but I didn't necessarily want the long version ("devicemodel").

TBH the more I think about it the more I think DM/DEVICEMODEL in this
interface is leaking an implementation detail, after all the user
doesn't really care who/what is emulating a USB controller.

Protocol = {PV,OHCI,XHCI}?

As we covered before:

1. I have no way of selecting OHCI vs XHCI at this point

2. Even if I did, why should the caller have to keep track of what kind of USB hardware is exposed to the guest? They should be able to just say "Add" and have stuff sorted out.

In addition:

3. The point of saying DEVICEMODEL is that it's not PV. An HVM guest may be able to do either, and should be allowed to choose.

4. In any case, PROTOCOL_AUTO should be the expected default thing which should be called 99% of the time, unless there's a reason to choose otherwise.

5. #4 doesn't undermine #2 as an argument, because the caller should be able to specify "use qemu" without having to remember which hardware is currently exposed to the guest.




+        printf("%7d  ", dev[i].backend_domid);
+        printf("%7s  ", 
(dev[i].type==LIBXL_DEVICE_USB_TYPE_HOSTDEV)?"hostdev":"unknown");

libxl_device_usb_type_to_string.

Will that print "unknown" in the case of unknown device types?

It'll return NULL for unknowns (except for any defined unknowns, so I
suppose it returns NULL for unknown unknowns, cf [0]), so:
        libxl_device_usb_type_to_string(type) ? : "<unknown>"

Ack.

 -George

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


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.