v6->v7: --- * change info message to indicate normalization and number of iterations normalized to (thanks Claudio) v5->v6: --- * multiply first, then divide when normalizing (thanks Claudio) * print fractions of us (thanks Claudio) * remove non-normalized output (thanks Claudio) * fence dag9c since not supported under TCG v4->v5: --- * print normalized runtime to be able to compare runtime of instructions in a single run (thanks Claudio) v3->v4: --- * remove merge conflict markers (thanks Christian) v2->v3: --- * print average (thanks Claudio) * have asm constraints look the same everywhere (thanks Claudio) * rebase patchset on top of my migration sck patches[1] to make use of the time.h improvements v1->v2: --- * add missing cc clobber, fix constraints for get_clock_us() (thanks Thomas) * avoid array and use pointer to const char* (thanks Thomas) * add comment why testing nop makes sense (thanks Thomas) * rework constraints and clobbers (thanks Thomas) Sometimes, it is useful to measure the exit time of certain instructions to e.g. identify performance regressions in instructions emulated by the hypervisor. This series adds a test which executes some instructions and measures their execution time. Since their execution time depends a lot on the environment at hand, all tests are reported as PASS currently. The point of this series is not so much the instructions which have been chosen here (but your ideas are welcome), but rather the general question whether it makes sense to have a test like this in kvm-unit-tests. This series is based on my migration sck patches[1] to make use of the time.h improvements there. [1] https://lore.kernel.org/all/20221011170024.972135-1-nrb@xxxxxxxxxxxxx/ Nico Boehr (1): s390x: add exittime tests s390x/Makefile | 1 + s390x/exittime.c | 296 ++++++++++++++++++++++++++++++++++++++++++++ s390x/unittests.cfg | 4 + 3 files changed, 301 insertions(+) create mode 100644 s390x/exittime.c -- 2.36.1