Commit 09b3efec authored by Byungchul Park's avatar Byungchul Park Committed by Jens Axboe

bcache: Don't reinvent the wheel but use existing llist API

Although llist provides proper APIs, they are not used. Make them used.
Signed-off-by: default avatarByungchul Park <byungchul.park@lge.com>
Acked-by: default avatarColy Li <colyli@suse.de>
Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
parent 69daf03a
...@@ -70,21 +70,10 @@ void __closure_wake_up(struct closure_waitlist *wait_list) ...@@ -70,21 +70,10 @@ void __closure_wake_up(struct closure_waitlist *wait_list)
list = llist_del_all(&wait_list->list); list = llist_del_all(&wait_list->list);
/* We first reverse the list to preserve FIFO ordering and fairness */ /* We first reverse the list to preserve FIFO ordering and fairness */
reverse = llist_reverse_order(list);
while (list) {
struct llist_node *t = list;
list = llist_next(list);
t->next = reverse;
reverse = t;
}
/* Then do the wakeups */ /* Then do the wakeups */
llist_for_each_entry(cl, reverse, list) {
while (reverse) {
cl = container_of(reverse, struct closure, list);
reverse = llist_next(reverse);
closure_set_waiting(cl, 0); closure_set_waiting(cl, 0);
closure_sub(cl, CLOSURE_WAITING + 1); closure_sub(cl, CLOSURE_WAITING + 1);
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment