linux-pinenote/include
Oleg Nesterov 24b7ead3fb freezer: fix wait_event_freezable/__thaw_task races
wait_event_freezable() and friends stop the waiting if try_to_freeze()
fails. This is not right, we can race with __thaw_task() and in this
case

	- wait_event_freezable() returns the wrong ERESTARTSYS

	- wait_event_freezable_timeout() can return the positive
	  value while condition == F

Change the code to always check __retval/condition before return.

Note: with or without this patch the timeout logic looks strange,
probably we should recalc timeout if try_to_freeze() returns T.

Signed-off-by: Oleg Nesterov <oleg@redhat.com>
Acked-by: Tejun Heo <tj@kernel.org>
2011-11-23 09:28:17 -08:00
..
acpi Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux 2011-11-07 10:13:52 -08:00
asm-generic
crypto
drm drm/radeon: add some missing FireMV pci ids 2011-11-15 19:43:06 +00:00
keys
linux freezer: fix wait_event_freezable/__thaw_task races 2011-11-23 09:28:17 -08:00
math-emu
media
misc
mtd
net Merge branch 'for-davem' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless 2011-11-09 16:22:15 -05:00
pcmcia
rdma
rxrpc
scsi
sound
target
trace
video
xen xen: Remove hanging references to CONFIG_XEN_PLATFORM_PCI 2011-11-16 12:13:42 -05:00
Kbuild