Eugene Syromyatnikov 101621d4c7 tests: avoid ioctl_kvm_run test failure when built with gcc -O0
When built with -O0, gcc (rightfully) generates function prologue, which
results in writing %rbp to the stack, causing premature KVM_EXIT_MMIO.
It could be possible to avoid such problems by "naked" attribute but,
unfortunately, the latter is not available on x86 with older GCC.
A trick suggested in [1] is used instead: assembly is moved
to the global scope.

[1] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=50242#c3

* tests/ioctl_kvm_run.c (code): Remove function.
Add globally scoped __asm__ with the function code and its size.
(code, code_size): New extern symbols declarations.
(run_kvm): Remove code_size definition and initialization.

Co-Authored-by: Dmitry V. Levin <ldv@altlinux.org>
2018-02-13 03:12:29 +00:00
2017-11-25 01:55:44 +00:00
2017-06-17 22:54:08 +00:00
2018-02-12 19:54:18 +00:00
2017-11-29 03:52:27 +00:00
2018-01-07 03:11:21 +00:00
2015-07-20 22:03:07 +00:00
2017-05-22 17:33:51 +00:00
2017-09-05 10:09:10 +02:00
2017-07-08 01:49:00 +00:00
2017-07-08 01:49:00 +00:00
2017-07-08 01:49:00 +00:00
2018-01-18 17:44:56 +00:00
2017-05-22 17:33:51 +00:00
2017-05-22 17:33:51 +00:00
2009-07-08 21:01:21 +00:00
2015-07-20 22:03:07 +00:00
2018-01-07 16:46:32 +00:00
2018-02-10 13:52:42 +00:00
2017-07-24 12:10:54 +00:00
2017-07-24 12:10:54 +00:00
2017-12-14 00:05:04 +00:00
2015-08-28 08:46:23 +00:00
2017-05-22 17:33:51 +00:00
2017-09-05 10:09:10 +02:00
2017-05-22 17:33:51 +00:00
2017-05-22 17:33:51 +00:00
2017-05-22 17:33:51 +00:00
2017-05-22 17:33:51 +00:00
2017-05-22 17:33:51 +00:00
2017-05-22 17:33:51 +00:00
2017-05-22 17:33:51 +00:00
2017-09-05 10:09:10 +02:00
2017-05-22 17:33:51 +00:00
2017-09-05 10:09:10 +02:00
2017-05-22 17:33:51 +00:00
2017-05-22 17:33:51 +00:00
2017-09-05 10:09:10 +02:00
2017-05-22 17:33:51 +00:00
2017-06-17 22:54:08 +00:00
2017-05-22 17:33:51 +00:00
2017-09-05 10:09:10 +02:00
2017-03-05 16:29:41 +00:00
2017-11-22 00:25:42 +00:00
2017-06-17 22:54:08 +00:00
2017-12-23 02:53:54 +00:00
2017-06-17 22:54:08 +00:00
2015-11-22 23:10:12 +00:00
2017-05-22 17:33:51 +00:00
2017-05-22 17:33:51 +00:00
2017-05-22 17:33:51 +00:00
2017-05-22 17:33:51 +00:00
2017-09-17 12:04:11 +00:00
2017-06-17 22:54:08 +00:00
2017-05-22 17:33:51 +00:00
2017-09-19 11:32:05 +00:00
2017-11-10 17:35:18 +00:00
2017-05-22 17:33:51 +00:00
2017-05-22 17:33:51 +00:00
2017-05-22 17:33:51 +00:00
2018-01-21 01:46:04 +00:00
2018-01-15 22:47:38 +00:00
2017-12-23 02:10:13 +00:00
2015-09-16 00:14:55 +00:00
2018-01-07 16:46:32 +00:00
2018-02-12 18:28:16 +00:00
2016-12-27 23:32:44 +00:00
2017-06-17 22:54:08 +00:00
2017-05-22 17:33:51 +00:00
2017-06-17 22:54:08 +00:00
2018-01-07 00:05:42 +00:00
2016-12-26 10:43:35 +00:00
2017-07-21 01:30:26 +00:00
2017-07-09 18:43:34 +00:00
2017-07-24 12:10:54 +00:00
2017-05-22 17:33:51 +00:00
2017-05-22 17:33:51 +00:00
2017-05-22 17:33:51 +00:00
2017-05-22 17:33:51 +00:00
2017-05-22 17:33:51 +00:00
2017-05-22 17:33:51 +00:00
2017-05-22 17:33:51 +00:00
2016-08-08 09:54:01 +00:00
2017-05-22 17:33:51 +00:00
2018-02-11 00:26:09 +00:00
2017-12-23 02:53:54 +00:00
2017-09-05 10:09:10 +02:00
2017-05-22 17:33:51 +00:00
2017-02-27 23:11:07 +00:00
2016-08-08 09:54:01 +00:00
2018-02-11 00:26:09 +00:00
2017-09-05 10:09:10 +02:00
2018-01-23 23:17:02 +00:00
2018-01-23 23:17:02 +00:00
2018-01-23 23:17:02 +00:00
2018-01-23 23:17:02 +00:00
2018-01-23 23:17:02 +00:00
2018-01-23 23:17:02 +00:00
2017-05-22 17:33:51 +00:00
2017-05-22 17:33:51 +00:00
2017-05-22 17:33:51 +00:00
2016-08-08 09:54:01 +00:00
2017-05-22 17:33:51 +00:00
2018-02-11 00:26:09 +00:00
2017-09-05 10:09:10 +02:00
2017-05-22 17:33:51 +00:00
2017-05-22 17:33:51 +00:00
2017-05-22 17:33:51 +00:00
2017-06-17 22:54:08 +00:00
2018-02-11 23:55:43 +00:00
2018-02-11 00:26:09 +00:00
2017-12-03 19:53:48 +01:00
2016-12-01 00:05:09 +00:00
2017-05-22 17:33:51 +00:00
2017-05-22 17:33:51 +00:00
2017-06-17 22:54:08 +00:00
2018-02-10 01:33:49 +00:00
2018-02-10 01:33:49 +00:00
2017-05-22 17:33:51 +00:00
2017-05-22 17:33:51 +00:00
2017-07-24 12:10:54 +00:00
2017-06-17 22:54:08 +00:00
2017-05-22 17:33:51 +00:00
2017-11-29 03:52:27 +00:00
2017-12-23 02:53:54 +00:00
2018-01-19 22:45:34 +00:00
2015-12-07 00:38:38 +00:00
2017-09-05 10:09:10 +02:00
2017-01-20 18:30:11 +00:00
2017-05-22 17:33:51 +00:00
2018-02-11 00:26:09 +00:00
2016-08-08 09:54:01 +00:00

strace - the linux syscall tracer

This is strace -- a diagnostic, debugging and instructional userspace utility with a traditional command-line interface for Linux. It is used to monitor and tamper with interactions between processes and the Linux kernel, which include system calls, signal deliveries, and changes of process state. The operation of strace is made possible by the kernel feature known as ptrace.

strace is released under a Berkeley-style license at the request of Paul Kranenburg; see the file COPYING for details.

See the file NEWS for information on what has changed in recent versions.

Please read the file INSTALL-git for installation instructions.

The user discussion and development of strace take place on the strace mailing list -- everyone is welcome to post bug reports, feature requests, comments and patches to strace-devel@lists.sourceforge.net. The mailing list archives are available at https://sourceforge.net/p/strace/mailman/strace-devel/ and other archival sites.

The GIT repository of strace is available at SourceForge, GitHub, and GitLab.

Build Status Code Coverage

Description
No description provided
Readme 17 MiB
Languages
C 92.2%
Shell 3.4%
M4 1.4%
Makefile 0.8%
Roff 0.7%
Other 1.5%