lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Tue, 7 Jul 2020 09:52:54 +0000
From:   Salil Mehta <salil.mehta@...wei.com>
To:     "linux-arm-kernel@...ts.infradead.org" 
        <linux-arm-kernel@...ts.infradead.org>
CC:     "maz@...nel.org" <maz@...nel.org>,
        "will@...nel.org" <will@...nel.org>,
        "catalin.marinas@....com" <catalin.marinas@....com>,
        "christoffer.dall@....com" <christoffer.dall@....com>,
        "andre.przywara@....com" <andre.przywara@....com>,
        "james.morse@....com" <james.morse@....com>,
        "mark.rutland@....com" <mark.rutland@....com>,
        "lorenzo.pieralisi@....com" <lorenzo.pieralisi@....com>,
        "sudeep.holla@....com" <sudeep.holla@....com>,
        "qemu-arm@...gnu.org" <qemu-arm@...gnu.org>,
        "peter.maydell@...aro.org" <peter.maydell@...aro.org>,
        "richard.henderson@...aro.org" <richard.henderson@...aro.org>,
        "imammedo@...hat.com" <imammedo@...hat.com>,
        "mst@...hat.com" <mst@...hat.com>,
        "drjones@...hat.com" <drjones@...hat.com>,
        "pbonzini@...hat.com" <pbonzini@...hat.com>,
        "eric.auger@...hat.com" <eric.auger@...hat.com>,
        "gshan@...hat.com" <gshan@...hat.com>,
        "david@...hat.com" <david@...hat.com>,
        "kvm@...r.kernel.org" <kvm@...r.kernel.org>,
        "linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
        Linuxarm <linuxarm@...wei.com>,
        "mehta.salil.lnk@...il.com" <mehta.salil.lnk@...il.com>
Subject: RE: [PATCH RFC 0/4] Changes to Support *Virtual* CPU Hotplug for
 ARM64

Hello,
A gentle reminder, any comments regarding this series will help us know
your opinion and also confirm/correct our understanding about the topic
and will be much appreciated.

Thanks in anticipation!

Best regards
Salil

> From: Salil Mehta
> Sent: Thursday, June 25, 2020 2:38 PM
> To: linux-arm-kernel@...ts.infradead.org
> Cc: maz@...nel.org; will@...nel.org; catalin.marinas@....com;
> christoffer.dall@....com; andre.przywara@....com; james.morse@....com;
> mark.rutland@....com; lorenzo.pieralisi@....com; sudeep.holla@....com;
> qemu-arm@...gnu.org; peter.maydell@...aro.org; richard.henderson@...aro.org;
> imammedo@...hat.com; mst@...hat.com; drjones@...hat.com; pbonzini@...hat.com;
> eric.auger@...hat.com; gshan@...hat.com; david@...hat.com;
> kvm@...r.kernel.org; linux-kernel@...r.kernel.org; Linuxarm
> <linuxarm@...wei.com>; mehta.salil.lnk@...il.com; Salil Mehta
> <salil.mehta@...wei.com>
> Subject: [PATCH RFC 0/4] Changes to Support *Virtual* CPU Hotplug for ARM64
> 
> Changes to support virtual cpu hotplug in QEMU[1] have been introduced to the
> community as RFC. These are under review.
> 
> To support virtual cpu hotplug guest kernel must:
> 1. Identify disabled/present vcpus and set/unset the present mask of the vcpu
>    during initialization and hotplug event. It must also set the possible mask
>    (which includes disabled vcpus) during init of guest kernel.
> 2. Provide architecture specific ACPI hooks, for example to map/unmap the
>    logical cpuid to hwids/MPIDR. Linux kernel already has generic ACPI cpu
>    hotplug framework support.
> 
> Changes introduced in this patch-set also ensures that initialization of the
> cpus when virtual cpu hotplug is not supported remains un-affected.
> 
> Repository:
> (*) Kernel changes are at,
>      https://github.com/salil-mehta/linux.git virt-cpuhp-arm64/rfc-v1
> (*) QEMU changes for vcpu hotplug could be cloned from below site,
>      https://github.com/salil-mehta/qemu.git virt-cpuhp-armv8/rfc-v1
> 
> 
> THINGS TO DO:
> 1. Handling of per-cpu variables especially the first-chunk allocations
>    (which are NUMA aware) when the vcpu is hotplugged needs further attention
>    and review.
> 2. NUMA related stuff has not been fully tested both in QEMU and kernel.
> 3. Comprehensive Testing including when cpu hotplug is not supported.
> 4. Docs
> 
> DISCLAIMER:
> This is not a complete work but an effort to present the arm vcpu hotplug
> implementation to the community. This RFC is being used as a way to verify
> the idea mentioned above and to support changes presented for QEMU[1] to
> support vcpu hotplug. As of now this is *not* a production level code and might
> have bugs. Only a basic testing has been done on HiSilicon Kunpeng920 ARM64
> based SoC for Servers to verify the proof-of-concept that has been found working!
> 
> Best regards
> Salil.
> 
> REFERENCES:
> [1] https://www.mail-archive.com/qemu-devel@nongnu.org/msg712010.html
> [2] https://lkml.org/lkml/2019/6/28/1157
> [3] https://lists.cs.columbia.edu/pipermail/kvmarm/2018-July/032316.html
> 
> Organization of Patches:
> [Patch 1-3]
> (*) Changes required during guest boot time to support vcpu hotplug
> (*) Max cpu overflow checks
> (*) Changes required to pre-setup cpu-operations even for disabled cpus
> [Patch 4]
> (*) Arch changes required by guest kernel ACPI CPU Hotplug framework.
> 
> 
> Salil Mehta (4):
>   arm64: kernel: Handle disabled[(+)present] cpus in MADT/GICC during
>     init
>   arm64: kernel: Bound the total(present+disabled) cpus with nr_cpu_ids
>   arm64: kernel: Init cpu operations for all possible vcpus
>   arm64: kernel: Arch specific ACPI hooks(like logical cpuid<->hwid
>     etc.)
> 
>  arch/arm64/kernel/smp.c | 153 ++++++++++++++++++++++++++++++++--------
>  1 file changed, 123 insertions(+), 30 deletions(-)
> 
> --
> 2.17.1
> 

Powered by blists - more mailing lists