All of lore.kernel.org
 help / color / mirror / Atom feed
From: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
To: 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
Cc: 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>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	"Rafael J. Wysocki" <rafael@kernel.org>,
	Paul Walmsley <paul.walmsley@sifive.com>,
	Palmer Dabbelt <palmer@dabbelt.com>,
	Albert Ou <aou@eecs.berkeley.edu>
Subject: [PATCH 23/39] drivers: base: Implement weak arch_unregister_cpu()
Date: Tue, 24 Oct 2023 16:18:07 +0100	[thread overview]
Message-ID: <E1qvJAV-00AqR4-LS@rmk-PC.armlinux.org.uk> (raw)
In-Reply-To: <ZTffkAdOqL2pI2la@shell.armlinux.org.uk>

From: James Morse <james.morse@arm.com>

Add arch_unregister_cpu() to allow the ACPI machinery to call
unregister_cpu(). This is enough for arm64, riscv and loongarch, but
needs to be overridden by x86 and ia64 who need to do more work.

CC: Jean-Philippe Brucker <jean-philippe@linaro.org>
Signed-off-by: James Morse <james.morse@arm.com>
---
Changes since v1:
 * Added CONFIG_HOTPLUG_CPU ifdeffery around unregister_cpu
Changes since RFC v2:
 * Move earlier in the series
---
 drivers/base/cpu.c | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/drivers/base/cpu.c b/drivers/base/cpu.c
index 6c70a004c198..2b9cb2667654 100644
--- a/drivers/base/cpu.c
+++ b/drivers/base/cpu.c
@@ -531,7 +531,14 @@ int __weak arch_register_cpu(int cpu)
 {
 	return register_cpu(&per_cpu(cpu_devices, cpu), cpu);
 }
-#endif
+
+#ifdef CONFIG_HOTPLUG_CPU
+void __weak arch_unregister_cpu(int num)
+{
+	unregister_cpu(&per_cpu(cpu_devices, num));
+}
+#endif /* CONFIG_HOTPLUG_CPU */
+#endif /* CONFIG_GENERIC_CPU_DEVICES */
 
 static void __init cpu_dev_register_generic(void)
 {
-- 
2.30.2


WARNING: multiple messages have this Message-ID (diff)
From: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
To: 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
Cc: 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>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	"Rafael J. Wysocki" <rafael@kernel.org>,
	Paul Walmsley <paul.walmsley@sifive.com>,
	Palmer Dabbelt <palmer@dabbelt.com>,
	Albert Ou <aou@eecs.berkeley.edu>
Subject: [PATCH 23/39] drivers: base: Implement weak arch_unregister_cpu()
Date: Tue, 24 Oct 2023 16:18:07 +0100	[thread overview]
Message-ID: <E1qvJAV-00AqR4-LS@rmk-PC.armlinux.org.uk> (raw)
In-Reply-To: <ZTffkAdOqL2pI2la@shell.armlinux.org.uk>

From: James Morse <james.morse@arm.com>

Add arch_unregister_cpu() to allow the ACPI machinery to call
unregister_cpu(). This is enough for arm64, riscv and loongarch, but
needs to be overridden by x86 and ia64 who need to do more work.

CC: Jean-Philippe Brucker <jean-philippe@linaro.org>
Signed-off-by: James Morse <james.morse@arm.com>
---
Changes since v1:
 * Added CONFIG_HOTPLUG_CPU ifdeffery around unregister_cpu
Changes since RFC v2:
 * Move earlier in the series
---
 drivers/base/cpu.c | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/drivers/base/cpu.c b/drivers/base/cpu.c
index 6c70a004c198..2b9cb2667654 100644
--- a/drivers/base/cpu.c
+++ b/drivers/base/cpu.c
@@ -531,7 +531,14 @@ int __weak arch_register_cpu(int cpu)
 {
 	return register_cpu(&per_cpu(cpu_devices, cpu), cpu);
 }
-#endif
+
+#ifdef CONFIG_HOTPLUG_CPU
+void __weak arch_unregister_cpu(int num)
+{
+	unregister_cpu(&per_cpu(cpu_devices, num));
+}
+#endif /* CONFIG_HOTPLUG_CPU */
+#endif /* CONFIG_GENERIC_CPU_DEVICES */
 
 static void __init cpu_dev_register_generic(void)
 {
-- 
2.30.2


_______________________________________________
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: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
To: 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
Cc: 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>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	"Rafael J. Wysocki" <rafael@kernel.org>,
	Paul Walmsley <paul.walmsley@sifive.com>,
	Palmer Dabbelt <palmer@dabbelt.com>,
	Albert Ou <aou@eecs.berkeley.edu>
Subject: [PATCH 23/39] drivers: base: Implement weak arch_unregister_cpu()
Date: Tue, 24 Oct 2023 16:18:07 +0100	[thread overview]
Message-ID: <E1qvJAV-00AqR4-LS@rmk-PC.armlinux.org.uk> (raw)
In-Reply-To: <ZTffkAdOqL2pI2la@shell.armlinux.org.uk>

From: James Morse <james.morse@arm.com>

Add arch_unregister_cpu() to allow the ACPI machinery to call
unregister_cpu(). This is enough for arm64, riscv and loongarch, but
needs to be overridden by x86 and ia64 who need to do more work.

CC: Jean-Philippe Brucker <jean-philippe@linaro.org>
Signed-off-by: James Morse <james.morse@arm.com>
---
Changes since v1:
 * Added CONFIG_HOTPLUG_CPU ifdeffery around unregister_cpu
Changes since RFC v2:
 * Move earlier in the series
---
 drivers/base/cpu.c | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/drivers/base/cpu.c b/drivers/base/cpu.c
index 6c70a004c198..2b9cb2667654 100644
--- a/drivers/base/cpu.c
+++ b/drivers/base/cpu.c
@@ -531,7 +531,14 @@ int __weak arch_register_cpu(int cpu)
 {
 	return register_cpu(&per_cpu(cpu_devices, cpu), cpu);
 }
-#endif
+
+#ifdef CONFIG_HOTPLUG_CPU
+void __weak arch_unregister_cpu(int num)
+{
+	unregister_cpu(&per_cpu(cpu_devices, num));
+}
+#endif /* CONFIG_HOTPLUG_CPU */
+#endif /* CONFIG_GENERIC_CPU_DEVICES */
 
 static void __init cpu_dev_register_generic(void)
 {
-- 
2.30.2


_______________________________________________
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-10-24 15:18 UTC|newest]

Thread overview: 182+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-10-24 15:15 [RFC PATCH v3 00/39] ACPI/arm64: add support for virtual cpuhotplug Russell King (Oracle)
2023-10-24 15:15 ` [Acpica-devel] " Russell King (Oracle)
2023-10-24 15:15 ` Russell King (Oracle)
2023-10-24 15:15 ` Russell King (Oracle)
2023-10-24 15:16 ` [PATCH 01/39] parisc: simplify smp_prepare_boot_cpu() Russell King (Oracle)
2023-10-24 15:16   ` Russell King (Oracle)
2023-10-24 15:16   ` Russell King (Oracle)
2023-10-24 15:16 ` [PATCH 02/39] ACPI: Use the acpi_device_is_present() helper in more places Russell King
2023-10-24 15:16   ` Russell King
2023-10-24 15:16   ` Russell King
2023-10-24 15:16 ` [PATCH 03/39] ACPI: Rename acpi_scan_device_not_present() to be about enumeration Russell King
2023-10-24 15:16   ` Russell King
2023-10-24 15:16   ` Russell King
2023-10-24 15:16 ` [PATCH 04/39] arm64, irqchip/gic-v3, ACPI: Move MADT GICC enabled check into a helper Russell King
2023-10-24 15:16   ` Russell King
2023-10-24 15:16   ` Russell King
2023-10-24 15:16 ` [PATCH 05/39] ACPI: Move ACPI_HOTPLUG_CPU to be disabled on arm64 and riscv Russell King
2023-10-24 15:16   ` Russell King
2023-10-24 15:16   ` Russell King
2023-10-24 15:16 ` [PATCH 06/39] drivers: base: Use present CPUs in GENERIC_CPU_DEVICES Russell King
2023-10-24 15:16   ` Russell King
2023-10-24 15:16   ` Russell King
2023-10-24 15:16 ` [PATCH 07/39] drivers: base: Allow parts of GENERIC_CPU_DEVICES to be overridden Russell King
2023-10-24 15:16   ` Russell King
2023-10-24 15:16   ` Russell King
2023-10-24 15:16 ` [PATCH 08/39] drivers: base: Move cpu_dev_init() after node_dev_init() Russell King
2023-10-24 15:16   ` Russell King
2023-10-24 15:16   ` Russell King
2023-10-24 15:16 ` [PATCH 09/39] drivers: base: remove unnecessary call to register_cpu_under_node() Russell King (Oracle)
2023-10-24 15:16   ` Russell King (Oracle)
2023-10-24 15:16   ` Russell King (Oracle)
2023-10-24 15:17 ` [PATCH 10/39] drivers: base: Print a warning instead of panic() when register_cpu() fails Russell King
2023-10-24 15:17   ` Russell King
2023-10-24 15:17   ` Russell King
2023-10-24 15:17 ` [PATCH 11/39] arm64: setup: Switch over to GENERIC_CPU_DEVICES using arch_register_cpu() Russell King
2023-10-24 15:17   ` Russell King
2023-10-24 15:17   ` Russell King
2023-10-24 15:17 ` [PATCH 12/39] ia64/topology: Switch over to GENERIC_CPU_DEVICES Russell King
2023-10-24 15:17   ` Russell King
2023-10-24 15:17   ` Russell King
2023-10-24 15:17 ` [PATCH 13/39] x86: intel_epb: Don't rely on link order Russell King
2023-10-24 15:17   ` Russell King
2023-10-24 15:17   ` Russell King
2023-10-24 15:17 ` [PATCH 14/39] x86/topology: Switch over to GENERIC_CPU_DEVICES Russell King
2023-10-24 15:17   ` Russell King
2023-10-24 15:17   ` Russell King
2023-10-24 15:17 ` [PATCH 15/39] LoongArch: " Russell King
2023-10-24 15:17   ` Russell King
2023-10-24 15:17   ` Russell King
2023-10-24 15:17 ` [PATCH 16/39] riscv: " Russell King
2023-10-24 15:17   ` Russell King
2023-10-24 15:17   ` Russell King
2023-10-24 15:17 ` [PATCH 17/39] arch_topology: Make register_cpu_capacity_sysctl() tolerant to late CPUs Russell King
2023-10-24 15:17   ` Russell King
2023-10-24 15:17   ` Russell King
2023-10-24 15:17 ` [PATCH 18/39] ACPI: Only enumerate enabled (or functional) devices Russell King
2023-10-24 15:17   ` Russell King
2023-10-24 15:17   ` Russell King
2023-10-24 18:07   ` Rafael J. Wysocki
2023-10-24 18:07     ` Rafael J. Wysocki
2023-10-24 18:07     ` Rafael J. Wysocki
2023-10-24 15:17 ` [PATCH 19/39] ACPI: processor: Add support for processors described as container packages Russell King
2023-10-24 15:17   ` Russell King
2023-10-24 15:17   ` Russell King
2023-10-24 15:17 ` [PATCH 20/39] ACPI: processor: Register CPUs that are online, but not described in the DSDT Russell King
2023-10-24 15:17   ` Russell King
2023-10-24 15:17   ` Russell King
2023-10-24 15:17 ` [PATCH 21/39] ACPI: processor: Register all CPUs from acpi_processor_get_info() Russell King
2023-10-24 15:17   ` Russell King
2023-10-24 15:17   ` Russell King
2023-10-24 15:18 ` [PATCH 22/39] ACPI: Rename ACPI_HOTPLUG_CPU to include 'present' Russell King
2023-10-24 15:18   ` Russell King
2023-10-24 15:18   ` Russell King
2023-10-24 15:18 ` Russell King [this message]
2023-10-24 15:18   ` [PATCH 23/39] drivers: base: Implement weak arch_unregister_cpu() Russell King
2023-10-24 15:18   ` Russell King
2023-10-24 15:18 ` [PATCH 24/39] ACPI: Move acpi_bus_trim_one() before acpi_scan_hot_remove() Russell King
2023-10-24 15:18   ` Russell King
2023-10-24 15:18   ` Russell King
2023-10-24 15:18 ` [PATCH 25/39] ACPI: Rename acpi_processor_hotadd_init and remove pre-processor guards Russell King
2023-10-24 15:18   ` Russell King
2023-10-24 15:18   ` Russell King
2023-10-24 15:18 ` [PATCH 26/39] ACPI: Add post_eject to struct acpi_scan_handler for cpu hotplug Russell King
2023-10-24 15:18   ` [Acpica-devel] " Russell King
2023-10-24 15:18   ` Russell King
2023-10-24 15:18   ` Russell King
2023-10-24 15:18 ` [PATCH 27/39] ACPI: Check _STA present bit before making CPUs not present Russell King
2023-10-24 15:18   ` Russell King
2023-10-24 15:18   ` Russell King
2023-10-24 15:18 ` [PATCH 28/39] ACPI: Warn when the present bit changes but the feature is not enabled Russell King
2023-10-24 15:18   ` Russell King
2023-10-24 15:18   ` Russell King
2023-10-24 15:18 ` [PATCH 29/39] LoongArch: Use the __weak version of arch_unregister_cpu() Russell King
2023-10-24 15:18   ` Russell King
2023-10-24 15:18   ` Russell King
2023-10-24 15:18 ` [PATCH 30/39] arm64: acpi: Move get_cpu_for_acpi_id() to a header Russell King
2023-10-24 15:18   ` Russell King
2023-10-24 15:18   ` Russell King
2023-10-24 15:18 ` [PATCH 31/39] ACPICA: Add new MADT GICC flags fields Russell King
2023-10-24 15:18   ` [Acpica-devel] " Russell King
2023-10-24 15:18   ` Russell King
2023-10-24 15:18   ` Russell King
2023-10-24 15:18 ` [PATCH 32/39] irqchip/gic-v3: Don't return errors from gic_acpi_match_gicc() Russell King
2023-10-24 15:18   ` Russell King
2023-10-24 15:18   ` Russell King
2023-10-24 15:18 ` [PATCH 33/39] irqchip/gic-v3: Add support for ACPI's disabled but 'online capable' CPUs Russell King
2023-10-24 15:18   ` Russell King
2023-10-24 15:18   ` Russell King
2023-10-24 15:19 ` [PATCH 34/39] arm64: psci: Ignore DENIED CPUs Russell King
2023-10-24 15:19   ` Russell King
2023-10-24 15:19   ` Russell King
2023-11-16  7:45   ` Jianyong Wu
2023-11-16  7:45     ` Jianyong Wu
2023-11-16  7:45     ` Jianyong Wu
2023-11-20  9:24     ` Russell King (Oracle)
2023-11-20  9:24       ` Russell King (Oracle)
2023-11-20  9:24       ` Russell King (Oracle)
2023-11-20  9:36       ` Jianyong Wu
2023-11-20  9:36         ` Jianyong Wu
2023-11-20  9:36         ` Jianyong Wu
2023-11-20  9:58         ` Russell King (Oracle)
2023-11-20  9:58           ` Russell King (Oracle)
2023-11-20  9:58           ` Russell King (Oracle)
2023-11-21  1:44           ` Jianyong Wu
2023-11-21  1:44             ` Jianyong Wu
2023-11-21  1:44             ` Jianyong Wu
2023-10-24 15:19 ` [PATCH 35/39] ACPI: add support to register CPUs based on the _STA enabled bit Russell King
2023-10-24 15:19   ` Russell King
2023-10-24 15:19   ` Russell King
2023-10-24 15:19 ` [PATCH 36/39] arm64: document virtual CPU hotplug's expectations Russell King
2023-10-24 15:19   ` Russell King
2023-10-24 15:19   ` Russell King
2023-10-24 15:19 ` [PATCH 37/39] ACPI: Add _OSC bits to advertise OS support for toggling CPU present/enabled Russell King
2023-10-24 15:19   ` Russell King
2023-10-24 15:19   ` Russell King
2023-10-24 15:19 ` [PATCH 38/39] cpumask: Add enabled cpumask for present CPUs that can be brought online Russell King
2023-10-24 15:19   ` Russell King
2023-10-24 15:19   ` Russell King
2023-10-24 15:32   ` Andy Shevchenko
2023-10-24 15:32     ` Andy Shevchenko
2023-10-24 15:32     ` Andy Shevchenko
2023-10-24 16:02   ` Greg Kroah-Hartman
2023-10-24 16:02     ` Greg Kroah-Hartman
2023-10-24 16:02     ` Greg Kroah-Hartman
2023-10-24 16:05     ` Russell King (Oracle)
2023-10-24 16:05       ` Russell King (Oracle)
2023-10-24 16:05       ` Russell King (Oracle)
2023-10-24 15:19 ` [PATCH 39/39] ACPI: processor: Only call arch_unregister_cpu() if HOTPLUG_CPU is selected Russell King
2023-10-24 15:19   ` Russell King
2023-10-24 15:19   ` Russell King
2023-10-24 16:31 ` [RFC PATCH v3 00/39] ACPI/arm64: add support for virtual cpuhotplug Russell King (Oracle)
2023-10-24 16:31   ` [Acpica-devel] " Russell King (Oracle)
2023-10-24 16:31   ` Russell King (Oracle)
2023-10-24 16:31   ` Russell King (Oracle)
2023-10-24 18:26 ` Rafael J. Wysocki
2023-10-24 18:26   ` [Acpica-devel] " Rafael J. Wysocki
2023-10-24 18:26   ` Rafael J. Wysocki
2023-10-24 18:26   ` Rafael J. Wysocki
2023-10-24 19:28   ` Russell King (Oracle)
2023-10-24 19:28     ` [Acpica-devel] " Russell King (Oracle)
2023-10-24 19:28     ` Russell King (Oracle)
2023-10-24 19:28     ` Russell King (Oracle)
2023-12-04 18:23   ` Russell King (Oracle)
2023-12-04 18:23     ` Russell King (Oracle)
2023-12-04 18:23     ` Russell King (Oracle)
2023-12-12 19:58     ` Russell King (Oracle)
2023-12-12 19:58       ` Russell King (Oracle)
2023-12-12 19:58       ` Russell King (Oracle)
2023-12-12 20:05       ` Rafael J. Wysocki
2023-12-12 20:05         ` Rafael J. Wysocki
2023-12-12 20:05         ` Rafael J. Wysocki
2023-12-12 20:16         ` Russell King (Oracle)
2023-12-12 20:16           ` Russell King (Oracle)
2023-12-12 20:16           ` Russell King (Oracle)
2023-10-30 16:41 ` Miguel Luis
2023-10-30 16:41   ` [Acpica-devel] " Miguel Luis
2023-10-30 16:41   ` Miguel Luis
2023-10-30 16:41   ` Miguel Luis
2023-10-30 17:51   ` Russell King (Oracle)
2023-10-30 17:51     ` [Acpica-devel] " Russell King (Oracle)
2023-10-30 17:51     ` Russell King (Oracle)
2023-10-30 17:51     ` Russell King (Oracle)

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=E1qvJAV-00AqR4-LS@rmk-PC.armlinux.org.uk \
    --to=rmk+kernel@armlinux.org.uk \
    --cc=aou@eecs.berkeley.edu \
    --cc=gregkh@linuxfoundation.org \
    --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=palmer@dabbelt.com \
    --cc=paul.walmsley@sifive.com \
    --cc=rafael@kernel.org \
    --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.