On Fri, Feb 21, 2020 at 04:04:10PM +0100, Paolo Bonzini wrote: > On 21/02/20 15:47, Stefan Hajnoczi wrote: > >>> QLIST_SAFE_REMOVE(node, node_ready); /* remove from nested parent's list */ > >>> ^---- would cause corruption if node->node_ready was stale! > >>> > >>> Would you like me to add a comment? > >> No, it's okay. > > Are you happy with this series? > > Yes. Let's keep the Q*_REMOVE cleanup on the todo list. I'd keep > Q*_SAFE_REMOVE, but clear the pointer unconditionally in Q*_REMOVE so > that we can have something like Q*_IN_LIST too. QLIST_IS_INSERTED() is part of this patch series, although I can rename it to Q*_IN_LIST() and cover all linked list variants. :) > > Shall I include it in my next pull request or do you want to merge it? > > No, it's yours. Thanks! Stefan