From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from [140.186.70.92] (port=56082 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OEefE-0004b8-Me for qemu-devel@nongnu.org; Wed, 19 May 2010 04:30:13 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1OEeeY-0002Wn-JO for qemu-devel@nongnu.org; Wed, 19 May 2010 04:29:25 -0400 Received: from mx1.redhat.com ([209.132.183.28]:62313) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OEeeY-0002We-AG for qemu-devel@nongnu.org; Wed, 19 May 2010 04:29:22 -0400 Message-ID: <4BF3A15C.7010505@redhat.com> Date: Wed, 19 May 2010 11:29:16 +0300 From: Avi Kivity MIME-Version: 1.0 Subject: Re: [Qemu-devel] [PATCH 1/8] qdev: Allow device addressing via 'driver.instance' References: <913f4f6a67305a72ed3d994bd12d5b34de9b9bb9.1273843151.git.jan.kiszka@siemens.com> <4BF288BC.40409@redhat.com> In-Reply-To: <4BF288BC.40409@redhat.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Gerd Hoffmann Cc: Anthony Liguori , Juan Quintela , Jan Kiszka , qemu-devel@nongnu.org, Luiz Capitulino , Markus Armbruster On 05/18/2010 03:31 PM, Gerd Hoffmann wrote: > On 05/18/10 14:15, Markus Armbruster wrote: >> Jan Kiszka writes: >> >>> Extend qbus_find_dev to allow addressing of devices without an >>> unique id >>> via an optional instance number. The new formats are 'driver.instance' >>> and 'alias.instance'. >>> >>> Signed-off-by: Jan Kiszka >> >> How's the instance number defined? Should be documented. > > savevm instance id, used to identify multiple instances of some device > on loadvm. By default is just incrementing (0,1,2,...) for each new > device instance I think. That's an implementation detail that's being exposed in an external interface. Granted, users shouldn't expect this to remain stable across invocations, yet it makes me uncomfortable. Why not always use topology to locate devices? > Drivers can also specify one. Most don't do that. IIRC some ISA > drivers use the base ioport as instance id, which sort-of makes sense > as it makes sure the id identifies the correct device no matter what > the initialization order is. > > It probably makes sense to replace the instance id with the device > path once all devices are converted over to qdev+vmstate, so we avoid > the nasty ordering issues altogether. Oh, that's what you're suggesting. So we agree. -- Do not meddle in the internals of kernels, for they are subtle and quick to panic.