BUG/MEDIUM: list: fix the rollback on addq in the locked liss
authorWilly Tarreau <w@1wt.eu>
Thu, 28 Feb 2019 10:09:56 +0000 (11:09 +0100)
committerWilly Tarreau <w@1wt.eu>
Thu, 28 Feb 2019 14:10:15 +0000 (15:10 +0100)
commitbd20ad58748eafbded464f574ed84dbbdad31e8d
tree7b3097da806a45c789a7e9fdb554fe9fe1050263
parent18215cba6a51e88bbd4c0f993ffcebfd92d43a47
BUG/MEDIUM: list: fix the rollback on addq in the locked liss

Commit a8434ec14 ("MINOR: lists: Implement locked variations.")
introduced locked lists which use the elements pointers as locks
for concurrent operations. A copy-paste typo in LIST_ADDQ_LOCKED()
causes corruption in the list in case the next pointer is already
held, as it restores the previous pointer into the next one. It
may impact the server pools.

This will have to be backported if the commit above is backported.
include/common/mini-clist.h