From: Sebastian Andrzej Siewior <bigeasy@linutronix.de> To: linux-kernel@vger.kernel.org Cc: tglx@linutronix.de, Peter Zijlstra <peterz@infradead.org>, Sebastian Andrzej Siewior <bigeasy@linutronix.de>, Michael Ellerman <mpe@ellerman.id.au>, Benjamin Herrenschmidt <benh@kernel.crashing.org>, Paul Mackerras <paulus@samba.org>, linuxppc-dev@lists.ozlabs.org, kvm-ppc@vger.kernel.org Subject: [PATCH 03/38] powerpc: Replace deprecated CPU-hotplug functions. Date: Tue, 3 Aug 2021 16:15:46 +0200 [thread overview] Message-ID: <20210803141621.780504-4-bigeasy@linutronix.de> (raw) In-Reply-To: <20210803141621.780504-1-bigeasy@linutronix.de> The functions get_online_cpus() and put_online_cpus() have been deprecated during the CPU hotplug rework. They map directly to cpus_read_lock() and cpus_read_unlock(). Replace deprecated CPU-hotplug functions with the official version. The behavior remains unchanged. Cc: Michael Ellerman <mpe@ellerman.id.au> Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org> Cc: Paul Mackerras <paulus@samba.org> Cc: linuxppc-dev@lists.ozlabs.org Cc: kvm-ppc@vger.kernel.org Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de> --- arch/powerpc/kernel/rtasd.c | 4 ++-- arch/powerpc/kvm/book3s_hv_builtin.c | 10 +++++----- arch/powerpc/platforms/powernv/idle.c | 4 ++-- arch/powerpc/platforms/powernv/opal-imc.c | 8 ++++---- 4 files changed, 13 insertions(+), 13 deletions(-) diff --git a/arch/powerpc/kernel/rtasd.c b/arch/powerpc/kernel/rtasd.c index 8561dfb33f241..32ee17753eb4a 100644 --- a/arch/powerpc/kernel/rtasd.c +++ b/arch/powerpc/kernel/rtasd.c @@ -429,7 +429,7 @@ static void rtas_event_scan(struct work_struct *w) do_event_scan(); - get_online_cpus(); + cpus_read_lock(); /* raw_ OK because just using CPU as starting point. */ cpu = cpumask_next(raw_smp_processor_id(), cpu_online_mask); @@ -451,7 +451,7 @@ static void rtas_event_scan(struct work_struct *w) schedule_delayed_work_on(cpu, &event_scan_work, __round_jiffies_relative(event_scan_delay, cpu)); - put_online_cpus(); + cpus_read_unlock(); } #ifdef CONFIG_PPC64 diff --git a/arch/powerpc/kvm/book3s_hv_builtin.c b/arch/powerpc/kvm/book3s_hv_builtin.c index be8ef1c5b1bfb..fcf4760a3a0ea 100644 --- a/arch/powerpc/kvm/book3s_hv_builtin.c +++ b/arch/powerpc/kvm/book3s_hv_builtin.c @@ -137,23 +137,23 @@ long int kvmppc_rm_h_confer(struct kvm_vcpu *vcpu, int target, * exist in the system. We use a counter of VMs to track this. * * One of the operations we need to block is onlining of secondaries, so we - * protect hv_vm_count with get/put_online_cpus(). + * protect hv_vm_count with cpus_read_lock/unlock(). */ static atomic_t hv_vm_count; void kvm_hv_vm_activated(void) { - get_online_cpus(); + cpus_read_lock(); atomic_inc(&hv_vm_count); - put_online_cpus(); + cpus_read_unlock(); } EXPORT_SYMBOL_GPL(kvm_hv_vm_activated); void kvm_hv_vm_deactivated(void) { - get_online_cpus(); + cpus_read_lock(); atomic_dec(&hv_vm_count); - put_online_cpus(); + cpus_read_unlock(); } EXPORT_SYMBOL_GPL(kvm_hv_vm_deactivated); diff --git a/arch/powerpc/platforms/powernv/idle.c b/arch/powerpc/platforms/powernv/idle.c index 528a7e0cf83aa..aa27689b832db 100644 --- a/arch/powerpc/platforms/powernv/idle.c +++ b/arch/powerpc/platforms/powernv/idle.c @@ -199,12 +199,12 @@ static ssize_t store_fastsleep_workaround_applyonce(struct device *dev, */ power7_fastsleep_workaround_exit = false; - get_online_cpus(); + cpus_read_lock(); primary_thread_mask = cpu_online_cores_map(); on_each_cpu_mask(&primary_thread_mask, pnv_fastsleep_workaround_apply, &err, 1); - put_online_cpus(); + cpus_read_unlock(); if (err) { pr_err("fastsleep_workaround_applyonce change failed while running pnv_fastsleep_workaround_apply"); goto fail; diff --git a/arch/powerpc/platforms/powernv/opal-imc.c b/arch/powerpc/platforms/powernv/opal-imc.c index 7824cc364bc40..ba02a75c14102 100644 --- a/arch/powerpc/platforms/powernv/opal-imc.c +++ b/arch/powerpc/platforms/powernv/opal-imc.c @@ -186,7 +186,7 @@ static void disable_nest_pmu_counters(void) int nid, cpu; const struct cpumask *l_cpumask; - get_online_cpus(); + cpus_read_lock(); for_each_node_with_cpus(nid) { l_cpumask = cpumask_of_node(nid); cpu = cpumask_first_and(l_cpumask, cpu_online_mask); @@ -195,7 +195,7 @@ static void disable_nest_pmu_counters(void) opal_imc_counters_stop(OPAL_IMC_COUNTERS_NEST, get_hard_smp_processor_id(cpu)); } - put_online_cpus(); + cpus_read_unlock(); } static void disable_core_pmu_counters(void) @@ -203,7 +203,7 @@ static void disable_core_pmu_counters(void) cpumask_t cores_map; int cpu, rc; - get_online_cpus(); + cpus_read_lock(); /* Disable the IMC Core functions */ cores_map = cpu_online_cores_map(); for_each_cpu(cpu, &cores_map) { @@ -213,7 +213,7 @@ static void disable_core_pmu_counters(void) pr_err("%s: Failed to stop Core (cpu = %d)\n", __FUNCTION__, cpu); } - put_online_cpus(); + cpus_read_unlock(); } int get_max_nest_dev(void) -- 2.32.0
WARNING: multiple messages have this Message-ID (diff)
From: Sebastian Andrzej Siewior <bigeasy@linutronix.de> To: linux-kernel@vger.kernel.org Cc: Peter Zijlstra <peterz@infradead.org>, Sebastian Andrzej Siewior <bigeasy@linutronix.de>, kvm-ppc@vger.kernel.org, Paul Mackerras <paulus@samba.org>, tglx@linutronix.de, linuxppc-dev@lists.ozlabs.org Subject: [PATCH 03/38] powerpc: Replace deprecated CPU-hotplug functions. Date: Tue, 3 Aug 2021 16:15:46 +0200 [thread overview] Message-ID: <20210803141621.780504-4-bigeasy@linutronix.de> (raw) In-Reply-To: <20210803141621.780504-1-bigeasy@linutronix.de> The functions get_online_cpus() and put_online_cpus() have been deprecated during the CPU hotplug rework. They map directly to cpus_read_lock() and cpus_read_unlock(). Replace deprecated CPU-hotplug functions with the official version. The behavior remains unchanged. Cc: Michael Ellerman <mpe@ellerman.id.au> Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org> Cc: Paul Mackerras <paulus@samba.org> Cc: linuxppc-dev@lists.ozlabs.org Cc: kvm-ppc@vger.kernel.org Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de> --- arch/powerpc/kernel/rtasd.c | 4 ++-- arch/powerpc/kvm/book3s_hv_builtin.c | 10 +++++----- arch/powerpc/platforms/powernv/idle.c | 4 ++-- arch/powerpc/platforms/powernv/opal-imc.c | 8 ++++---- 4 files changed, 13 insertions(+), 13 deletions(-) diff --git a/arch/powerpc/kernel/rtasd.c b/arch/powerpc/kernel/rtasd.c index 8561dfb33f241..32ee17753eb4a 100644 --- a/arch/powerpc/kernel/rtasd.c +++ b/arch/powerpc/kernel/rtasd.c @@ -429,7 +429,7 @@ static void rtas_event_scan(struct work_struct *w) do_event_scan(); - get_online_cpus(); + cpus_read_lock(); /* raw_ OK because just using CPU as starting point. */ cpu = cpumask_next(raw_smp_processor_id(), cpu_online_mask); @@ -451,7 +451,7 @@ static void rtas_event_scan(struct work_struct *w) schedule_delayed_work_on(cpu, &event_scan_work, __round_jiffies_relative(event_scan_delay, cpu)); - put_online_cpus(); + cpus_read_unlock(); } #ifdef CONFIG_PPC64 diff --git a/arch/powerpc/kvm/book3s_hv_builtin.c b/arch/powerpc/kvm/book3s_hv_builtin.c index be8ef1c5b1bfb..fcf4760a3a0ea 100644 --- a/arch/powerpc/kvm/book3s_hv_builtin.c +++ b/arch/powerpc/kvm/book3s_hv_builtin.c @@ -137,23 +137,23 @@ long int kvmppc_rm_h_confer(struct kvm_vcpu *vcpu, int target, * exist in the system. We use a counter of VMs to track this. * * One of the operations we need to block is onlining of secondaries, so we - * protect hv_vm_count with get/put_online_cpus(). + * protect hv_vm_count with cpus_read_lock/unlock(). */ static atomic_t hv_vm_count; void kvm_hv_vm_activated(void) { - get_online_cpus(); + cpus_read_lock(); atomic_inc(&hv_vm_count); - put_online_cpus(); + cpus_read_unlock(); } EXPORT_SYMBOL_GPL(kvm_hv_vm_activated); void kvm_hv_vm_deactivated(void) { - get_online_cpus(); + cpus_read_lock(); atomic_dec(&hv_vm_count); - put_online_cpus(); + cpus_read_unlock(); } EXPORT_SYMBOL_GPL(kvm_hv_vm_deactivated); diff --git a/arch/powerpc/platforms/powernv/idle.c b/arch/powerpc/platforms/powernv/idle.c index 528a7e0cf83aa..aa27689b832db 100644 --- a/arch/powerpc/platforms/powernv/idle.c +++ b/arch/powerpc/platforms/powernv/idle.c @@ -199,12 +199,12 @@ static ssize_t store_fastsleep_workaround_applyonce(struct device *dev, */ power7_fastsleep_workaround_exit = false; - get_online_cpus(); + cpus_read_lock(); primary_thread_mask = cpu_online_cores_map(); on_each_cpu_mask(&primary_thread_mask, pnv_fastsleep_workaround_apply, &err, 1); - put_online_cpus(); + cpus_read_unlock(); if (err) { pr_err("fastsleep_workaround_applyonce change failed while running pnv_fastsleep_workaround_apply"); goto fail; diff --git a/arch/powerpc/platforms/powernv/opal-imc.c b/arch/powerpc/platforms/powernv/opal-imc.c index 7824cc364bc40..ba02a75c14102 100644 --- a/arch/powerpc/platforms/powernv/opal-imc.c +++ b/arch/powerpc/platforms/powernv/opal-imc.c @@ -186,7 +186,7 @@ static void disable_nest_pmu_counters(void) int nid, cpu; const struct cpumask *l_cpumask; - get_online_cpus(); + cpus_read_lock(); for_each_node_with_cpus(nid) { l_cpumask = cpumask_of_node(nid); cpu = cpumask_first_and(l_cpumask, cpu_online_mask); @@ -195,7 +195,7 @@ static void disable_nest_pmu_counters(void) opal_imc_counters_stop(OPAL_IMC_COUNTERS_NEST, get_hard_smp_processor_id(cpu)); } - put_online_cpus(); + cpus_read_unlock(); } static void disable_core_pmu_counters(void) @@ -203,7 +203,7 @@ static void disable_core_pmu_counters(void) cpumask_t cores_map; int cpu, rc; - get_online_cpus(); + cpus_read_lock(); /* Disable the IMC Core functions */ cores_map = cpu_online_cores_map(); for_each_cpu(cpu, &cores_map) { @@ -213,7 +213,7 @@ static void disable_core_pmu_counters(void) pr_err("%s: Failed to stop Core (cpu = %d)\n", __FUNCTION__, cpu); } - put_online_cpus(); + cpus_read_unlock(); } int get_max_nest_dev(void) -- 2.32.0
next prev parent reply other threads:[~2021-08-03 14:17 UTC|newest] Thread overview: 113+ messages / expand[flat|nested] mbox.gz Atom feed top 2021-08-03 14:15 [PATCH 00/38] Replace deprecated CPU-hotplug Sebastian Andrzej Siewior 2021-08-03 14:15 ` Sebastian Andrzej Siewior 2021-08-03 14:15 ` [Nouveau] " Sebastian Andrzej Siewior 2021-08-03 14:15 ` Sebastian Andrzej Siewior 2021-08-03 14:15 ` [PATCH 01/38] Documentation: Replace deprecated CPU-hotplug functions Sebastian Andrzej Siewior 2021-08-27 23:53 ` [tip: smp/core] " tip-bot2 for Sebastian Andrzej Siewior 2021-08-03 14:15 ` [PATCH 02/38] MIPS: " Sebastian Andrzej Siewior 2021-08-05 9:02 ` Thomas Bogendoerfer 2021-08-03 14:15 ` Sebastian Andrzej Siewior [this message] 2021-08-03 14:15 ` [PATCH 03/38] powerpc: " Sebastian Andrzej Siewior 2021-08-03 14:15 ` [PATCH 04/38] s390: " Sebastian Andrzej Siewior 2021-08-03 15:40 ` Heiko Carstens 2021-08-03 14:15 ` [PATCH 05/38] s390/sclp: " Sebastian Andrzej Siewior 2021-08-03 15:40 ` Heiko Carstens 2021-08-03 14:15 ` [PATCH 06/38] x86/mmiotrace: " Sebastian Andrzej Siewior 2021-08-03 14:15 ` [Nouveau] " Sebastian Andrzej Siewior 2021-08-03 15:03 ` Karol Herbst 2021-08-03 15:03 ` Karol Herbst 2021-08-04 1:07 ` Steven Rostedt 2021-08-04 1:07 ` [Nouveau] " Steven Rostedt 2021-08-10 12:52 ` [tip: x86/cleanups] " tip-bot2 for Sebastian Andrzej Siewior 2021-08-03 14:15 ` [PATCH 07/38] x86/mtrr: " Sebastian Andrzej Siewior 2021-08-10 12:52 ` [tip: x86/cleanups] " tip-bot2 for Sebastian Andrzej Siewior 2021-08-03 14:15 ` [PATCH 08/38] x86/microcode: " Sebastian Andrzej Siewior 2021-08-10 12:52 ` [tip: x86/cleanups] " tip-bot2 for Sebastian Andrzej Siewior 2021-08-03 14:15 ` [PATCH 09/38] x86/mce/inject: " Sebastian Andrzej Siewior 2021-08-10 12:52 ` [tip: x86/cleanups] " tip-bot2 for Sebastian Andrzej Siewior 2021-08-03 14:15 ` [PATCH 10/38] perf/x86/intel: " Sebastian Andrzej Siewior 2021-08-10 13:04 ` [tip: perf/core] " tip-bot2 for Sebastian Andrzej Siewior 2021-08-26 8:09 ` tip-bot2 for Sebastian Andrzej Siewior 2021-08-03 14:15 ` [PATCH 11/38] perf/hw_breakpoint: " Sebastian Andrzej Siewior 2021-08-10 13:04 ` [tip: perf/core] " tip-bot2 for Sebastian Andrzej Siewior 2021-08-26 8:09 ` tip-bot2 for Sebastian Andrzej Siewior 2021-08-03 14:15 ` [PATCH 12/38] crypto: virtio: " Sebastian Andrzej Siewior 2021-08-03 14:15 ` Sebastian Andrzej Siewior 2021-08-12 11:36 ` Herbert Xu 2021-08-12 11:36 ` Herbert Xu 2021-08-03 14:15 ` [PATCH 13/38] hwmon: " Sebastian Andrzej Siewior 2021-08-03 15:29 ` Guenter Roeck 2021-08-03 14:15 ` [PATCH 14/38] coresight: " Sebastian Andrzej Siewior 2021-08-03 14:15 ` Sebastian Andrzej Siewior 2021-08-03 15:52 ` Mathieu Poirier 2021-08-03 15:52 ` Mathieu Poirier 2021-08-03 14:15 ` [PATCH 15/38] md/raid5: " Sebastian Andrzej Siewior 2021-08-05 16:20 ` Song Liu 2021-08-27 23:53 ` [tip: smp/core] " tip-bot2 for Sebastian Andrzej Siewior 2021-08-03 14:15 ` [PATCH 16/38] sgi-xpc: " Sebastian Andrzej Siewior 2021-08-03 15:54 ` Steve Wahl 2021-08-03 21:30 ` Robin Holt 2021-08-03 14:16 ` [PATCH 17/38] platform/x86: " Sebastian Andrzej Siewior 2021-08-06 13:36 ` Hans de Goede 2021-08-03 14:16 ` [PATCH 18/38] powercap: intel_rapl: " Sebastian Andrzej Siewior 2021-08-04 18:14 ` Rafael J. Wysocki 2021-08-03 14:16 ` [PATCH 19/38] thermal: " Sebastian Andrzej Siewior 2021-08-14 10:52 ` Daniel Lezcano 2021-09-09 14:38 ` [thermal: thermal/next] thermal/drivers/intel_powerclamp: " thermal-bot for Sebastian Andrzej Siewior 2021-09-10 22:45 ` [tip: smp/urgent] thermal: " tip-bot2 for Sebastian Andrzej Siewior 2021-09-11 20:48 ` Daniel Lezcano 2021-09-11 21:11 ` Borislav Petkov 2021-08-03 14:16 ` [PATCH 20/38] mm: " Sebastian Andrzej Siewior 2021-08-27 23:53 ` [tip: smp/core] " tip-bot2 for Sebastian Andrzej Siewior 2021-08-03 14:16 ` [PATCH 21/38] virtio_net: " Sebastian Andrzej Siewior 2021-08-03 14:16 ` Sebastian Andrzej Siewior 2021-08-04 22:41 ` Jakub Kicinski 2021-08-03 14:16 ` [PATCH 22/38] net/af_iucv: " Sebastian Andrzej Siewior 2021-08-04 6:36 ` Julian Wiedmann 2021-08-03 14:16 ` [PATCH 23/38] net: " Sebastian Andrzej Siewior 2021-08-03 14:16 ` [PATCH 24/38] cgroup: " Sebastian Andrzej Siewior 2021-08-09 22:37 ` Tejun Heo 2021-08-03 14:16 ` [PATCH 25/38] genirq/affinity: " Sebastian Andrzej Siewior 2021-08-10 12:58 ` [tip: irq/core] " tip-bot2 for Sebastian Andrzej Siewior 2021-08-03 14:16 ` [PATCH 26/38] livepatch: " Sebastian Andrzej Siewior 2021-08-04 7:52 ` Petr Mladek 2021-08-19 10:01 ` Jiri Kosina 2021-08-03 14:16 ` [PATCH 27/38] padata: " Sebastian Andrzej Siewior 2021-08-04 14:52 ` Daniel Jordan 2021-08-12 11:36 ` Herbert Xu 2021-08-03 14:16 ` [PATCH 28/38] cpufreq: " Sebastian Andrzej Siewior 2021-08-04 18:19 ` Rafael J. Wysocki 2021-08-03 14:16 ` [PATCH 29/38] ACPI: processor: " Sebastian Andrzej Siewior 2021-08-04 18:27 ` Rafael J. Wysocki 2021-08-03 14:16 ` [PATCH 30/38] ACPI: PM: s2idle: " Sebastian Andrzej Siewior 2021-08-04 18:20 ` Rafael J. Wysocki 2021-08-03 14:16 ` [PATCH 31/38] rcu: " Sebastian Andrzej Siewior 2021-08-03 16:00 ` Paul E. McKenney 2021-08-10 12:42 ` Thomas Gleixner 2021-08-10 18:20 ` Paul E. McKenney 2021-08-03 14:16 ` [PATCH 32/38] sched: " Sebastian Andrzej Siewior 2021-08-10 12:58 ` [tip: sched/core] " tip-bot2 for Sebastian Andrzej Siewior 2021-08-03 14:16 ` [PATCH 33/38] smpboot: " Sebastian Andrzej Siewior 2021-08-10 13:04 ` [tip: smp/core] " tip-bot2 for Sebastian Andrzej Siewior 2021-08-03 14:16 ` [PATCH 34/38] clocksource: " Sebastian Andrzej Siewior 2021-08-10 12:58 ` [tip: timers/core] " tip-bot2 for Sebastian Andrzej Siewior 2021-08-03 14:16 ` [PATCH 35/38] torture: " Sebastian Andrzej Siewior 2021-08-03 14:16 ` [PATCH 36/38] tracing: " Sebastian Andrzej Siewior 2021-08-03 15:16 ` Daniel Bristot de Oliveira 2021-08-04 2:26 ` Steven Rostedt 2021-08-10 13:34 ` Sebastian Andrzej Siewior 2021-08-10 19:12 ` Steven Rostedt 2021-08-03 14:16 ` [PATCH 37/38] workqueue: " Sebastian Andrzej Siewior 2021-08-04 1:36 ` Lai Jiangshan 2021-08-09 22:33 ` Tejun Heo 2021-08-03 14:16 ` [PATCH 38/38] cpu/hotplug: Remove " Sebastian Andrzej Siewior 2021-09-10 22:45 ` [tip: smp/urgent] " tip-bot2 for Sebastian Andrzej Siewior 2021-08-03 15:30 ` [PATCH 00/38] Replace deprecated CPU-hotplug Hans de Goede 2021-08-03 15:30 ` Hans de Goede 2021-08-03 15:30 ` [Nouveau] " Hans de Goede 2021-08-03 15:30 ` Hans de Goede 2021-08-03 16:10 ` Sebastian Andrzej Siewior 2021-08-03 16:10 ` Sebastian Andrzej Siewior 2021-08-03 16:10 ` [Nouveau] " Sebastian Andrzej Siewior 2021-08-03 16:10 ` Sebastian Andrzej Siewior 2021-08-18 13:38 ` (subset) " Michael Ellerman
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=20210803141621.780504-4-bigeasy@linutronix.de \ --to=bigeasy@linutronix.de \ --cc=benh@kernel.crashing.org \ --cc=kvm-ppc@vger.kernel.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linuxppc-dev@lists.ozlabs.org \ --cc=mpe@ellerman.id.au \ --cc=paulus@samba.org \ --cc=peterz@infradead.org \ --cc=tglx@linutronix.de \ /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: linkBe 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.