Hello, On Mon, Oct 03, 2022 at 01:32:49PM -0400, Waiman Long wrote: > What my current thinking is to make llist works with both NULL and sentinel > terminated lockless list. Users who wish to use the sentinel terminated > version will have to use special sentinel version of LLIST_HEAD() macro and > llist_del_all() and __llist_del_all() functions. In this way, I don't need > to touch an existing users of llist while minimizing code redundancy. What > do you think? Wouldn't that be more error-prone in the long term? I'd just bite the bullet and convert the empty tests. It is a hassle to find them but given that it's just the head node testing, it hopefully wouldn't be too bad. Thanks. -- tejun