Although llist provides proper APIs, they are not used. Make them used. Signed-off-by: Byungchul Park <byungchul.p...@lge.com> --- kernel/sched/core.c | 13 ++----------- 1 file changed, 2 insertions(+), 11 deletions(-)
diff --git a/kernel/sched/core.c b/kernel/sched/core.c index d01f9d0..417060b 100644 --- a/kernel/sched/core.c +++ b/kernel/sched/core.c @@ -1783,17 +1783,8 @@ void sched_ttwu_pending(void) raw_spin_lock_irqsave(&rq->lock, flags); rq_pin_lock(rq, &rf); - while (llist) { - int wake_flags = 0; - - p = llist_entry(llist, struct task_struct, wake_entry); - llist = llist_next(llist); - - if (p->sched_remote_wakeup) - wake_flags = WF_MIGRATED; - - ttwu_do_activate(rq, p, wake_flags, &rf); - } + llist_for_each_entry(p, llist, wake_entry) + ttwu_do_activate(rq, p, p->sched_remote_wakeup ? WF_MIGRATED : 0, &rf); rq_unpin_lock(rq, &rf); raw_spin_unlock_irqrestore(&rq->lock, flags); -- 1.9.1