Xen Test Framework
Functions | Variables
setup.c File Reference
#include <xtf/lib.h>
#include <xtf/hypercall.h>
#include <xtf/extable.h>
#include <xtf/report.h>
#include <xtf/xenbus.h>
#include <arch/cpuid.h>
#include <arch/desc.h>
#include <arch/lib.h>
#include <arch/mm.h>
#include <arch/symbolic-const.h>
#include <arch/traps.h>
+ Include dependency graph for setup.c:

Go to the source code of this file.

Functions

static void collect_cpuid (cpuid_count_fn_t cpuid_fn)
 
static void init_hypercalls (void)
 
static bool is_initdomain (void)
 
static void setup_pv_console (void)
 
static void setup_xenbus (void)
 
static void map_shared_info (void)
 
static void qemu_console_write (const char *buf, size_t len)
 
static void xen_console_write (const char *buf, size_t len)
 
void arch_setup (void)
 
void test_setup (void)
 

Variables

uint8_t boot_stack [3 *PAGE_SIZE]
 
uint8_t user_stack [PAGE_SIZE]
 
uint32_t x86_features [FSCAPINTS]
 
enum x86_vendor x86_vendor
 
unsigned int max_leaf
 
unsigned int max_extd_leaf
 
unsigned int x86_family
 
unsigned int x86_model
 
unsigned int x86_stepping
 
unsigned int maxphysaddr
 
unsigned int maxvirtaddr
 
const char environment_description [] = ENVIRONMENT_DESCRIPTION
 
shared_info_t shared_info
 
bool xtf_has_fep = false
 Boolean indicating whether generic Force Emulation Prefix support is available for the test to use. More...
 
bool test_wants_user_mappings = false
 Boolean indicating whether the test wants user mappings or not. More...
 
bool test_needs_fep = false
 Boolean indicating whether the test is entirely predicated on the available of the Force Emulation Prefix. More...
 

Function Documentation

◆ collect_cpuid()

static void collect_cpuid ( cpuid_count_fn_t  cpuid_fn)
static

Definition at line 34 of file setup.c.

+ Here is the caller graph for this function:

◆ init_hypercalls()

static void init_hypercalls ( void  )
static

Definition at line 107 of file setup.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ is_initdomain()

static bool is_initdomain ( void  )
static

Definition at line 146 of file setup.c.

+ Here is the caller graph for this function:

◆ setup_pv_console()

static void setup_pv_console ( void  )
static

Definition at line 154 of file setup.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ setup_xenbus()

static void setup_xenbus ( void  )
static

Definition at line 179 of file setup.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ map_shared_info()

static void map_shared_info ( void  )
static

Definition at line 209 of file setup.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ qemu_console_write()

static void qemu_console_write ( const char *  buf,
size_t  len 
)
static

Definition at line 234 of file setup.c.

+ Here is the caller graph for this function:

◆ xen_console_write()

static void xen_console_write ( const char *  buf,
size_t  len 
)
static

Definition at line 241 of file setup.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ arch_setup()

void arch_setup ( void  )

Definition at line 246 of file setup.c.

+ Here is the caller graph for this function:

◆ test_setup()

void test_setup ( void  )

Definition at line 290 of file setup.c.

+ Here is the caller graph for this function:

Variable Documentation

◆ boot_stack

uint8_t boot_stack[3 *PAGE_SIZE]

Definition at line 21 of file setup.c.

◆ user_stack

uint8_t user_stack[PAGE_SIZE]

Definition at line 22 of file setup.c.

◆ x86_features

uint32_t x86_features[FSCAPINTS]

Definition at line 24 of file setup.c.

◆ x86_vendor

Definition at line 25 of file setup.c.

◆ max_leaf

unsigned int max_leaf

Definition at line 26 of file setup.c.

◆ max_extd_leaf

unsigned int max_extd_leaf

Definition at line 26 of file setup.c.

◆ x86_family

unsigned int x86_family

Definition at line 27 of file setup.c.

◆ x86_model

unsigned int x86_model

Definition at line 27 of file setup.c.

◆ x86_stepping

unsigned int x86_stepping

Definition at line 27 of file setup.c.

◆ maxphysaddr

unsigned int maxphysaddr

Definition at line 28 of file setup.c.

◆ maxvirtaddr

unsigned int maxvirtaddr

Definition at line 28 of file setup.c.

◆ environment_description

const char environment_description[] = ENVIRONMENT_DESCRIPTION

Definition at line 30 of file setup.c.

◆ shared_info

Definition at line 32 of file setup.c.

◆ xtf_has_fep

bool xtf_has_fep = false

Boolean indicating whether generic Force Emulation Prefix support is available for the test to use.

Definition at line 276 of file setup.c.

◆ test_wants_user_mappings

bool test_wants_user_mappings = false

Boolean indicating whether the test wants user mappings or not.

Some tests want an easy transition between supervisor and user modes. For such tests, this requires running on _PAGE_USER mappings, and they must opt-in.

See also
Errata

The framework variable is a weak reference, and may be overridden by a test wishing to change the default.

Definition at line 287 of file setup.c.

◆ test_needs_fep

bool test_needs_fep = false

Boolean indicating whether the test is entirely predicated on the available of the Force Emulation Prefix.

Definition at line 288 of file setup.c.