All of lore.kernel.org
 help / color / mirror / Atom feed
From: Will Deacon <will@kernel.org>
To: Russell King <rmk+kernel@armlinux.org.uk>
Cc: linux-pm@vger.kernel.org, loongarch@lists.linux.dev,
	linux-acpi@vger.kernel.org, linux-arch@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org,
	linux-riscv@lists.infradead.org, kvmarm@lists.linux.dev,
	x86@kernel.org, linux-csky@vger.kernel.org,
	linux-doc@vger.kernel.org, linux-ia64@vger.kernel.org,
	linux-parisc@vger.kernel.org,
	Salil Mehta <salil.mehta@huawei.com>,
	Jean-Philippe Brucker <jean-philippe@linaro.org>,
	jianyong.wu@arm.com, justin.he@arm.com,
	James Morse <james.morse@arm.com>,
	Catalin Marinas <catalin.marinas@arm.com>
Subject: Re: [PATCH 12/21] arm64: setup: Switch over to GENERIC_CPU_DEVICES using arch_register_cpu()
Date: Mon, 11 Dec 2023 13:20:55 +0000	[thread overview]
Message-ID: <20231211132054.GC25681@willie-the-truck> (raw)
In-Reply-To: <E1r5R3b-00Csza-Ku@rmk-PC.armlinux.org.uk>

On Tue, Nov 21, 2023 at 01:44:51PM +0000, Russell King wrote:
> From: James Morse <james.morse@arm.com>
> 
> To allow ACPI's _STA value to hide CPUs that are present, but not
> available to online right now due to VMM or firmware policy, the
> register_cpu() call needs to be made by the ACPI machinery when ACPI
> is in use. This allows it to hide CPUs that are unavailable from sysfs.
> 
> Switching to GENERIC_CPU_DEVICES is an intermediate step to allow all
> five ACPI architectures to be modified at once.
> 
> Switch over to GENERIC_CPU_DEVICES, and provide an arch_register_cpu()
> that populates the hotpluggable flag. arch_register_cpu() is also the
> interface the ACPI machinery expects.
> 
> The struct cpu in struct cpuinfo_arm64 is never used directly, remove
> it to use the one GENERIC_CPU_DEVICES provides.
> 
> This changes the CPUs visible in sysfs from possible to present, but
> on arm64 smp_prepare_cpus() ensures these are the same.
> 
> This patch also has the effect of moving the registration of CPUs from
> subsys to driver core initialisation, prior to any initcalls running.
> 
> Signed-off-by: James Morse <james.morse@arm.com>
> Reviewed-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
> Reviewed-by: Shaoqin Huang <shahuang@redhat.com>
> Reviewed-by: Gavin Shan <gshan@redhat.com>
> Signed-off-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
> ---
> Changes since RFC v2:
>  * Add note about initialisation order change.
> ---
>  arch/arm64/Kconfig           |  1 +
>  arch/arm64/include/asm/cpu.h |  1 -
>  arch/arm64/kernel/setup.c    | 13 ++++---------
>  3 files changed, 5 insertions(+), 10 deletions(-)

Acked-by: Will Deacon <will@kernel.org>

Will

WARNING: multiple messages have this Message-ID (diff)
From: Will Deacon <will@kernel.org>
To: Russell King <rmk+kernel@armlinux.org.uk>
Cc: linux-pm@vger.kernel.org, loongarch@lists.linux.dev,
	linux-acpi@vger.kernel.org, linux-arch@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org,
	linux-riscv@lists.infradead.org, kvmarm@lists.linux.dev,
	x86@kernel.org, linux-csky@vger.kernel.org,
	linux-doc@vger.kernel.org, linux-ia64@vger.kernel.org,
	linux-parisc@vger.kernel.org,
	Salil Mehta <salil.mehta@huawei.com>,
	Jean-Philippe Brucker <jean-philippe@linaro.org>,
	jianyong.wu@arm.com, justin.he@arm.com,
	James Morse <james.morse@arm.com>,
	Catalin Marinas <catalin.marinas@arm.com>
Subject: Re: [PATCH 12/21] arm64: setup: Switch over to GENERIC_CPU_DEVICES using arch_register_cpu()
Date: Mon, 11 Dec 2023 13:20:55 +0000	[thread overview]
Message-ID: <20231211132054.GC25681@willie-the-truck> (raw)
In-Reply-To: <E1r5R3b-00Csza-Ku@rmk-PC.armlinux.org.uk>

On Tue, Nov 21, 2023 at 01:44:51PM +0000, Russell King wrote:
> From: James Morse <james.morse@arm.com>
> 
> To allow ACPI's _STA value to hide CPUs that are present, but not
> available to online right now due to VMM or firmware policy, the
> register_cpu() call needs to be made by the ACPI machinery when ACPI
> is in use. This allows it to hide CPUs that are unavailable from sysfs.
> 
> Switching to GENERIC_CPU_DEVICES is an intermediate step to allow all
> five ACPI architectures to be modified at once.
> 
> Switch over to GENERIC_CPU_DEVICES, and provide an arch_register_cpu()
> that populates the hotpluggable flag. arch_register_cpu() is also the
> interface the ACPI machinery expects.
> 
> The struct cpu in struct cpuinfo_arm64 is never used directly, remove
> it to use the one GENERIC_CPU_DEVICES provides.
> 
> This changes the CPUs visible in sysfs from possible to present, but
> on arm64 smp_prepare_cpus() ensures these are the same.
> 
> This patch also has the effect of moving the registration of CPUs from
> subsys to driver core initialisation, prior to any initcalls running.
> 
> Signed-off-by: James Morse <james.morse@arm.com>
> Reviewed-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
> Reviewed-by: Shaoqin Huang <shahuang@redhat.com>
> Reviewed-by: Gavin Shan <gshan@redhat.com>
> Signed-off-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
> ---
> Changes since RFC v2:
>  * Add note about initialisation order change.
> ---
>  arch/arm64/Kconfig           |  1 +
>  arch/arm64/include/asm/cpu.h |  1 -
>  arch/arm64/kernel/setup.c    | 13 ++++---------
>  3 files changed, 5 insertions(+), 10 deletions(-)

Acked-by: Will Deacon <will@kernel.org>

Will

_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv

WARNING: multiple messages have this Message-ID (diff)
From: Will Deacon <will@kernel.org>
To: Russell King <rmk+kernel@armlinux.org.uk>
Cc: linux-pm@vger.kernel.org, loongarch@lists.linux.dev,
	linux-acpi@vger.kernel.org, linux-arch@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org,
	linux-riscv@lists.infradead.org, kvmarm@lists.linux.dev,
	x86@kernel.org, linux-csky@vger.kernel.org,
	linux-doc@vger.kernel.org, linux-ia64@vger.kernel.org,
	linux-parisc@vger.kernel.org,
	Salil Mehta <salil.mehta@huawei.com>,
	Jean-Philippe Brucker <jean-philippe@linaro.org>,
	jianyong.wu@arm.com, justin.he@arm.com,
	James Morse <james.morse@arm.com>,
	Catalin Marinas <catalin.marinas@arm.com>
Subject: Re: [PATCH 12/21] arm64: setup: Switch over to GENERIC_CPU_DEVICES using arch_register_cpu()
Date: Mon, 11 Dec 2023 13:20:55 +0000	[thread overview]
Message-ID: <20231211132054.GC25681@willie-the-truck> (raw)
In-Reply-To: <E1r5R3b-00Csza-Ku@rmk-PC.armlinux.org.uk>

On Tue, Nov 21, 2023 at 01:44:51PM +0000, Russell King wrote:
> From: James Morse <james.morse@arm.com>
> 
> To allow ACPI's _STA value to hide CPUs that are present, but not
> available to online right now due to VMM or firmware policy, the
> register_cpu() call needs to be made by the ACPI machinery when ACPI
> is in use. This allows it to hide CPUs that are unavailable from sysfs.
> 
> Switching to GENERIC_CPU_DEVICES is an intermediate step to allow all
> five ACPI architectures to be modified at once.
> 
> Switch over to GENERIC_CPU_DEVICES, and provide an arch_register_cpu()
> that populates the hotpluggable flag. arch_register_cpu() is also the
> interface the ACPI machinery expects.
> 
> The struct cpu in struct cpuinfo_arm64 is never used directly, remove
> it to use the one GENERIC_CPU_DEVICES provides.
> 
> This changes the CPUs visible in sysfs from possible to present, but
> on arm64 smp_prepare_cpus() ensures these are the same.
> 
> This patch also has the effect of moving the registration of CPUs from
> subsys to driver core initialisation, prior to any initcalls running.
> 
> Signed-off-by: James Morse <james.morse@arm.com>
> Reviewed-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
> Reviewed-by: Shaoqin Huang <shahuang@redhat.com>
> Reviewed-by: Gavin Shan <gshan@redhat.com>
> Signed-off-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
> ---
> Changes since RFC v2:
>  * Add note about initialisation order change.
> ---
>  arch/arm64/Kconfig           |  1 +
>  arch/arm64/include/asm/cpu.h |  1 -
>  arch/arm64/kernel/setup.c    | 13 ++++---------
>  3 files changed, 5 insertions(+), 10 deletions(-)

Acked-by: Will Deacon <will@kernel.org>

Will

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

  parent reply	other threads:[~2023-12-11 13:21 UTC|newest]

Thread overview: 165+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-11-21 13:43 [PATCH 00/21] Initial cleanups for vCPU hotplug Russell King (Oracle)
2023-11-21 13:43 ` Russell King (Oracle)
2023-11-21 13:43 ` Russell King (Oracle)
2023-11-21 13:43 ` [PATCH 01/21] arch_topology: Make register_cpu_capacity_sysctl() tolerant to late CPUs Russell King
2023-11-21 13:43   ` Russell King
2023-11-21 13:43   ` Russell King
2023-11-30 16:46   ` Jonathan Cameron
2023-11-30 16:46     ` Jonathan Cameron
2023-11-30 16:46     ` Jonathan Cameron
2023-12-01 10:45   ` Thomas Gleixner
2023-12-01 10:45     ` Thomas Gleixner
2023-12-01 10:45     ` Thomas Gleixner
2023-11-21 13:44 ` [PATCH 02/21] x86: intel_epb: Don't rely on link order Russell King
2023-11-21 13:44   ` Russell King
2023-11-21 13:44   ` Russell King
2023-11-22 20:12   ` Rafael J. Wysocki
2023-11-22 20:12     ` Rafael J. Wysocki
2023-11-22 20:12     ` Rafael J. Wysocki
2023-11-21 13:44 ` [PATCH 03/21] x86/topology: remove arch_*register_cpu() exports Russell King (Oracle)
2023-11-21 13:44   ` Russell King (Oracle)
2023-11-21 13:44   ` Russell King (Oracle)
2023-11-30 16:48   ` Jonathan Cameron
2023-11-30 16:48     ` Jonathan Cameron
2023-11-30 16:48     ` Jonathan Cameron
2023-11-21 13:44 ` [PATCH 04/21] Loongarch: " Russell King (Oracle)
2023-11-21 13:44   ` Russell King (Oracle)
2023-11-21 13:44   ` Russell King (Oracle)
2023-11-30 16:48   ` Jonathan Cameron
2023-11-30 16:48     ` Jonathan Cameron
2023-11-30 16:48     ` Jonathan Cameron
2023-11-21 13:44 ` [PATCH 05/21] ACPI: Move ACPI_HOTPLUG_CPU to be disabled on arm64 and riscv Russell King
2023-11-21 13:44   ` Russell King
2023-11-21 13:44   ` Russell King
2023-11-22 20:16   ` Rafael J. Wysocki
2023-11-22 20:16     ` Rafael J. Wysocki
2023-11-22 20:16     ` Rafael J. Wysocki
2023-11-30 16:49   ` Jonathan Cameron
2023-11-30 16:49     ` Jonathan Cameron
2023-11-30 16:49     ` Jonathan Cameron
2023-11-21 13:44 ` [PATCH 06/21] drivers: base: Use present CPUs in GENERIC_CPU_DEVICES Russell King
2023-11-21 13:44   ` Russell King
2023-11-21 13:44   ` Russell King
2023-11-21 13:44 ` [PATCH 07/21] drivers: base: Allow parts of GENERIC_CPU_DEVICES to be overridden Russell King
2023-11-21 13:44   ` Russell King
2023-11-21 13:44   ` Russell King
2023-11-30 16:50   ` Jonathan Cameron
2023-11-30 16:50     ` Jonathan Cameron
2023-11-30 16:50     ` Jonathan Cameron
2023-11-21 13:44 ` [PATCH 08/21] drivers: base: Implement weak arch_unregister_cpu() Russell King
2023-11-21 13:44   ` Russell King
2023-11-21 13:44   ` Russell King
2023-11-30 16:50   ` Jonathan Cameron
2023-11-30 16:50     ` Jonathan Cameron
2023-11-30 16:50     ` Jonathan Cameron
2023-12-01  3:47   ` Gavin Shan
2023-12-01  3:47     ` Gavin Shan
2023-12-01  3:47     ` Gavin Shan
2023-12-01 11:06   ` Thomas Gleixner
2023-12-01 11:06     ` Thomas Gleixner
2023-12-01 11:06     ` Thomas Gleixner
2023-11-21 13:44 ` [PATCH 09/21] drivers: base: add arch_cpu_is_hotpluggable() Russell King (Oracle)
2023-11-21 13:44   ` Russell King (Oracle)
2023-11-21 13:44   ` Russell King (Oracle)
2023-11-30 16:51   ` Jonathan Cameron
2023-11-30 16:51     ` Jonathan Cameron
2023-11-30 16:51     ` Jonathan Cameron
2023-12-01  3:47   ` Gavin Shan
2023-12-01  3:47     ` Gavin Shan
2023-12-01  3:47     ` Gavin Shan
2023-11-21 13:44 ` [PATCH 10/21] drivers: base: Move cpu_dev_init() after node_dev_init() Russell King
2023-11-21 13:44   ` Russell King
2023-11-21 13:44   ` Russell King
2023-11-30 16:52   ` Jonathan Cameron
2023-11-30 16:52     ` Jonathan Cameron
2023-11-30 16:52     ` Jonathan Cameron
2023-12-01  3:48   ` Gavin Shan
2023-12-01  3:48     ` Gavin Shan
2023-12-01  3:48     ` Gavin Shan
2023-11-21 13:44 ` [PATCH 11/21] drivers: base: Print a warning instead of panic() when register_cpu() fails Russell King
2023-11-21 13:44   ` Russell King
2023-11-21 13:44   ` Russell King
2023-11-30 16:53   ` Jonathan Cameron
2023-11-30 16:53     ` Jonathan Cameron
2023-11-30 16:53     ` Jonathan Cameron
2023-12-01  3:49   ` Gavin Shan
2023-12-01  3:49     ` Gavin Shan
2023-12-01  3:49     ` Gavin Shan
2023-11-21 13:44 ` [PATCH 12/21] arm64: setup: Switch over to GENERIC_CPU_DEVICES using arch_register_cpu() Russell King
2023-11-21 13:44   ` Russell King
2023-11-21 13:44   ` Russell King
2023-11-30 16:54   ` Jonathan Cameron
2023-11-30 16:54     ` Jonathan Cameron
2023-11-30 16:54     ` Jonathan Cameron
2023-12-11 13:20   ` Will Deacon [this message]
2023-12-11 13:20     ` Will Deacon
2023-12-11 13:20     ` Will Deacon
2023-11-21 13:44 ` [PATCH 13/21] arm64: convert to arch_cpu_is_hotpluggable() Russell King (Oracle)
2023-11-21 13:44   ` Russell King (Oracle)
2023-11-21 13:44   ` Russell King (Oracle)
2023-11-30 16:54   ` Jonathan Cameron
2023-11-30 16:54     ` Jonathan Cameron
2023-11-30 16:54     ` Jonathan Cameron
2023-12-11 13:21   ` Will Deacon
2023-12-11 13:21     ` Will Deacon
2023-12-11 13:21     ` Will Deacon
2023-11-21 13:45 ` [PATCH 14/21] x86/topology: Switch over to GENERIC_CPU_DEVICES Russell King
2023-11-21 13:45   ` Russell King
2023-11-21 13:45   ` Russell King
2023-11-30 16:56   ` Jonathan Cameron
2023-11-30 16:56     ` Jonathan Cameron
2023-11-30 16:56     ` Jonathan Cameron
2023-11-21 13:45 ` [PATCH 15/21] x86/topology: use weak version of arch_unregister_cpu() Russell King (Oracle)
2023-11-21 13:45   ` Russell King (Oracle)
2023-11-21 13:45   ` Russell King (Oracle)
2023-11-30 16:57   ` Jonathan Cameron
2023-11-30 16:57     ` Jonathan Cameron
2023-11-30 16:57     ` Jonathan Cameron
2023-11-21 13:45 ` [PATCH 16/21] x86/topology: convert to use arch_cpu_is_hotpluggable() Russell King (Oracle)
2023-11-21 13:45   ` Russell King (Oracle)
2023-11-21 13:45   ` Russell King (Oracle)
2023-11-30 16:55   ` Jonathan Cameron
2023-11-30 16:55     ` Jonathan Cameron
2023-11-30 16:55     ` Jonathan Cameron
2023-11-21 13:45 ` [PATCH 17/21] LoongArch: Switch over to GENERIC_CPU_DEVICES Russell King
2023-11-21 13:45   ` Russell King
2023-11-21 13:45   ` Russell King
2023-11-30 16:57   ` Jonathan Cameron
2023-11-30 16:57     ` Jonathan Cameron
2023-11-30 16:57     ` Jonathan Cameron
2023-11-21 13:45 ` [PATCH 18/21] LoongArch: Use the __weak version of arch_unregister_cpu() Russell King
2023-11-21 13:45   ` Russell King
2023-11-21 13:45   ` Russell King
2023-11-21 13:45 ` [PATCH 19/21] LoongArch: convert to use arch_cpu_is_hotpluggable() Russell King (Oracle)
2023-11-21 13:45   ` Russell King (Oracle)
2023-11-21 13:45   ` Russell King (Oracle)
2023-11-30 16:55   ` Jonathan Cameron
2023-11-30 16:55     ` Jonathan Cameron
2023-11-30 16:55     ` Jonathan Cameron
2023-11-21 13:45 ` [PATCH 20/21] riscv: Switch over to GENERIC_CPU_DEVICES Russell King
2023-11-21 13:45   ` Russell King
2023-11-21 13:45   ` Russell King
2023-11-22 20:05   ` Samuel Holland
2023-11-22 20:05     ` Samuel Holland
2023-11-22 20:05     ` Samuel Holland
2023-11-21 13:45 ` [PATCH 21/21] riscv: convert to use arch_cpu_is_hotpluggable() Russell King (Oracle)
2023-11-21 13:45   ` Russell King (Oracle)
2023-11-21 13:45   ` Russell King (Oracle)
2023-11-22 20:08   ` Samuel Holland
2023-11-22 20:08     ` Samuel Holland
2023-11-22 20:08     ` Samuel Holland
2023-11-30 16:55   ` Jonathan Cameron
2023-11-30 16:55     ` Jonathan Cameron
2023-11-30 16:55     ` Jonathan Cameron
2023-12-01  8:53 ` [PATCH 00/21] Initial cleanups for vCPU hotplug Thomas Gleixner
2023-12-01  8:53   ` Thomas Gleixner
2023-12-01  8:53   ` Thomas Gleixner
2023-12-01 11:25 ` Thomas Gleixner
2023-12-01 11:25   ` Thomas Gleixner
2023-12-01 11:25   ` Thomas Gleixner
2023-12-01 12:28   ` Greg Kroah-Hartman
2023-12-01 12:28     ` Greg Kroah-Hartman
2023-12-01 12:28     ` Greg Kroah-Hartman
2023-12-01 16:09     ` Thomas Gleixner
2023-12-01 16:09       ` Thomas Gleixner
2023-12-01 16:09       ` Thomas Gleixner

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=20231211132054.GC25681@willie-the-truck \
    --to=will@kernel.org \
    --cc=catalin.marinas@arm.com \
    --cc=james.morse@arm.com \
    --cc=jean-philippe@linaro.org \
    --cc=jianyong.wu@arm.com \
    --cc=justin.he@arm.com \
    --cc=kvmarm@lists.linux.dev \
    --cc=linux-acpi@vger.kernel.org \
    --cc=linux-arch@vger.kernel.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-csky@vger.kernel.org \
    --cc=linux-doc@vger.kernel.org \
    --cc=linux-ia64@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-parisc@vger.kernel.org \
    --cc=linux-pm@vger.kernel.org \
    --cc=linux-riscv@lists.infradead.org \
    --cc=loongarch@lists.linux.dev \
    --cc=rmk+kernel@armlinux.org.uk \
    --cc=salil.mehta@huawei.com \
    --cc=x86@kernel.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 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.