Re: [PATCH] sched: Enhance readability of iterating wake_list

From: Peter Zijlstra
Date: Fri Feb 10 2017 - 02:57:19 EST


On Fri, Feb 10, 2017 at 01:09:31PM +0900, Byungchul Park wrote:
> +#define for_each_wake_list(task, node) \
> + for ((task) = llist_entry((node), struct task_struct, wake_entry); \
> + node; (node) = llist_next(node), \
> + (task) = llist_entry((node), struct task_struct, wake_entry))
> +

How about you make that llist_for_each(pos, member) or similar and
replace all while (foo) { foo = llist_next(foo); } instances?

Because most llist_next() users have the same pattern.