From 366929c588c9e8ad4d92c1bca2ac512c99bb5961 Mon Sep 17 00:00:00 2001
From: Oliver Neukum <oneukum@suse.com>
Date: Tue, 14 Jul 2020 14:20:02 +0200
Subject: [PATCH] padata: kABI fixup for struct padata_instance splitting nodes
Patch-mainline: Never, kABI fixup
References: git-fixes
Signed-off-by: Oliver Neukum <oneukum@suse.com>
---
include/linux/padata.h | 7 +++++--
kernel/padata.c | 2 ++
2 files changed, 7 insertions(+), 2 deletions(-)
--- a/include/linux/padata.h
+++ b/include/linux/padata.h
@@ -160,8 +160,7 @@ struct padata_shell {
* @flags: padata flags.
*/
struct padata_instance {
- struct hlist_node cpu_online_node;
- struct hlist_node cpu_dead_node;
+ struct hlist_node node;
struct workqueue_struct *parallel_wq;
struct workqueue_struct *serial_wq;
struct list_head pslist;
@@ -172,6 +171,10 @@ struct padata_instance {
struct kobject kobj;
struct mutex lock;
u8 flags;
+#ifndef __GENKSYMS__
+ struct hlist_node cpu_online_node;
+ struct hlist_node cpu_dead_node;
+#endif
#define PADATA_INIT 1
#define PADATA_RESET 2
#define PADATA_INVALID 4
--- a/kernel/padata.c
+++ b/kernel/padata.c
@@ -828,6 +828,7 @@ static void __padata_free(struct padata_
cpuhp_state_remove_instance_nocalls(CPUHP_PADATA_DEAD,
&pinst->cpu_dead_node);
cpuhp_state_remove_instance_nocalls(hp_online, &pinst->cpu_online_node);
+ pinst->node = pinst->cpu_dead_node;
#endif
WARN_ON(!list_empty(&pinst->pslist));
@@ -1039,6 +1040,7 @@ static struct padata_instance *padata_al
&pinst->cpu_online_node);
cpuhp_state_add_instance_nocalls_cpuslocked(CPUHP_PADATA_DEAD,
&pinst->cpu_dead_node);
+ pinst->node = pinst->cpu_dead_node;
#endif
put_online_cpus();