From: Paul Brook <paul@codesourcery.com>
To: Gerd Hoffmann <kraxel@redhat.com>
Cc: qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [PATCH] Name the default PCI bus "pci.0" on all architectures
Date: Thu, 3 Jun 2010 06:45:01 +0100 [thread overview]
Message-ID: <201006030645.01509.paul@codesourcery.com> (raw)
In-Reply-To: <4C06C727.9060405@redhat.com>
> Hi,
>
> > I disagree. Anything that depends on device creation order is
> > fundamentally broken. If you want to create globally unique
> > user-friendly tags for devices or busses then that is a completely
> > different problem, and should be done via explicit aliases.
>
> For anything created via -device the id does the job. The device gets
> tagged with the supplied id, and any child busses of that device carry
> the id too, i.e.
>
> -device lsi,id=foo
>
> creates a lsi scsi hostadapter with id 'foo' and a scsi bus with the
> name 'foo.0'. A (theoretical) scsi hba with two scsi busses would have
> 'foo.0' and 'foo.1' child busses. If you don't specify a id you'll get
> 'scsi.$nr'. Numbers are per device, not global. So if you add two lsi
> adapters without id you'll get two 'scsi.0' busses, so better don't do
> that if you want be able to address them via bus= ...
IMO the name of the bus should not depend on the id of the device. Bus names
should be used to distinguish between different child busses within the same
device. The parent device (plus local bus name if necessary) is more than
sufficient to identify the bus. One of the key features of the bus/device
framework is that it gives us a tree structure and avoids the need for
globally unique names. The real bug here is that the bus specifier should be a
tree address. Once you do that you don't need the weird bus naming, and any
aliases you create for a device can be trivially used to locate its child
busses.
As mentioned previously, I think devices should be specifying the names of
their child busses, and anything that passes NULL to qbus_create is just plain
wrong. Trying to automagically allocate names is IMO fundamentally flawed.
Paul
next prev parent reply other threads:[~2010-06-03 5:45 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-05-19 16:42 [Qemu-devel] [PATCH] Name the default PCI bus "pci.0" on all architectures Daniel P. Berrange
2010-05-19 19:19 ` Blue Swirl
2010-05-20 10:00 ` Daniel P. Berrange
2010-05-28 19:39 ` Paul Brook
2010-05-29 5:13 ` Markus Armbruster
2010-06-02 15:13 ` Paul Brook
2010-06-11 13:00 ` Markus Armbruster
2010-06-11 14:28 ` Paul Brook
2010-06-02 14:12 ` Daniel P. Berrange
2010-06-02 15:10 ` Paul Brook
2010-06-02 21:03 ` Gerd Hoffmann
2010-06-03 5:45 ` Paul Brook [this message]
2010-06-03 10:14 ` Andreas Färber
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=201006030645.01509.paul@codesourcery.com \
--to=paul@codesourcery.com \
--cc=kraxel@redhat.com \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).