From: Igor Mammedov <imammedo@redhat.com>
To: Li Zhang <zhlcindy@gmail.com>
Cc: peter.maydell@linaro.org, qemu-arm@nongnu.org,
qemu-devel@nongnu.org, Li Zhang <li.zhang@hxt-semitech.com>
Subject: Re: [Qemu-devel] [PATCH 0/3] arm/virt: refine virt.c code and implement hot_add_cpu interface
Date: Fri, 26 May 2017 13:21:14 +0200 [thread overview]
Message-ID: <20170526132114.6edc006e@nial.brq.redhat.com> (raw)
In-Reply-To: <1495790468-23862-1-git-send-email-zhlcindy@gmail.com>
On Fri, 26 May 2017 17:21:05 +0800
Li Zhang <zhlcindy@gmail.com> wrote:
> From: Li Zhang <li.zhang@hxt-semitech.com>
>
> virt machine doesn't support hot_add_cpu interface. This patchset is to implement
> hot_add_cpu interface. A CPU can be added by QMP command with QEMU monitor.
>
> Here is command to add a CPU with QMP command.
>
> * qemu-system-aarch64 -machine virt -cpu cortex-a15 -smp 1,maxcpus=4 \
> -monitor telnet:127.0.0.1:4444,server,nowait -nographic
> * connect monitor: telnet 127.0.0.1 4444
> * execute qmp command: cpu-add 1
cpu-add command shouldn't be used for new cpu hotplug,
pls use generic device_add for that.
The last time I looked at it, virt machine needed quite a bit of
re-factoring of the way it creates/wires up CPUs.
Pls see usage of following callbacks for example on how to implement
device_add based cpu hotplug:
get_hotplug_handler
pc_cpu_pre_plug
pc_cpu_plug
pc_possible_cpu_arch_ids
and pc_cpus_init() for initial cpu creation with above callbacks in use
>
> Currently, when KVM is enabled and add a CPU with QMP command, QEMU
> reports error "kvm_init_vcpu failed: Device or resourc busy". KVM can't
> create a new CPU when vgic has been initialized and irqchip_in_kernel in
> function kvm_arch_vcpu_create. It needs to change KVM code in the future.
if KVM isn't capable do it yet, then qemu should refuse cpu hotplug if running
with KVM accelarator and allow it only in TCG mode.
>
> Li Zhang (3):
> arm/virt: Refine fdt_add_cpu_nodes code
> arm/virt: Refine code of machvirt_init
> arm/virt: Implement hot_add_cpu interface
>
> hw/arm/virt.c | 344 ++++++++++++++++++++++++++++++++++------------------------
> 1 file changed, 202 insertions(+), 142 deletions(-)
>
next prev parent reply other threads:[~2017-05-26 11:21 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-05-26 9:21 [Qemu-devel] [PATCH 0/3] arm/virt: refine virt.c code and implement hot_add_cpu interface Li Zhang
2017-05-26 9:21 ` [Qemu-devel] [PATCH 1/3] arm/virt: Refine fdt_add_cpu_nodes code Li Zhang
2017-05-26 9:21 ` [Qemu-devel] [PATCH 2/3] arm/virt: Refine code of machvirt_init Li Zhang
2017-05-26 9:21 ` [Qemu-devel] [PATCH 3/3] arm/virt: Implement hot_add_cpu interface Li Zhang
2017-05-26 11:21 ` Igor Mammedov [this message]
2017-05-27 2:32 ` [Qemu-devel] [PATCH 0/3] arm/virt: refine virt.c code and implement " Li Zhang
2017-05-29 10:43 ` Igor Mammedov
2017-05-30 3:43 ` Li Zhang
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=20170526132114.6edc006e@nial.brq.redhat.com \
--to=imammedo@redhat.com \
--cc=li.zhang@hxt-semitech.com \
--cc=peter.maydell@linaro.org \
--cc=qemu-arm@nongnu.org \
--cc=qemu-devel@nongnu.org \
--cc=zhlcindy@gmail.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 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).