History log of /external/fio/arch/arch-s390.h
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
eda3a60699e1d96bb68875ef2169ca819eb8f4f9 20-May-2017 Elliott Hughes <enh@google.com> Update to fio-2.20.

Bug: N/A
Test: builds, seems to work
Change-Id: I455dcc898f00dc50ae5cb65d1b381982df5a51e0
/external/fio/arch/arch-s390.h
bbc1f06c53dae1fdad253dcbd08283c26556bfe1 27-Feb-2015 Christian Ehrhardt <ehrhardt@linux.vnet.ibm.com> fio: fix cycles_start build issue

There is an issue introduced with "commit 73df3e07 gettime: offset CPU cycle
counter by initial value". For architectures which define
ARCH_CPU_CLOCK_CYCLES_PER_USEC (currently only s390) this causes a build
error

gettime.c:174:11: error: ‘cycles_start’ undeclared (first use in this
function)
if (t < cycles_start && !cycles_wrap)

To make sure variables and code are only compiled in the same cases I
added a
clock definition called ARCH_CPU_CLOCK_WRAPS. We could merge
ARCH_CPU_CLOCK_WRAPS and the existing ARCH_CPU_CLOCK_CYCLES_PER_USEC
into one
if you prefer, so far nobody else uses it.

To avoid cluttering all architecture headers I enabled it by default in
arch-generic.h, so any arch not needing the wrap handling can undef
ARCH_CPU_CLOCK_WRAPS later in their headers.

Signed-off-by: Christian Ehrhardt <ehrhardt@linux.vnet.ibm.com>
Signed-off-by: Jens Axboe <axboe@fb.com>
/external/fio/arch/arch-s390.h
81795ce399bef3af497e5767546458e20ce81bbf 10-Apr-2014 Christian Ehrhardt <ehrhardt@linux.vnet.ibm.com> fio: fix s390 timing for older machines/binutils

Older gcc/binutils or one with very low default march will refuse to use stckf.
On top of that machines older than a z196 don not even have the store clock
fast facility.

To fix all of those issues, check for the facilities in configure step and make
the usage of stckf and a matching march dependent to it.

Signed-off-by: Christian Ehrhardt <ehrhardt@linux.vnet.ibm.com>
Signed-off-by: Jens Axboe <axboe@fb.com>
/external/fio/arch/arch-s390.h
1cffeb6f92dab701dfae0a6f5e52375deba422b7 08-Apr-2014 Christian Ehrhardt <ehrhardt@linux.vnet.ibm.com> fio: fix s390 nop

When trying to run rate limited fio runs we encountered that the current
definition of a nop uses a privileged instruction which is not even a nop,
but a yield call to the hipervisor.
That leads to a SIGILL as it is privileged.

To solve that issue replace it with a nop, the assembler will take care
of it (likely to become a BCR 0,0)

Signed-off-by: Christian Ehrhardt <ehrhardt@linux.vnet.ibm.com>
Signed-off-by: Jens Axboe <axboe@fb.com>
/external/fio/arch/arch-s390.h
919e789d0999bf13ef1ae670c536d2aef3709894 08-Apr-2014 Christian Ehrhardt <ehrhardt@linux.vnet.ibm.com> fio: fix s390 time accounting

The current timer implementation could cause time warps on s390 which ends up
as time bound jobs that would never end, because they always reset themself to
the old time.

When touching this code anyway, we also change it to use the faster stckf
and avoid the calibration as we can control the result to be usecs.
This also eliminates a few calculations cycle->usec in the hot path for the
timer.

In case other architectures have similar improved timers that might not be
usec based, but nsec based or such a thing any architecture can set
ARCH_CPU_CLOCK_CYCLES_PER_USEC to an appropriate per-arch value.
This leaves the infrastructure open for others and the compiler will throw
our division by 1 away anyway.

Signed-off-by: Christian Ehrhardt <ehrhardt@linux.vnet.ibm.com>
Signed-off-by: Jens Axboe <axboe@fb.com>
/external/fio/arch/arch-s390.h
15cf40b2844caad4cf8da0cdaeddd132cd6adefc 30-Dec-2012 Dan Horák <dan@danny.cz> implement get_cpu_clock() for s390/s390x

Signed-off-by: Jens Axboe <axboe@kernel.dk>
/external/fio/arch/arch-s390.h
cca84643cc10cd72b0b453ff92ccb8643ba51493 07-Oct-2011 Jens Axboe <axboe@kernel.dk> Pass arch/os in probe

Signed-off-by: Jens Axboe <axboe@kernel.dk>
/external/fio/arch/arch-s390.h
3b02d57453fc574331020c3d842a27c67846a4b7 13-Jun-2008 Jens Axboe <jens.axboe@oracle.com> Revert "Add spinlocks"

This reverts commit 69ebbd397e80b23ec4281c99e9f7242a089cc771.
/external/fio/arch/arch-s390.h
69ebbd397e80b23ec4281c99e9f7242a089cc771 12-Jun-2008 Jens Axboe <jens.axboe@oracle.com> Add spinlocks

Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
/external/fio/arch/arch-s390.h
9a9c63f1608c6f63b10cd5575dee868c2d269c87 04-Jun-2008 Jens Axboe <jens.axboe@oracle.com> Add missing splice syscall numbers for alpha and s390

All archs now verified as compiling.

Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
/external/fio/arch/arch-s390.h
44c47feb9edc7854bf3cfa2e3d843e90fc969b3a 04-Jun-2008 Jens Axboe <jens.axboe@oracle.com> Add write barriers

And enable them in solarisaio, then it should be safe to use the
signal driven IO "interrupts".

Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
/external/fio/arch/arch-s390.h
697a606cc0af1c39ac18998c344a522199accb36 31-May-2008 Jens Axboe <jens.axboe@oracle.com> Add sparc and sparc64 support

Also get rid of the arch private ffz functions, the generic
one is just fine.

Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
/external/fio/arch/arch-s390.h
db6defc77508f5bf217f0a6768d13426eee21119 11-Dec-2007 Jens Axboe <jens.axboe@oracle.com> syslet: add proper read barrier between user_tail and completion read

Also fixup a bug with ring indexing, it needs to use the real ring size
mask, not the io depth.

Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
/external/fio/arch/arch-s390.h
b12ebc65e82de1cc6174b65c79266dd0f0a4fbf3 21-May-2007 Jens Axboe <jens.axboe@oracle.com> Rename ffz() function to fio_ffz() to avoid conflicts

Newer gcc/glibc include an ffz function. Lets just do the easy
thing and rename ours to fio_ffz(), then we can look into reusing
a provided one later if necessary.

Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
/external/fio/arch/arch-s390.h
317b95d07d4921d2594a1be6e014c9c2d062fe75 02-Apr-2007 Jens Axboe <jens.axboe@oracle.com> Move os/arch/compiler headers into directories

Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
/external/fio/arch/arch-s390.h