From: Eduardo Habkost <ehabkost@redhat.com>
To: qemu-devel@nongnu.org
Cc: Laszlo Ersek <lersek@redhat.com>, Alexander Graf <agraf@suse.de>,
Marcel Apfelbaum <marcel@redhat.com>,
Thomas Huth <thuth@redhat.com>,
Peter Maydell <peter.maydell@linaro.org>,
Markus Armbruster <armbru@redhat.com>
Subject: [Qemu-devel] [RFC 00/19] sysbus: Don't allow -device/device_add by default
Date: Fri, 31 Mar 2017 21:46:05 -0300 [thread overview]
Message-ID: <20170401004624.30886-1-ehabkost@redhat.com> (raw)
This series refactor the cannot_instantiate_with_device_add code
for sysbus. First, cannot_instantiate_with_device_add is
replaced by !user_creatable. Then, we change TYPE_SYS_BUS_DEVICE
to set user_creatable=false by default, while keeping the
existing devices that are not rejected by -device with
user_creatable=true.
Then, the rest of the series remove user_creatable=true from most
of the device classes, each by a separate patch so the changes on
each device can be reviewed separatedly.
In the end of this series, the only remaining sysbus devices
creatable using -device/device_add will be:
On arm:
* vfio-amd-xgbe
* vfio-calxeda-xgmac
* vfio-amd-xgbe
* vfio-calxeda-xgmac
On x86:
* amd-iommu
* intel-iommu
On ppc:
* spapr-pci-host-bridge
* spapr-pci-vfio-host-bridge
* eTSEC
Cc: Alexander Graf <agraf@suse.de>
Cc: Laszlo Ersek <lersek@redhat.com>
Cc: Markus Armbruster <armbru@redhat.com>
Cc: Marcel Apfelbaum <marcel@redhat.com>
Cc: Thomas Huth <thuth@redhat.com>
Cc: Peter Maydell <peter.maydell@linaro.org>
Eduardo Habkost (19):
qdev: Replace cannot_instantiate_with_device_add_yet with
!user_creatable
s390: Add FIXME for unexplained user_creatable=false line
sysbus: Set user_creatable=false by default on TYPE_SYS_BUS_DEVICE
fdc: Remove user_creatable flag from sysbus-fdc & SUNW,fdtwo
pflash_cfi01: Remove user_creatable flag
iommu: Remove FIXME comment about user_creatable=true
kvmclock: Remove user_creatable flag
ioapic: Remove user_creatable flag
kvmvapic: Remove user_creatable flag
sysbus-ahci: Remove user_creatable flag
allwinner-ahci: Remove user_creatable flag
isabus-bridge: Remove user_creatable flag
unimplemented-device: Remove user_creatable flag
fw_cfg: Remove user_creatable flag
esp: Remove user_creatable flag
generic-sdhci: Remove user_creatable flag
hpet: Remove user_creatable flag
sysbus-ohci: Remove user_creatable flag
virtio-mmio: Remove user_creatable flag
include/hw/qdev-core.h | 10 +++++-----
include/hw/qdev-properties.h | 4 ++--
hw/acpi/piix4.c | 2 +-
hw/arm/spitz.c | 2 +-
hw/audio/marvell_88w8618.c | 2 +-
hw/audio/pcspk.c | 2 +-
hw/core/or-irq.c | 2 +-
hw/core/qdev.c | 1 +
hw/core/register.c | 2 +-
hw/core/sysbus.c | 11 +++++++++++
hw/dma/i8257.c | 2 +-
hw/dma/sparc32_dma.c | 2 +-
hw/gpio/omap_gpio.c | 4 ++--
hw/i2c/omap_i2c.c | 2 +-
hw/i2c/smbus_eeprom.c | 2 +-
hw/i2c/smbus_ich9.c | 2 +-
hw/i386/amd_iommu.c | 1 +
hw/i386/intel_iommu.c | 1 +
hw/i386/pc.c | 2 +-
hw/input/vmmouse.c | 2 +-
hw/intc/apic_common.c | 2 +-
hw/intc/etraxfs_pic.c | 2 +-
hw/intc/grlib_irqmp.c | 2 +-
hw/intc/i8259_common.c | 2 +-
hw/intc/nios2_iic.c | 2 +-
hw/intc/omap_intc.c | 4 ++--
hw/isa/lpc_ich9.c | 2 +-
hw/isa/piix4.c | 2 +-
hw/isa/vt82c686.c | 2 +-
hw/mips/gt64xxx_pci.c | 2 +-
hw/misc/vmport.c | 2 +-
hw/net/dp8393x.c | 2 +-
hw/net/etraxfs_eth.c | 2 +-
hw/net/fsl_etsec/etsec.c | 1 +
hw/net/lance.c | 2 +-
hw/pci-bridge/dec.c | 2 +-
hw/pci-bridge/pci_expander_bridge.c | 2 +-
hw/pci-host/apb.c | 2 +-
hw/pci-host/bonito.c | 2 +-
hw/pci-host/gpex.c | 2 +-
hw/pci-host/grackle.c | 2 +-
hw/pci-host/piix.c | 6 +++---
hw/pci-host/ppce500.c | 2 +-
hw/pci-host/prep.c | 2 +-
hw/pci-host/q35.c | 4 ++--
hw/pci-host/uninorth.c | 8 ++++----
hw/pci-host/versatile.c | 2 +-
hw/pci-host/xilinx-pcie.c | 2 +-
hw/ppc/ppc4xx_pci.c | 2 +-
hw/ppc/spapr_drc.c | 2 +-
hw/ppc/spapr_pci.c | 1 +
hw/s390x/s390-pci-bus.c | 2 +-
hw/sd/milkymist-memcard.c | 2 +-
hw/sd/pl181.c | 2 +-
hw/sh4/sh_pci.c | 2 +-
hw/timer/i8254_common.c | 2 +-
hw/timer/mc146818rtc.c | 2 +-
hw/vfio/amd-xgbe.c | 1 +
hw/vfio/calxeda-xgmac.c | 1 +
monitor.c | 2 +-
qdev-monitor.c | 6 +++---
qom/cpu.c | 2 +-
target/i386/cpu.c | 2 +-
63 files changed, 88 insertions(+), 70 deletions(-)
--
2.11.0.259.g40922b1
next reply other threads:[~2017-04-01 0:46 UTC|newest]
Thread overview: 55+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-04-01 0:46 Eduardo Habkost [this message]
2017-04-01 0:46 ` [Qemu-devel] [RFC 01/19] qdev: Replace cannot_instantiate_with_device_add_yet with !user_creatable Eduardo Habkost
2017-04-03 17:16 ` Alistair Francis
2017-04-01 0:46 ` [Qemu-devel] [RFC 02/19] s390: Add FIXME for unexplained user_creatable=false line Eduardo Habkost
2017-04-03 8:55 ` Cornelia Huck
2017-04-03 19:20 ` Eduardo Habkost
2017-04-04 6:46 ` Cornelia Huck
2017-04-01 0:46 ` [Qemu-devel] [RFC 03/19] sysbus: Set user_creatable=false by default on TYPE_SYS_BUS_DEVICE Eduardo Habkost
2017-04-03 19:49 ` Peter Maydell
2017-04-03 20:10 ` Eduardo Habkost
2017-04-03 20:15 ` Alexander Graf
2017-04-03 21:00 ` Eduardo Habkost
2017-04-04 6:53 ` Alexander Graf
2017-04-04 6:58 ` Thomas Huth
2017-04-04 7:02 ` Alexander Graf
2017-04-04 12:59 ` Eduardo Habkost
2017-04-04 13:06 ` Alexander Graf
2017-04-04 14:44 ` Eduardo Habkost
2017-04-04 13:05 ` Eduardo Habkost
2017-04-01 0:46 ` [Qemu-devel] [RFC 04/19] fdc: Remove user_creatable flag from sysbus-fdc & SUNW, fdtwo Eduardo Habkost
2017-04-01 0:46 ` [Qemu-devel] [RFC 05/19] pflash_cfi01: Remove user_creatable flag Eduardo Habkost
2017-04-03 12:43 ` Philippe Mathieu-Daudé
2017-04-03 15:45 ` Laszlo Ersek
2017-04-01 0:46 ` [Qemu-devel] [RFC 06/19] iommu: Remove FIXME comment about user_creatable=true Eduardo Habkost
2017-04-01 0:46 ` [Qemu-devel] [RFC 07/19] kvmclock: Remove user_creatable flag Eduardo Habkost
2017-04-01 0:46 ` [Qemu-devel] [RFC 08/19] ioapic: " Eduardo Habkost
2017-04-01 0:46 ` [Qemu-devel] [RFC 09/19] kvmvapic: " Eduardo Habkost
2017-04-01 0:46 ` [Qemu-devel] [RFC 10/19] sysbus-ahci: " Eduardo Habkost
2017-04-03 17:19 ` Alistair Francis
2017-04-01 0:46 ` [Qemu-devel] [RFC 11/19] allwinner-ahci: " Eduardo Habkost
2017-04-01 0:46 ` [Qemu-devel] [RFC 12/19] isabus-bridge: " Eduardo Habkost
2017-04-01 0:46 ` [Qemu-devel] [RFC 13/19] unimplemented-device: " Eduardo Habkost
2017-04-03 12:44 ` Philippe Mathieu-Daudé
2017-04-03 12:57 ` Peter Maydell
2017-04-03 13:34 ` Eduardo Habkost
2017-04-03 13:38 ` Peter Maydell
2017-04-03 13:54 ` Eduardo Habkost
2017-04-03 14:08 ` Peter Maydell
2017-04-03 18:30 ` Eduardo Habkost
2017-04-03 19:42 ` Peter Maydell
2017-04-03 20:05 ` Eduardo Habkost
2017-04-04 7:05 ` Thomas Huth
2017-04-04 7:12 ` Alexander Graf
2017-04-04 13:12 ` Eduardo Habkost
2017-04-01 0:46 ` [Qemu-devel] [RFC 14/19] fw_cfg: " Eduardo Habkost
2017-04-03 15:46 ` Laszlo Ersek
2017-04-01 0:46 ` [Qemu-devel] [RFC 15/19] esp: " Eduardo Habkost
2017-04-01 0:46 ` [Qemu-devel] [RFC 16/19] generic-sdhci: " Eduardo Habkost
2017-04-03 17:20 ` Alistair Francis
2017-04-01 0:46 ` [Qemu-devel] [RFC 17/19] hpet: " Eduardo Habkost
2017-04-01 0:46 ` [Qemu-devel] [RFC 18/19] sysbus-ohci: " Eduardo Habkost
2017-04-01 0:46 ` [Qemu-devel] [RFC 19/19] virtio-mmio: " Eduardo Habkost
2017-04-03 15:50 ` Laszlo Ersek
2017-04-04 19:35 ` Eduardo Habkost
2017-04-05 8:30 ` Laszlo Ersek
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=20170401004624.30886-1-ehabkost@redhat.com \
--to=ehabkost@redhat.com \
--cc=agraf@suse.de \
--cc=armbru@redhat.com \
--cc=lersek@redhat.com \
--cc=marcel@redhat.com \
--cc=peter.maydell@linaro.org \
--cc=qemu-devel@nongnu.org \
--cc=thuth@redhat.com \
/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.