linux/arch/s390
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
..
appldata s390/appldata_net_sum: do not use static data 2013-06-26 21:10:31 +02:00
boot s390: add support for LZ4-compressed kernel 2013-07-26 13:25:19 +02:00
crypto s390/crypto: Don't panic after crypto instruction failures 2012-11-23 11:14:27 +01:00
hypfs Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs 2013-09-05 08:50:26 -07:00
include s390/time: correct use of store clock fast 2013-10-22 09:16:40 +02:00
kernel s390/time: correct use of store clock fast 2013-10-22 09:16:40 +02:00
kvm s390/time: correct use of store clock fast 2013-10-22 09:16:40 +02:00
lib s390/time: correct use of store clock fast 2013-10-22 09:16:40 +02:00
math-emu s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
mm arch: mm: pass userspace fault flag to generic fault handler 2013-09-12 15:38:01 -07:00
net s390/bpf,jit: fix address randomization 2013-09-04 17:18:55 +02:00
oprofile Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux 2013-09-11 08:36:03 -07:00
pci s390/pci: use virtual memory for iommu bitmap 2013-08-30 08:57:24 +02:00
defconfig s390: update defconfig 2013-09-04 17:19:01 +02:00
Kbuild s390/pci: base support 2012-11-30 15:40:45 +01:00
Kconfig s390: enable ARCH_USE_CMPXCHG_LOCKREF 2013-09-28 12:46:29 +02:00
Kconfig.debug Kconfig: consolidate CONFIG_DEBUG_STRICT_USER_COPY_CHECKS 2013-04-30 17:04:09 -07:00
Makefile s390: remove small stack config option 2013-04-26 09:07:08 +02:00