From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:40646) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ScRKM-0002pg-Ca for qemu-devel@nongnu.org; Wed, 06 Jun 2012 21:15:56 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ScRKI-0006R5-Fp for qemu-devel@nongnu.org; Wed, 06 Jun 2012 21:15:53 -0400 Received: from e35.co.us.ibm.com ([32.97.110.153]:45585) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ScRKI-0006Pd-7l for qemu-devel@nongnu.org; Wed, 06 Jun 2012 21:15:50 -0400 Received: from /spool/local by e35.co.us.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Wed, 6 Jun 2012 19:15:46 -0600 Received: from d03relay01.boulder.ibm.com (d03relay01.boulder.ibm.com [9.17.195.226]) by d03dlp01.boulder.ibm.com (Postfix) with ESMTP id 04CD41FF001D for ; Thu, 7 Jun 2012 01:15:44 +0000 (WET) Received: from d03av03.boulder.ibm.com (d03av03.boulder.ibm.com [9.17.195.169]) by d03relay01.boulder.ibm.com (8.13.8/8.13.8/NCO v10.0) with ESMTP id q571Fb2F220598 for ; Wed, 6 Jun 2012 19:15:37 -0600 Received: from d03av03.boulder.ibm.com (loopback [127.0.0.1]) by d03av03.boulder.ibm.com (8.14.4/8.13.1/NCO v10.0 AVout) with ESMTP id q571Fa1p015005 for ; Wed, 6 Jun 2012 19:15:37 -0600 Message-ID: <4FD000B6.8060308@us.ibm.com> Date: Thu, 07 Jun 2012 09:15:34 +0800 From: Anthony Liguori MIME-Version: 1.0 References: <1338953515.7150.150.camel@pasglop> <4FCEEDC5.7090807@us.ibm.com> <1339017219.7150.170.camel@pasglop> In-Reply-To: <1339017219.7150.170.camel@pasglop> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [qemu-devel][RFC] Enable usb with default options List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Benjamin Herrenschmidt Cc: li zhang , qemu-devel@nongnu.org, zhlcindy@linux.vnet.ibm.com On 06/07/2012 05:13 AM, Benjamin Herrenschmidt wrote: > On Wed, 2012-06-06 at 13:42 +0800, Anthony Liguori wrote: >> On 06/06/2012 11:31 AM, Benjamin Herrenschmidt wrote: >>> On Wed, 2012-06-06 at 10:52 +0800, li zhang wrote: >>>> Hi Anthony, >>>> >>>> >>>> Any comment on this? >>> >>> Allright, this is all quite confusing... >>> >>> He's what I think should happen: >>> >>> When no option is passed -at-all-, we should have vga std and usb ohci + >>> usb mouse + usb ps2. >>> >>> When -nodefault is passed, we should have none of the above. >> >> -nodefault is a pretty ugly hack. I don't think there's any good reason to >> involve -nodefault into this discussion. > > Well, it's pretty fundamental to how libvirt does thing afaik... > > Take pseries, by "default" today it has a vscsi, a vterm etc.... but > with -nodefault, none of this so libvirt can create them manually. You misunderstand what I'm saying. -nodefault is a dumb option. It's semantics are poorly defined because it depends on machine. Further complicating those semantics by adding more magic for -M spapr just makes the situation worse. I'm suggesting to make use of the -machine option to allow usb to be disabled. So: qemu-system-ppc64 -machine type=spapr,usb=off libvirt can still happily name the usb controller whatever it wants. But the end result is a less magical command line. Regards, Anthony Liguori > > The problem is that for things created "by default", libvirt then makes > horrible assumptions about the default 'names' and bus names as well, > which is why it's generally somewhat saner to let it create the machine > from scratch (well, sorry for putting "sane" and "libvirt" in the same > sentence but you get my idea I think :-) > >>> -vga should only affect vga (a shortcut for -device >>> pick_your_vga_poison) >> >> Ack. > > (Note: This is in reference to our current internal patch which > automagically adds OHCI and USB kbd + mouse when you do -vga, that's not > something that should survive upstream). > >>> -usb should be essentially useless by default unless -nodefault is >>> passed in which case it is necessary to enable usb support, and -device >>> (or equivalent) to manually add the keyboard and mouse (libvirt). >> >> If you want pseries to always have usb, just make it there by default and yeah, >> -usb would be useless. If you want the option to not have usb, introduce a >> machine option I guess. > > Ah, I'm not familiar with "machine options" ... or do you mean another > machine type ? ie -M pseries_nousb ? :-) > > The problem with things like USB by default is that libvirt will fuckup > (at least that's my understanding from what Li says) bcs it's going to > try to create a separate USB bus and can't seem to figure out how to > reference the existing one, etc... In fact it even tries to re-use the > PCI bus/dev where the original OHCI is created an that clashes. > >> I think it's over thinking it though. There's little harm in having a usb >> controller present all the time. > > That makes more sense I agree, I'm just annoyed by the whole libvirt > business which seems to have some pretty hard assumptions that with > -nodefault you don't get anything by default, and I think it makes some > sense to keep that option around. > > Cheers, > Ben. > >> Regards, >> >> Anthony Liguori >> >>> >>> That's the best I can think of ... however it might be a bit tricky >>> seeing how qemu does things in vl.c at the moment, we might want to >>> introduce a default_usb variable which is used to set usb_enabled. >>> >>> BTW. The mac models should essentially behave the same, at least the >>> 64-bit one (32-bit supports CUDA for keyboard/mouse so USB isn't >>> strictly necessary). >>> >>> Cheers, >>> Ben. >>>> >>>> Thanks. >>>> >>>> On Tue, Jun 5, 2012 at 5:48 PM, li zhang wrote: >>>> Hi all, >>>> >>>> For pseries, when creating VMs with "-vga std", >>>> it requires usb mouse and usb kbd devices to be added. >>>> >>>> But with default options, vga is enabled and usb is disabled. >>>> User may use default options as the following commands: >>>> >>>> $qemu -M pseries >>>> >>>> If vga is enabled, usb mouse and usb kbd is disabled, >>>> the mouse and kbd can't be used. So it's very hard for >>>> users to use. >>>> >>>> I think it's necessary to enable usb with default options. >>>> >>>> Any idea about that? >>>> Your comments are very appreciated. :) >>>> >>>> Thanks. >>>> -Li >>>> >>>> >>>> >>>> >>>> -- >>>> >>>> >>>> Best Regards >>>> -Li >>>> >>>> >>> >>> > >