From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from [140.186.70.92] (port=50391 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OTvqf-0007ZC-Gh for qemu-devel@nongnu.org; Wed, 30 Jun 2010 07:53:02 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1OTvqd-00004v-DJ for qemu-devel@nongnu.org; Wed, 30 Jun 2010 07:53:01 -0400 Received: from mx1.redhat.com ([209.132.183.28]:44526) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OTvqd-0008WN-39 for qemu-devel@nongnu.org; Wed, 30 Jun 2010 07:52:59 -0400 From: Markus Armbruster Subject: Re: [Qemu-devel] Re: [PATCH 08/12] block: Catch attempt to attach multiple devices to a blockdev References: <1277484812-22012-1-git-send-email-armbru@redhat.com> <1277484812-22012-9-git-send-email-armbru@redhat.com> <20100626101146.GC27699@lst.de> <20100627093609.GA12016@lst.de> <4C285C51.9020003@redhat.com> <20100628101658.GA1997@lst.de> <4C2878EC.1040803@redhat.com> Date: Wed, 30 Jun 2010 13:52:48 +0200 In-Reply-To: <4C2878EC.1040803@redhat.com> (Kevin Wolf's message of "Mon, 28 Jun 2010 12:26:52 +0200") Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Kevin Wolf Cc: kraxel@redhat.com, Christoph Hellwig , qemu-devel@nongnu.org Kevin Wolf writes: > Am 28.06.2010 12:16, schrieb Christoph Hellwig: >> On Mon, Jun 28, 2010 at 10:24:49AM +0200, Kevin Wolf wrote: >> >>> Am 27.06.2010 11:36, schrieb Christoph Hellwig: >>>> On Sat, Jun 26, 2010 at 04:44:11PM +0200, Markus Armbruster wrote: [...] >>>>> -device usb-storage,drive=foo creates *two* devices: usb-storage itself, >>>>> which serves as SCSI controller, and scsi-disk for the drive. >>>>> usb-storage copies its drive property to scsi-disk. >>>>> >>>>> I don't like this. Each -device should create just one device. >>>> >>>> Indeed. I'd also prefer to get rid of this. Anthony, how hard are the >>>> rules on backwards compatiblity for things like this? >>> >>> How would breaking compatibility help us? For the user a USB MSD is only >>> one device, so requiring two -device parameters sounds wrong. -device designed to be simple, stupid and straightforward: you get exactly what you asked for, no more, no less. usb-storage breaks this design maxim. >> But it is separate devices. At least the standards compliant usb >> storage devices just are a bride of scsi commands over usb and fit into >> the SAM device model, which makes a difference between initiator, target >> and LUN. So having a different device for the specific target vs the >> initiator port makes a difference. (and yes, we're still totally missing >> support for multiple luns, which would require another level of >> devices). Trying to hide this is not all that useful - not anymore >> useful than hiding it on a "normal" scsi host controller anyway. > > Maybe we need something like composed devices? So when the user asks for > a USB stick, he actually gets all devices that this stick internally > uses? Otherwise it becomes really hard to use -device directly. Could be useful. > I guess the same applies for mainboards, CPUs and probably some more > things, though I don't really know how these are (planned to be) done in > qdev. I'd like to keep -device stupid. If we need "smarter" controls, let's layer them on top.