From: Ran Xiaokai <[email protected]>

The rcu callback free_asym_cap_entry() simply calls kfree().
It's better to directly call kfree_rcu().

Signed-off-by: Ran Xiaokai <[email protected]>
---
 kernel/sched/topology.c | 10 ++--------
 1 file changed, 2 insertions(+), 8 deletions(-)

diff --git a/kernel/sched/topology.c b/kernel/sched/topology.c
index 9748a4c8d668..60ff3ba1d6ff 100644
--- a/kernel/sched/topology.c
+++ b/kernel/sched/topology.c
@@ -1382,12 +1382,6 @@ asym_cpu_capacity_classify(const struct cpumask *sd_span,
 
 }
 
-static void free_asym_cap_entry(struct rcu_head *head)
-{
-       struct asym_cap_data *entry = container_of(head, struct asym_cap_data, 
rcu);
-       kfree(entry);
-}
-
 static inline void asym_cpu_capacity_update_data(int cpu)
 {
        unsigned long capacity = arch_scale_cpu_capacity(cpu);
@@ -1438,7 +1432,7 @@ static void asym_cpu_capacity_scan(void)
        list_for_each_entry_safe(entry, next, &asym_cap_list, link) {
                if (cpumask_empty(cpu_capacity_span(entry))) {
                        list_del_rcu(&entry->link);
-                       call_rcu(&entry->rcu, free_asym_cap_entry);
+                       kfree_rcu(entry, rcu);
                }
        }
 
@@ -1449,7 +1443,7 @@ static void asym_cpu_capacity_scan(void)
        if (list_is_singular(&asym_cap_list)) {
                entry = list_first_entry(&asym_cap_list, typeof(*entry), link);
                list_del_rcu(&entry->link);
-               call_rcu(&entry->rcu, free_asym_cap_entry);
+               kfree_rcu(entry, rcu);
        }
 }
 
-- 
2.17.1


_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to