Instead of del/add use a move list-op. Signed-off-by: Peter Zijlstra --- kernel/perf_counter.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) Index: linux-2.6/kernel/perf_counter.c =================================================================== --- linux-2.6.orig/kernel/perf_counter.c +++ linux-2.6/kernel/perf_counter.c @@ -89,8 +89,7 @@ list_del_counter(struct perf_counter *co list_for_each_entry_safe(sibling, tmp, &counter->sibling_list, list_entry) { - list_del_init(&sibling->list_entry); - list_add_tail(&sibling->list_entry, &ctx->counter_list); + list_move_tail(&sibling->list_entry, &ctx->counter_list); sibling->group_leader = sibling; } } --