criu/pie
Andrey Vagin bae333dfcb restorer: fix a race condition between access and unmap to task_entries
If we have tree threads, a following situation can occur:

T2: dec task_entries->nr_in_progress
T3: dec task_entries->nr_in_progress
T3: futex(&task_entries->nr_in_progress, WAKE_UP);
T1: unmap task_entries
T2: futex(&task_entries->nr_in_progress, WAKE_UP) -> EFAULT -> BUG_ON()

This patch adds a futex for synchronising threads.

Signed-off-by: Andrey Vagin <avagin@openvz.org>
Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2012-11-26 18:46:11 +04:00
..
gen-offsets.sh make: move pie files and build to separated directory 2012-11-22 18:53:29 +04:00
log-simple.c make: move pie files and build to separated directory 2012-11-22 18:53:29 +04:00
Makefile make: cleanup pie build 2012-11-22 18:53:59 +04:00
parasite-head-x86-64.S make: move pie files and build to separated directory 2012-11-22 18:53:29 +04:00
parasite.c crtools: add EOL to error messages 2012-11-23 16:43:33 +04:00
pie.lds.S make: move pie files and build to separated directory 2012-11-22 18:53:29 +04:00
restorer.c restorer: fix a race condition between access and unmap to task_entries 2012-11-26 18:46:11 +04:00