Commit 0f52b4db authored by Uladzislau Rezki (Sony)'s avatar Uladzislau Rezki (Sony) Committed by Vlastimil Babka
Browse files

rcu/kvfree: Initialize kvfree_rcu() separately



Introduce a separate initialization of kvfree_rcu() functionality.
For such purpose a kfree_rcu_batch_init() is renamed to a kvfree_rcu_init()
and it is invoked from the main.c right after rcu_init() is done.

Signed-off-by: default avatarUladzislau Rezki (Sony) <urezki@gmail.com>
Acked-by: default avatarHyeonggon Yoo <hyeonggon.yoo@sk.com>
Tested-by: default avatarHyeonggon Yoo <hyeonggon.yoo@sk.com>
Signed-off-by: default avatarVlastimil Babka <vbabka@suse.cz>
parent b7ffecbe
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -118,6 +118,7 @@ static inline void call_rcu_hurry(struct rcu_head *head, rcu_callback_t func)

/* Internal to kernel */
void rcu_init(void);
void __init kvfree_rcu_init(void);
extern int rcu_scheduler_active;
void rcu_sched_clock_irq(int user);

+1 −0
Original line number Diff line number Diff line
@@ -992,6 +992,7 @@ void start_kernel(void)
	workqueue_init_early();

	rcu_init();
	kvfree_rcu_init();

	/* Trace events are available after this */
	trace_init();
+1 −2
Original line number Diff line number Diff line
@@ -5648,7 +5648,7 @@ static void __init rcu_dump_rcu_node_tree(void)

struct workqueue_struct *rcu_gp_wq;

static void __init kfree_rcu_batch_init(void)
void __init kvfree_rcu_init(void)
{
	int cpu;
	int i, j;
@@ -5703,7 +5703,6 @@ void __init rcu_init(void)

	rcu_early_boot_tests();

	kfree_rcu_batch_init();
	rcu_bootup_announce();
	sanitize_kthread_prio();
	rcu_init_geometry();