Re: [PATCH v3 1/4] lib/dlock-list: Distributed and lock-protected lists
From: Al Viro
Date: Tue Jul 19 2016 - 01:01:11 EST
On Fri, Jul 15, 2016 at 01:39:40PM -0400, Waiman Long wrote:
> +struct dlock_list_head_percpu {
> + struct list_head list;
> + spinlock_t lock;
> +};
> +#define DLOCK_LIST_HEAD_PERCPU_INIT(name) \
> + { \
> + .list.prev = &name.list, \
> + .list.next = &name.list, \
> + .list.lock = __SPIN_LOCK_UNLOCKED(name), \
What's .list.lock and how does that even compile?
> +extern bool dlock_list_next(struct dlock_list_head *dlist,
> + struct dlock_list_iter *iter);
Ugh... Why not dlist_for_each_entry(), seeing that all users end up with
the same boilerplate?