diff --git a/kernel/sched.c b/kernel/sched.c
index de440b220b4cb711c6ee1c54e2faa32b9c1737d8..a2be2d05529910594e24d19b2c1f1937df6a0ef4 100644
--- a/kernel/sched.c
+++ b/kernel/sched.c
@@ -6766,6 +6766,11 @@ void __init sched_init(void)
 	}
 
 	set_load_weight(&init_task);
+
+#ifdef CONFIG_RT_MUTEXES
+	plist_head_init(&init_task.pi_waiters, &init_task.pi_lock);
+#endif
+
 	/*
 	 * The boot idle thread does lazy MMU switching as well:
 	 */