iPXE
|
Real mode transition self-tests. More...
Go to the source code of this file.
Macros | |
#define | PROFILE_COUNT 4096 |
Number of sample iterations for profiling. More... | |
Functions | |
FILE_LICENCE (GPL2_OR_LATER_OR_UBDL) | |
static __asmcall __used void | librm_test_call (struct i386_all_regs *ix86 __unused) |
Dummy function for profiling tests. More... | |
static void | librm_test_exec (void) |
Perform real mode transition self-tests. More... | |
REQUIRING_SYMBOL (librm_test) | |
REQUIRE_OBJECT (test) | |
Variables | |
static struct profiler p2r_profiler | __profiler = { .name = "p2r" } |
Protected-to-real mode transition profiler. More... | |
struct self_test librm_test | __self_test |
Real mode transition self-test. More... | |
Real mode transition self-tests.
This file allows for easy measurement of the time taken to perform real mode transitions, which may have a substantial overhead when running under a hypervisor.
Definition in file librm_test.c.
#define PROFILE_COUNT 4096 |
Number of sample iterations for profiling.
Definition at line 44 of file librm_test.c.
FILE_LICENCE | ( | GPL2_OR_LATER_OR_UBDL | ) |
|
static |
Dummy function for profiling tests.
Definition at line 62 of file librm_test.c.
Referenced by librm_test_exec().
|
static |
Perform real mode transition self-tests.
Definition at line 70 of file librm_test.c.
References __asm__(), __volatile__(), librm_test_call(), PROFILE_COUNT, profile_start(), profile_start_at(), profile_stop(), profile_stop_at(), REAL_CODE, started, profiler::stopped, timestamp, and VIRT_CALL.
REQUIRING_SYMBOL | ( | librm_test | ) |
REQUIRE_OBJECT | ( | test | ) |
Protected-to-real mode transition profiler.
Virtual call profiler.
Real-mode call profiler.
Real-to-protected mode transition profiler.
Definition at line 47 of file librm_test.c.
struct self_test librm_test __self_test |
Real mode transition self-test.
Definition at line 119 of file librm_test.c.