The goal of this series is to avoid list corruption that may happen with pseudo-users when deleting one while doing nested ptrlist walking. This can occurs with mutually recursive calls: remove_usage() -> kill_instruction() -> remove_usage() ... Changes since v2: - replace the local tests against null list elements by one done directly by the list iteration macros The series is also available in the git repository at: git://github.com/lucvoo/sparse.git fix-nested-pseudo-users-deletion-v3 for you to fetch changes up to 4e2f74793baa52c127653efaedaacb0b52b8f884: mark pseudo users as deleted instead of removing them (2017-08-04 23:50:12 +0200) ---------------------------------------------------------------- Luc Van Oostenryck (5): ptrlist: add a counter for the number of removed elemnets ptrlist: adjust ptr_list_size for the new ->rm field ptrlist: add MARK_CURRENT_DELETED ptrlist: avoid iteration on NULL entries mark pseudo users as deleted instead of removing them ptrlist.c | 2 +- ptrlist.h | 15 ++++++++++++++- simplify.c | 5 +++-- 3 files changed, 18 insertions(+), 4 deletions(-) -- To unsubscribe from this list: send the line "unsubscribe linux-sparse" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html