On Thu 24-10-13 08:19:26, Christoph Hellwig wrote:
> Make this useful helper available for other users.
> 
> Signed-off-by: Christoph Hellwig <h...@lst.de>
> ---
>  drivers/md/raid5.c    |   14 --------------
>  include/linux/llist.h |    2 ++
>  lib/llist.c           |   22 ++++++++++++++++++++++
>  3 files changed, 24 insertions(+), 14 deletions(-)
> 
> diff --git a/drivers/md/raid5.c b/drivers/md/raid5.c
> index 7ff4f25..046f1a9 100644
> --- a/drivers/md/raid5.c
> +++ b/drivers/md/raid5.c
> @@ -293,20 +293,6 @@ static void __release_stripe(struct r5conf *conf, struct 
> stripe_head *sh)
>               do_release_stripe(conf, sh);
>  }
>  
> -static struct llist_node *llist_reverse_order(struct llist_node *head)
> -{
> -     struct llist_node *new_head = NULL;
> -
> -     while (head) {
> -             struct llist_node *tmp = head;
> -             head = head->next;
> -             tmp->next = new_head;
> -             new_head = tmp;
> -     }
> -
> -     return new_head;
> -}
> -
>  /* should hold conf->device_lock already */
>  static int release_stripe_list(struct r5conf *conf)
>  {
> diff --git a/include/linux/llist.h b/include/linux/llist.h
> index 8828a78..fbf10a0 100644
> --- a/include/linux/llist.h
> +++ b/include/linux/llist.h
> @@ -195,4 +195,6 @@ static inline struct llist_node *llist_del_all(struct 
> llist_head *head)
>  
>  extern struct llist_node *llist_del_first(struct llist_head *head);
>  
> +struct llist_node *llist_reverse_order(struct llist_node *head);
> +
>  #endif /* LLIST_H */
> diff --git a/lib/llist.c b/lib/llist.c
> index 4a70d12..ef48b87 100644
> --- a/lib/llist.c
> +++ b/lib/llist.c
> @@ -81,3 +81,25 @@ struct llist_node *llist_del_first(struct llist_head *head)
>       return entry;
>  }
>  EXPORT_SYMBOL_GPL(llist_del_first);
> +
> +/**
> + * llist_reverse_order - reverse order of a llist chain
> + * @head:    first item of the list to be reversed
> + *
> + * Reverse the oder of a chain of llist entries and return the
                  ^^ order

  Otherwise the patch looks fine. You can add:
Reviewed-by: Jan Kara <j...@suse.cz>

                                                                Honza

> + * new first entry.
> + */
> +struct llist_node *llist_reverse_order(struct llist_node *head)
> +{
> +     struct llist_node *new_head = NULL;
> +
> +     while (head) {
> +             struct llist_node *tmp = head;
> +             head = head->next;
> +             tmp->next = new_head;
> +             new_head = tmp;
> +     }
> +
> +     return new_head;
> +}
> +EXPORT_SYMBOL_GPL(llist_reverse_order);
> -- 
> 1.7.10.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/
-- 
Jan Kara <j...@suse.cz>
SUSE Labs, CR
--
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/

Reply via email to