mirror of
https://github.com/Fishwaldo/Star64_linux.git
synced 2025-04-10 08:23:59 +00:00
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: Byungchul Park <byungchul.park@lge.com> Acked-by: Coly Li <colyli@suse.de> Signed-off-by: Jens Axboe <axboe@kernel.dk>
This commit is contained in:
parent
69daf03ade
commit
09b3efec81
1 changed files with 2 additions and 13 deletions
|
@ -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);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue