linux/arch/s390/kvm
Martin Schwidefsky 8c071b0f19 s390/time: correct use of store clock fast
The result of the store-clock-fast (STCKF) instruction is a bit fuzzy.
It can happen that the value stored on one CPU is smaller than the value
stored on another CPU, although the order of the stores is the other
way around. This can cause deltas of get_tod_clock() values to become
negative when they should not be.

We need to be more careful with store-clock-fast, this patch partially
reverts git commit e4b7b4238e666682555461fa52eecd74652f36bb "time:
always use stckf instead of stck if available". The get_tod_clock()
function now uses the store-clock-extended (STCKE) instruction.
get_tod_clock_fast() can be used if the fuzziness of store-clock-fast
is acceptable e.g. for wait loops local to a CPU.

Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2013-10-22 09:16:40 +02:00
..
diag.c KVM: s390: use cookies for ioeventfd 2013-07-18 12:29:24 +02:00
gaccess.h s390: Replace weird use of PTR_RET. 2013-07-15 11:25:02 +09:30
intercept.c KVM: s390: Reworked LCTL and LCTLG instructions 2013-06-20 23:32:39 +02:00
interrupt.c s390/time: correct use of store clock fast 2013-10-22 09:16:40 +02:00
Kconfig KVM: s390: Wire up ioeventfd. 2013-03-05 19:12:17 -03:00
kvm-s390.c Merge branch 'next' of git://git.kernel.org/pub/scm/virt/kvm/kvm 2013-09-04 18:15:06 -07:00
kvm-s390.h KVM: s390: Add helper function for setting condition code 2013-07-29 09:03:45 +02:00
Makefile KVM: get rid of $(addprefix ../../../virt/kvm/, ...) in Makefiles 2013-05-19 15:14:00 +03:00
priv.c Merge branch 'next' of git://git.kernel.org/pub/scm/virt/kvm/kvm 2013-09-04 18:15:06 -07:00
sigp.c KVM: s390: Renamed PGM_PRIVILEGED_OPERATION 2013-06-20 23:31:04 +02:00
trace-s390.h KVM: s390: Add support for channel I/O instructions. 2013-01-07 19:53:43 -02:00
trace.h Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2013-04-30 09:36:50 -07:00