Just happen to notice something wrong.
sync->head.next after list_del(&sync->head) is constantly NULL.
/cc @olv @ryanneph