Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
- arch/powerpc/kernel/cacheinfo.c | 21 +++++++++++++++++++++
- arch/powerpc/kernel/cacheinfo.h | 4 ++++
- 2 files changed, 25 insertions(+)
+ arch/powerpc/kernel/cacheinfo.c | 17 +++++++++++++++++
+ arch/powerpc/kernel/cacheinfo.h | 4 ++++
+ 2 files changed, 21 insertions(+)
-diff --git a/arch/powerpc/kernel/cacheinfo.c b/arch/powerpc/kernel/cacheinfo.c
-index c641983bbdd68..0122d5ce0637d 100644
--- a/arch/powerpc/kernel/cacheinfo.c
+++ b/arch/powerpc/kernel/cacheinfo.c
-@@ -867,4 +867,25 @@ void cacheinfo_cpu_offline(unsigned int cpu_id)
+@@ -867,4 +867,21 @@ void cacheinfo_cpu_offline(unsigned int
if (cache)
cache_cpu_clear(cache, cpu_id);
}
+{
+ unsigned int cpu;
+
-+ lockdep_assert_cpus_held();
-+
+ for_each_online_cpu(cpu)
+ cacheinfo_cpu_offline(cpu);
+}
+{
+ unsigned int cpu;
+
-+ lockdep_assert_cpus_held();
-+
+ for_each_online_cpu(cpu)
+ cacheinfo_cpu_online(cpu);
+}
+
#endif /* (CONFIG_PPC_PSERIES && CONFIG_SUSPEND) || CONFIG_HOTPLUG_CPU */
-diff --git a/arch/powerpc/kernel/cacheinfo.h b/arch/powerpc/kernel/cacheinfo.h
-index a7b74d36acd71..2cdee87a482c5 100644
--- a/arch/powerpc/kernel/cacheinfo.h
+++ b/arch/powerpc/kernel/cacheinfo.h
@@ -5,4 +5,8 @@
+extern void cacheinfo_rebuild(void);
+
#endif /* _PPC_CACHEINFO_H */
---
-2.20.1
-
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
- arch/powerpc/kernel/cacheinfo.c | 21 +++++++++++++++++++++
- arch/powerpc/kernel/cacheinfo.h | 4 ++++
- 2 files changed, 25 insertions(+)
+ arch/powerpc/kernel/cacheinfo.c | 17 +++++++++++++++++
+ arch/powerpc/kernel/cacheinfo.h | 4 ++++
+ 2 files changed, 21 insertions(+)
-diff --git a/arch/powerpc/kernel/cacheinfo.c b/arch/powerpc/kernel/cacheinfo.c
-index c641983bbdd68..0122d5ce0637d 100644
--- a/arch/powerpc/kernel/cacheinfo.c
+++ b/arch/powerpc/kernel/cacheinfo.c
-@@ -867,4 +867,25 @@ void cacheinfo_cpu_offline(unsigned int cpu_id)
+@@ -867,4 +867,21 @@ void cacheinfo_cpu_offline(unsigned int
if (cache)
cache_cpu_clear(cache, cpu_id);
}
+{
+ unsigned int cpu;
+
-+ lockdep_assert_cpus_held();
-+
+ for_each_online_cpu(cpu)
+ cacheinfo_cpu_offline(cpu);
+}
+{
+ unsigned int cpu;
+
-+ lockdep_assert_cpus_held();
-+
+ for_each_online_cpu(cpu)
+ cacheinfo_cpu_online(cpu);
+}
+
#endif /* (CONFIG_PPC_PSERIES && CONFIG_SUSPEND) || CONFIG_HOTPLUG_CPU */
-diff --git a/arch/powerpc/kernel/cacheinfo.h b/arch/powerpc/kernel/cacheinfo.h
-index a7b74d36acd71..2cdee87a482c5 100644
--- a/arch/powerpc/kernel/cacheinfo.h
+++ b/arch/powerpc/kernel/cacheinfo.h
@@ -5,4 +5,8 @@
+extern void cacheinfo_rebuild(void);
+
#endif /* _PPC_CACHEINFO_H */
---
-2.20.1
-