linux/arch/s390
Martin Schwidefsky 33fea794b9 [S390] etr: fix clock synchronization race
The etr events switch-to-local and sync-check disable the synchronous clock
and schedule a work queue that tries to get the clock back into sync.
If another switch-to-local or sync-check event occurs while the work queue
function etr_work_fn still runs the eacr.es bit and the clock_sync_word can
become inconsistent because check_sync_clock only uses the clock_sync_word
to determine if the clock is in sync or not. The second pass of the
etr_work_fn will reset the eacr.es bit but will leave the clock_sync_word
intact. Fix this race by moving the reset of the eacr.es bit into the
switch-to-local and sync-check functions and by checking the eacr.es bit
as well to decide if the clock needs to be synced.

Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2010-07-27 19:29:42 +02:00
..
appldata [S390] appldata/extmem/kvm: add missing GFP_KERNEL flag 2010-06-08 18:58:23 +02:00
boot
crypto
hypfs
include/asm Merge branch 'for-35' of git://repo.or.cz/linux-kbuild 2010-06-01 08:55:52 -07:00
kernel [S390] etr: fix clock synchronization race 2010-07-27 19:29:42 +02:00
kvm [S390] arch/s390/kvm: Use GFP_ATOMIC when a lock is held 2010-06-08 18:58:23 +02:00
lib
math-emu
mm [S390] appldata/extmem/kvm: add missing GFP_KERNEL flag 2010-06-08 18:58:23 +02:00
oprofile
defconfig [S390] Update default configuration. 2010-06-08 18:58:23 +02:00
Kconfig
Kconfig.debug
Makefile