From mboxrd@z Thu Jan 1 00:00:00 1970 From: Juergen Gross Subject: Re: [PATCH V3 4/6] xl: add pvusb commands Date: Wed, 20 May 2015 16:55:11 +0200 Message-ID: <555CA04F.20705@suse.com> References: <1429415452-6161-1-git-send-email-cyliu@suse.com> <1429415452-6161-5-git-send-email-cyliu@suse.com> <5534B4D8.4010109@suse.com> <555C9B3A.6000906@suse.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii"; Format="flowed" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: George Dunlap Cc: Lars Kurth , Wei Liu , Ian Campbell , Chunyan Liu , "xen-devel@lists.xen.org" , Ian Jackson , Simon Cao List-Id: xen-devel@lists.xenproject.org On 05/20/2015 04:41 PM, George Dunlap wrote: > On Wed, May 20, 2015 at 3:33 PM, Juergen Gross wrote: >> On 05/20/2015 04:20 PM, George Dunlap wrote: >>> >>> On Mon, Apr 20, 2015 at 9:12 AM, Juergen Gross wrote: >>>> >>>> On 04/19/2015 05:50 AM, Chunyan Liu wrote: >>>>> >>>>> >>>>> Add pvusb commands: usb-ctrl-attach, usb-ctrl-detach, usb-list, >>>>> usb-attach and usb-detach. >>>>> >>>>> To attach a usb device to guest through pvusb, one could follow >>>>> following example: >>>>> >>>>> #xl usb-ctrl-attach test_vm version=1 num_ports=8 >>>>> >>>>> #xl usb-list test_vm >>>>> will show the usb controllers and port usage under the domain. >>>>> >>>>> #xl usb-attach test_vm 1.6 >>>>> will find the first usable controller:port, and attach usb >>>>> device whose bus address is 1.6 (busnum is 1, devnum is 6) >>>>> to it. One could also specify which and which . >>>>> >>>>> #xl usb-detach test_vm 1.6 >>>>> >>>>> #xl usb-ctrl-detach test_vm dev_id >>>>> will destroy the controller with specified dev_id. Dev_id >>>>> can be traced in usb-list info. >>>>> >>>>> Signed-off-by: Chunyan Liu >>>>> Signed-off-by: Simon Cao >>>>> --- >>>>> Changes to v2: >>>>> * use bus.addr as user interface instead of busid in >>>>> usb-attach|detach >>>>> * remove usb-assignable-list interface >>>> >>>> >>>> >>>> Why? While lsusb in combination with xl usb-list for each domain will >>>> give the same information, having to iterate through all domains can be >>>> quite annoying. >>>> >>>> An alternative would be to accept omitting the domain for xl usb-list >>>> and list all domains with assigned usb devices in this case. >>> >>> >>> I don't understand what information it is that you want. Do you want >>> a list of devices *not already assigned* to domains? >> >> >> Yes. > > ...and why do you need that, instead of just remembering what you'd > assigned to whom? > > We don't really have the equivalent for pci either. That is, if a > device shows up in "lspci" but not in "pci-assignable-list", that may > be either because 1) I hasn't yet been assigned to pciback (and this > is available to be assigned to a domain), or 2) because it's already > been assigned to a domain. Someone new coming to the system would > need to check all VMs to see which devices hadn't yet been assigned. So this is a problem of pci-assignable-list, which isn't present for USB devices. Any USB device not already assigned to a VM would be listed as before with "xm usb-assignable-list". Additionally all systems support hotplug of USB devices - the list of available USB-devices can change rather often. If you unplug e.g. a memory stick which has been assigned to a VM and stick it in again it might show up under a different address and has to be reassigned. Remembering having it already assigned won't help in this case as much as a simple command to list the devices ready for assignment. Juergen