From: "Andreas Färber" <afaerber@suse.de>
To: Igor Mammedov <imammedo@redhat.com>
Cc: Jan Kiszka <jan.kiszka@siemens.com>,
"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
Anthony Liguori <anthony@codemonkey.ws>,
Paolo Bonzini <pbonzini@redhat.com>
Subject: Re: [Qemu-devel] [PATCH 1/7] Introduce a new bus "ICC" to connect APIC
Date: Fri, 24 Feb 2012 14:30:30 +0100 [thread overview]
Message-ID: <4F4790F6.3070301@suse.de> (raw)
In-Reply-To: <4F478B2D.9050903@redhat.com>
Am 24.02.2012 14:05, schrieb Igor Mammedov:
> On 02/17/2012 06:02 PM, Igor Mammedov wrote:
>> So I'd rather drop ICC patch and try your approach with CPU links<>, I
>> see no
>> point in introducing new bus providing we have an alternative model
>> and existing
>> bus for the task.
>
> I've looked at device_add command and qdev_device_add it uses for doing
> actual work
> and in current state it requires (based on Andreas' qom_cpu branch):
>
> For approach where apic and cpu hot-plugged to sysbus.
> 1. created object must be descendant of TYPE_DEVICE. So QOM TYPE_CPU
> should be inherited
> from TYPE_DEVICE at least or TYPE_SYS_BUS_DEVICE.
> 2. hot-plug on the bus should be allowed. if we ditch icc bus then we
> should allow
> hot-plug on sysbus. Can we do this? (i.e. it seems that for P4 and
> later cpus
> sysbus should be hot-plugable).
> 3. should DeviceClass.init be used for cpu initialization or should
> .instance_init
> do all the job and make DeviceClass.init nop?
SysBus is supposed to go away in Anthony's upcoming 4th QOM series, so
I'd rather not base a new series on that.
The issue with TYPE_DEVICE is that we don't want to leak that into the
user emulators (would break the build), and any infrastructure only
available to qdev should gradually be made accessible to all objects
(Paolo has done some work in that direction wrt properties). So the main
remaining difference between Object and Device is the GPIO IRQ support.
Anthony wanted to introduce Pin objects to replace qemu_irq.
As for init, the idea was to have initialization code in an initfn, the
resulting state is then supposed to be overridable by the user (e.g.,
set family, model, stepping differently on the CPU) and then do the
construction work in a realize function that corresponds more closely to
DeviceClass::init. This too, still needs to be generalized.
Andreas
--
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg
next prev parent reply other threads:[~2012-02-24 13:30 UTC|newest]
Thread overview: 50+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-02-15 23:16 [Qemu-devel] [PATCH 0/7] Add CPU hot-plug to qemu (pc only). v2 Igor Mammedov
2012-02-15 23:16 ` [Qemu-devel] [PATCH 1/7] Introduce a new bus "ICC" to connect APIC Igor Mammedov
2012-02-16 11:25 ` Jan Kiszka
2012-02-16 12:42 ` Anthony Liguori
2012-02-16 12:50 ` Jan Kiszka
2012-02-16 12:59 ` Anthony Liguori
2012-02-16 13:06 ` Jan Kiszka
2012-02-17 17:02 ` Igor Mammedov
2012-02-24 13:05 ` Igor Mammedov
2012-02-24 13:30 ` Andreas Färber [this message]
2012-02-24 13:40 ` Paolo Bonzini
2012-02-24 13:47 ` Anthony Liguori
2012-02-24 13:50 ` Paolo Bonzini
2012-02-24 14:44 ` Anthony Liguori
2012-02-15 23:16 ` [Qemu-devel] [PATCH 2/7] Convert pc cpu to qdev Igor Mammedov
2012-02-16 11:27 ` Jan Kiszka
2012-02-16 12:01 ` Jan Kiszka
2012-02-16 12:51 ` Anthony Liguori
2012-02-16 12:54 ` Jan Kiszka
2012-02-16 16:09 ` Anthony Liguori
2012-03-13 9:32 ` Lai Jiangshan
2012-03-13 11:04 ` Andreas Färber
2012-03-14 7:59 ` Lai Jiangshan
2012-03-14 8:37 ` Igor Mammedov
2012-03-14 13:49 ` Vasilis Liaskovitis
2012-03-14 15:23 ` Gleb Natapov
2012-03-14 15:32 ` Anthony Liguori
2012-03-14 15:35 ` Gleb Natapov
2012-03-14 15:42 ` Anthony Liguori
2012-03-14 15:54 ` Gleb Natapov
2012-03-14 15:57 ` Anthony Liguori
2012-03-14 16:27 ` Gleb Natapov
2012-03-14 19:55 ` Vasilis Liaskovitis
2012-03-15 12:07 ` Gleb Natapov
2012-02-16 12:45 ` Anthony Liguori
2012-02-16 16:09 ` Andreas Färber
2012-02-17 17:16 ` Igor Mammedov
2012-02-17 18:07 ` Andreas Färber
2012-02-15 23:16 ` [Qemu-devel] [PATCH 3/7] cleanup: get rid of pc_new_cpu Igor Mammedov
2012-02-15 23:16 ` [Qemu-devel] [PATCH 4/7] cleanup: remove redundant pc_cpu_reset Igor Mammedov
2012-02-16 11:32 ` Jan Kiszka
2012-02-15 23:16 ` [Qemu-devel] [PATCH 5/7] Set default 'model' property if it wasn't specified yet Igor Mammedov
2012-02-16 11:36 ` Jan Kiszka
2012-02-15 23:16 ` [Qemu-devel] [PATCH 6/7] Prepare ACPI infrastructure for cpu hot-plug in acpi_piix4 Igor Mammedov
2012-02-16 11:41 ` Jan Kiszka
2012-02-15 23:16 ` [Qemu-devel] [PATCH 7/7] Implement cpu hot-add using device_add monitor command Igor Mammedov
2012-02-15 23:35 ` Anthony Liguori
2012-02-16 9:33 ` Igor Mammedov
2012-02-16 15:52 ` Andreas Färber
2012-02-16 10:16 ` Jan Kiszka
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=4F4790F6.3070301@suse.de \
--to=afaerber@suse.de \
--cc=anthony@codemonkey.ws \
--cc=imammedo@redhat.com \
--cc=jan.kiszka@siemens.com \
--cc=pbonzini@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).