linux_dsm_epyc7002/arch/s390/lib
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
..
delay.c s390/time: correct use of store clock fast 2013-10-22 09:16:40 +02:00
div64.c s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
Makefile Kconfig: consolidate CONFIG_DEBUG_STRICT_USER_COPY_CHECKS 2013-04-30 17:04:09 -07:00
mem32.S s390/string: provide asm lib functions for memcpy and memcmp 2012-09-26 15:44:50 +02:00
mem64.S s390/string: provide asm lib functions for memcpy and memcmp 2012-09-26 15:44:50 +02:00
qrnnd.S [S390] fix s390 assembler code alignments 2011-07-24 10:48:21 +02:00
spinlock.c s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
string.c s390/string: provide asm lib functions for memcpy and memcmp 2012-09-26 15:44:50 +02:00
uaccess_mvcos.c s390/uaccess: fix strncpy_from_user/strnlen_user zero maxlen case 2013-02-28 09:37:08 +01:00
uaccess_pt.c s390/mm: cleanup page table definitions 2013-08-22 12:20:06 +02:00
uaccess_std.c s390/uaccess: fix strncpy_from_user string length check 2013-02-28 09:37:11 +01:00
uaccess.h s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
ucmpdi2.c [S390] add __ucmpdi2() helper function 2009-07-07 16:37:53 +02:00