[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: [PATCH RFC V3 00/29] Support of Virtual CPU Hotplug for ARMv8 Arch
From: |
Salil Mehta |
Subject: |
RE: [PATCH RFC V3 00/29] Support of Virtual CPU Hotplug for ARMv8 Arch |
Date: |
Wed, 4 Sep 2024 14:24:26 +0000 |
Hi Alex,
> -----Original Message-----
> From: Alex Bennée <alex.bennee@linaro.org>
> Sent: Thursday, August 29, 2024 11:00 AM
> To: Gustavo Romero <gustavo.romero@linaro.org>
>
> Gustavo Romero <gustavo.romero@linaro.org> writes:
>
> > Hi Salil,
> >
> > On 6/13/24 8:36 PM, Salil Mehta via wrote:
> <snip>
> >> (VI) Commands Used
> >> ==================
> >> A. Qemu launch commands to init the machine:
> >> $ qemu-system-aarch64 --enable-kvm -machine virt,gic-version=3 \
> >> -cpu host -smp cpus=4,maxcpus=6 \
> >> -m 300M \
> >> -kernel Image \
> >> -initrd rootfs.cpio.gz \
> >> -append "console=ttyAMA0 root=/dev/ram rdinit=/init maxcpus=2
> acpi=force" \
> >> -nographic \
> >> -bios QEMU_EFI.fd \
> >> B. Hot-(un)plug related commands:
> >> # Hotplug a host vCPU (accel=kvm):
> >> $ device_add host-arm-cpu,id=core4,core-id=4
> >> # Hotplug a vCPU (accel=tcg):
> >> $ device_add cortex-a57-arm-cpu,id=core4,core-id=4
> >
> > Since support for hotplug is disabled on TCG, remove these two lines
> > in v4 cover letter?
>
> Why is it disabled for TCG? We should aim for TCG being as close to KVM as
> possible for developers even if it is not a production solution.
Agreed In principle. Yes, that would be of help.
Context why it was disabled although most code to support TCG exist:
I had reported a crash in the RFC V1 (June 2020) about TCGContext counter
overflow assertion during repeated hot(un)plug operation. Miguel from Oracle
was able to reproduce this problem last year in Feb and also suggested a fix
but he
later found out in his testing that there was a problem during migration.
RFC V1 June 2020:
https://lore.kernel.org/qemu-devel/20200613213629.21984-1-salil.mehta@huawei.com/
Scroll to below:
[...]
THINGS TO DO:
(*) Migration support
(*) TCG/Emulation support is not proper right now. Works to a certain extent
but is not complete. especially the unrealize part in which there is a
overflow of tcg contexts. The last is due to the fact tcg maintains a
count on number of context(per thread instance) so as we hotplug the vcpus
this counter keeps on incrementing. But during hot-unplug the counter is
not decremented.
@ Feb 2023, [Linaro-open-discussions] Re: Qemu TCG support for
virtual-cpuhotplug/online-policy
https://op-lists.linaro.org/archives/list/linaro-open-discussions@op-lists.linaro.org/message/GMDFTEZE6WUUI7LZAYOWLXFHAPXLCND5/
Last status reported by Miguel was that there was problem with the TCG and he
intended
to fix this. He was on paternity leave so I will try to gather the exact status
of the TCG today.
Thanks
Salil
>
> --
> Alex Bennée
> Virtualisation Tech Lead @ Linaro