From: Anthony Liguori <anthony@codemonkey.ws>
To: qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [RFC PATCH 0/9] Configurable PCI device addresses
Date: Thu, 22 Jan 2009 14:06:08 -0600 [thread overview]
Message-ID: <4978D1B0.5040500@codemonkey.ws> (raw)
In-Reply-To: <87ocxzrvqb.fsf@pike.pond.sub.org>
Markus Armbruster wrote:
> This patch series makes PCI device addresses configurable for a number
> of devices. For now, I just covered the ones I consider important
> and/or where the change is somewhat invasive.
>
> Why is a configurable PCI device address useful? Currently, QEMU
> assigns a few device addresses statically, and the rest dynamically on
> a first come, first serve basis[*]. If you add or remove a device,
> all devices registering later change address. I'm told a certain
> operating system that can't be named in polite company can get rather
> upset about that.
>
> Making the device address configurable looks like the simplest
> solution to this problem. Only users who really mind changing
> addresses have to deal with the new configuration parameter.
>
I think we're starting to get to the tipping point where we really just
need to introduce a machine config file.
Paul, you mentioned you were working on something before? Care to
update us on the status?
I know there was a fair bit of support before for a FDT based machine
config.
Regards,
Anthony Liguori
> I started with Izik's proposal to "allow setting static slot values
> for pci devices from the command line", see
>
> http://lists.gnu.org/archive/html/qemu-devel/2008-01/msg00601.html
> http://lists.gnu.org/archive/html/qemu-devel/2007-11/msg00620.html
>
> but ended up doing it quite differently.
>
> I'm just soliciting comments. I do *not* ask for a commit of anything
> right now.
>
> The patch series consists of these parts:
>
> [1/9] PCI device registration helpers
> [2/9] Clean up handling of name=value,... part of -vga option argument
> [3/9] Support pci=... in option argument of -vga
> [4/9] Convert virtio_init_pci() to pci_register_device_2()
> [5/9] Support pci=... in option argument of -net nic
> [6/9] Make drives_opt[] accessible from device initialization
> [7/9] Support pci=... in option argument of -drive if=virtio
> [8/9] New option -audio as a more flexible alternative to -soundhw
> [9/9] Support pci=... in option argument of -audio
>
> Overall diffstat:
>
> hw/ac97.c | 11 +---
> hw/audiodev.h | 4 +-
> hw/cirrus_vga.c | 6 +-
> hw/e1000.c | 6 +-
> hw/eepro100.c | 19 ++++----
> hw/es1370.c | 11 +---
> hw/mips_malta.c | 17 +++----
> hw/ne2000.c | 7 +--
> hw/pc.c | 23 ++++------
> hw/pc.h | 11 +---
> hw/pci.c | 109 ++++++++++++++++++++++++++++++++++++++++++++--
> hw/pci.h | 25 ++++++----
> hw/pcnet.c | 6 +-
> hw/ppc440_bamboo.c | 5 +-
> hw/ppc_chrp.c | 4 +-
> hw/ppc_oldworld.c | 4 +-
> hw/ppc_prep.c | 4 +-
> hw/r2d.c | 8 ++--
> hw/realview.c | 2 +-
> hw/rtl8139.c | 7 +--
> hw/sun4u.c | 4 +-
> hw/versatilepb.c | 2 +-
> hw/vga.c | 40 ++++++++--------
> hw/virtio-balloon.c | 2 +-
> hw/virtio-blk.c | 4 +-
> hw/virtio-blk.h | 2 +-
> hw/virtio-console.c | 2 +-
> hw/virtio-net.c | 5 +-
> hw/virtio-net.h | 2 +-
> hw/virtio.c | 5 +-
> hw/virtio.h | 2 +-
> hw/vmware_vga.c | 7 ++-
> net.c | 1 +
> net.h | 1 +
> sysemu.h | 13 +++++-
> vl.c | 120 ++++++++++++++++++++++++++++++++-------------------
> 36 files changed, 315 insertions(+), 186 deletions(-)
>
>
> [*] To be precise: it assigns the dev.func part dynamically. The
> domain:bus: part is still statically assigned.
>
>
>
next prev parent reply other threads:[~2009-01-22 20:06 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-01-22 19:23 [Qemu-devel] [RFC PATCH 0/9] Configurable PCI device addresses Markus Armbruster
2009-01-22 19:30 ` [Qemu-devel] [PATCH 1/9] PCI device registration helpers Markus Armbruster
2009-01-22 19:30 ` [Qemu-devel] [PATCH 2/9] Clean up handling of name=value, ... part of -vga option argument Markus Armbruster
2009-01-22 19:30 ` [Qemu-devel] [PATCH 3/9] Support pci=... in option argument of -vga Markus Armbruster
2009-01-22 19:31 ` [Qemu-devel] [PATCH 4/9] Convert virtio_init_pci() to pci_register_device_2() Markus Armbruster
2009-01-22 19:31 ` [Qemu-devel] [PATCH 5/9] Support pci=... in option argument of -net nic Markus Armbruster
2009-01-22 19:31 ` [Qemu-devel] [PATCH 6/9] Make drives_opt[] accessible from device initialization Markus Armbruster
2009-01-22 19:31 ` [Qemu-devel] [PATCH 7/9] Support pci=... in option argument of -drive if=virtio Markus Armbruster
2009-01-22 19:31 ` [Qemu-devel] [PATCH 8/9] New option -audio as a more flexible alternative to -soundhw Markus Armbruster
2009-01-22 22:03 ` malc
2009-01-23 8:32 ` Markus Armbruster
2009-01-23 9:29 ` Kevin Wolf
2009-01-23 10:04 ` Markus Armbruster
2009-01-23 10:24 ` Kevin Wolf
2009-01-23 11:51 ` Markus Armbruster
2009-01-22 19:31 ` [Qemu-devel] [PATCH 9/9] Support pci=... in option argument of -audio Markus Armbruster
2009-01-22 20:06 ` Anthony Liguori [this message]
2009-01-23 9:04 ` [Qemu-devel] [RFC PATCH 0/9] Configurable PCI device addresses Markus Armbruster
2009-01-23 10:23 ` Daniel P. Berrange
2009-01-23 19:06 ` Paul Brook
2009-01-23 19:28 ` Anthony Liguori
2009-01-26 8:55 ` Markus Armbruster
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=4978D1B0.5040500@codemonkey.ws \
--to=anthony@codemonkey.ws \
--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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.