preempt_notifier_unregister() documents: "This is safe to call from within a preemption notifier."
However, both fire_sched_in_preempt_notifiers() and fire_sched_out_preempt_notifiers() are using hlist_for_each_entry(), which is not safe against entry removal during iteration. Inspection of the kvm code does not reveal any use of preempt_notifier_unregister() within the preempt notifiers. Therefore, fix the bogus comment. Signed-off-by: Mathieu Desnoyers <mathieu.desnoy...@efficios.com> CC: Ingo Molnar <mi...@redhat.com> CC: Peter Zijlstra <pet...@infradead.org> CC: Avi Kivity <a...@qumranet.com> --- kernel/sched/core.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kernel/sched/core.c b/kernel/sched/core.c index 57bd333..9edefec 100644 --- a/kernel/sched/core.c +++ b/kernel/sched/core.c @@ -2119,7 +2119,7 @@ EXPORT_SYMBOL_GPL(preempt_notifier_register); * preempt_notifier_unregister - no longer interested in preemption notifications * @notifier: notifier struct to unregister * - * This is safe to call from within a preemption notifier. + * This is *not* safe to call from within a preemption notifier. */ void preempt_notifier_unregister(struct preempt_notifier *notifier) { -- 2.1.4 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/