]> xenbits.xensource.com Git - people/royger/xen-test-framework.git/log
people/royger/xen-test-framework.git
9 years agoPull all definitions from stddef.h, including bits like offsetof()
Andrew Cooper [Mon, 7 Dec 2015 21:34:34 +0000 (21:34 +0000)]
Pull all definitions from stddef.h, including bits like offsetof()

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
9 years agoAdd to clean/distclean rules
Andrew Cooper [Mon, 7 Dec 2015 17:38:26 +0000 (17:38 +0000)]
Add to clean/distclean rules

Remove generated configuration files, and delete cscope files in any
directory.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
9 years agoAdjust linker script to avoid having a PT_LOAD header all the way from zero
Andrew Cooper [Mon, 7 Dec 2015 14:37:28 +0000 (14:37 +0000)]
Adjust linker script to avoid having a PT_LOAD header all the way from zero

Previously, the generated binaries had a single PT_LOAD header all the
way from 0 to the end of the generated code.

When building, the domain builder maps the entire region and
zeroes/copies the data as appropriate.  This causes a failure to build
when the header overlaps with unmapped addresses such as the HVM legacy
VGA range.

Link all binaries to load and run at 1MB to avoid the legacy VGA hole in
HVM guests.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
9 years agoCreate hvm64 test binaries as elf32, take 2
Andrew Cooper [Sun, 6 Dec 2015 18:30:46 +0000 (18:30 +0000)]
Create hvm64 test binaries as elf32, take 2

Experimentally, gcc/binutils from Debian Jessie (4.9.2/2.25) and CentOS
7.1 (4.8.3/2.23) don't make valid binaries when linking x86-64 object
files as elf32-x86-64.

Issues include corrupt DWARF debugging information (as confirmed by
gdb/readelf), and erroneously merged strings in .rodata (as confirmed by
strings).

Instead, link all binaries in their natural width, and objcopy hvm64
binaries to elf32-x86-64 after the fact.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
9 years agoProvide memset() and memcmp()
Andrew Cooper [Thu, 3 Dec 2015 16:01:53 +0000 (16:01 +0000)]
Provide memset() and memcmp()

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
9 years agoUndo previous change to link.lds.S
Andrew Cooper [Thu, 3 Dec 2015 15:56:40 +0000 (15:56 +0000)]
Undo previous change to link.lds.S

1MB != 0x10000, and while this shouldn't actually matter, it causes the
domain builder to choke for HVM guests.

Revert for now, until the domain builders' behaviour is understood.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
9 years agoIntroduce macros for basic number manipulation
Andrew Cooper [Sat, 24 Oct 2015 10:17:17 +0000 (11:17 +0100)]
Introduce macros for basic number manipulation

And sprinkle them through the existing code.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
9 years agoAvoid failing to build if the last directory lacks a Makefile
Andrew Cooper [Wed, 2 Dec 2015 10:22:39 +0000 (10:22 +0000)]
Avoid failing to build if the last directory lacks a Makefile

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
9 years agoAutomatically include config.h for all per-arch translation units
Andrew Cooper [Sun, 29 Nov 2015 19:46:47 +0000 (19:46 +0000)]
Automatically include config.h for all per-arch translation units

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
9 years agoCreate hvm64 test binaries as elf32
Andrew Cooper [Thu, 12 Nov 2015 14:56:01 +0000 (14:56 +0000)]
Create hvm64 test binaries as elf32

New improvements to the HVM domain building logic actually sanity check the
binary for being 32bit, as all HVM domains start in 32bit mode.

Previously, elf64 binaries were erroneously accepted.

In addition, drop the big/little endian bits.  x86 is unlikely to ever have a
big endian variant.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
9 years agoExpose the GDT to C code
Andrew Cooper [Fri, 30 Oct 2015 14:49:37 +0000 (14:49 +0000)]
Expose the GDT to C code

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
9 years agoFix per-arch .S generation rule to properly pass $AFLAGS
Andrew Cooper [Fri, 30 Oct 2015 14:00:40 +0000 (14:00 +0000)]
Fix per-arch .S generation rule to properly pass $AFLAGS

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
9 years agoModify default xl cfg files to name the VM identically to the kernel used
Andrew Cooper [Fri, 23 Oct 2015 14:48:01 +0000 (15:48 +0100)]
Modify default xl cfg files to name the VM identically to the kernel used

Suggested-by: Anshul Makkar <anshul.makkar@citrix.com>
Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
9 years agoGenerate xl configuration files for tests
Andrew Cooper [Thu, 22 Oct 2015 10:43:35 +0000 (11:43 +0100)]
Generate xl configuration files for tests

For now just the default configuration, which gets slightly customised
for each generated environment.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
9 years agoOnly recurse into directories with a Makefile
Andrew Cooper [Thu, 22 Oct 2015 09:53:41 +0000 (10:53 +0100)]
Only recurse into directories with a Makefile

Git will leave directories around by default when switching branches,
which causes unnecessary build failures.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
9 years agoDisable LTO for now
Andrew Cooper [Thu, 22 Oct 2015 09:42:48 +0000 (10:42 +0100)]
Disable LTO for now

It clearly isn't wired up correctly at the moment, and causes build
issues on Debian Jessie.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
9 years agoDefault CC to gcc
Andrew Cooper [Wed, 30 Sep 2015 14:54:24 +0000 (15:54 +0100)]
Default CC to gcc

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
9 years agoShort summary of execution environment
Andrew Cooper [Sun, 30 Aug 2015 22:27:10 +0000 (23:27 +0100)]
Short summary of execution environment

9 years agoInterface for test reports
Andrew Cooper [Fri, 14 Aug 2015 17:31:04 +0000 (18:31 +0100)]
Interface for test reports

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
9 years agoHVM 32 and 64bit environment
Andrew Cooper [Wed, 29 Apr 2015 16:31:43 +0000 (17:31 +0100)]
HVM 32 and 64bit environment

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
9 years agoHVM basic setup
Andrew Cooper [Mon, 4 May 2015 16:54:04 +0000 (17:54 +0100)]
HVM basic setup

 * Hypercalls
 * PV and Qemu console
 * Memory management
 * Pagetables

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
9 years agoLDT/GDT infrastructure
Andrew Cooper [Mon, 4 May 2015 16:52:45 +0000 (17:52 +0100)]
LDT/GDT infrastructure

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
9 years agox86 architectural MSR/CR constants and instruction wrappers
Andrew Cooper [Mon, 4 May 2015 16:51:48 +0000 (17:51 +0100)]
x86 architectural MSR/CR constants and instruction wrappers

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
9 years agoXen ABI bits for HVM guests
Andrew Cooper [Wed, 29 Apr 2015 16:50:56 +0000 (17:50 +0100)]
Xen ABI bits for HVM guests

 - HVMOP_get_param
 - HVM PV Console parameters
 - Xen CPUID leaves

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
9 years agoIntroduce and use a boot stack (one page)
Andrew Cooper [Tue, 24 Mar 2015 18:27:25 +0000 (19:27 +0100)]
Introduce and use a boot stack (one page)

HVM guests don't have one provided by the domain builder.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
9 years agoIntroduce panic() and use it to cover some exceptional cases
Andrew Cooper [Sat, 2 May 2015 10:52:29 +0000 (11:52 +0100)]
Introduce panic() and use it to cover some exceptional cases

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
9 years agoUse vsnprintf() to provide full formatting capabilities to the console
Andrew Cooper [Sun, 12 Apr 2015 01:55:01 +0000 (02:55 +0100)]
Use vsnprintf() to provide full formatting capabilities to the console

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
9 years agoInteger subset of vsnprintf(), including 64bit types in 32bit build
Andrew Cooper [Mon, 23 Mar 2015 16:40:21 +0000 (17:40 +0100)]
Integer subset of vsnprintf(), including 64bit types in 32bit build

Also a test binary which compares this implementation to the local libc's
implementation.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
9 years agoImplement strnlen()
Andrew Cooper [Sun, 12 Apr 2015 00:28:38 +0000 (01:28 +0100)]
Implement strnlen()

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
9 years agoProvide 64bit division in 32bit environments
Andrew Cooper [Sun, 12 Apr 2015 17:39:41 +0000 (18:39 +0100)]
Provide 64bit division in 32bit environments

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
9 years agoPV Console driver. Synchronous output only
Andrew Cooper [Fri, 20 Mar 2015 23:30:35 +0000 (00:30 +0100)]
PV Console driver.  Synchronous output only

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
9 years agoOrdering primitives, suitable for a shared ring
Andrew Cooper [Sun, 22 Mar 2015 14:54:05 +0000 (15:54 +0100)]
Ordering primitives, suitable for a shared ring

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
9 years agoBasic memory management for PV guests, sufficient to obtain the console ring virtual...
Andrew Cooper [Fri, 20 Mar 2015 21:28:24 +0000 (22:28 +0100)]
Basic memory management for PV guests, sufficient to obtain the console ring virtual address

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
9 years agoHypercall infrastructure needed for writing to a PV console
Andrew Cooper [Thu, 19 Mar 2015 21:13:51 +0000 (22:13 +0100)]
Hypercall infrastructure needed for writing to a PV console

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
9 years agoWrite to the hypervisor console
Andrew Cooper [Sun, 29 Mar 2015 18:17:05 +0000 (19:17 +0100)]
Write to the hypervisor console

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
9 years agoBasic console and printk() infrastructure
Andrew Cooper [Sat, 23 May 2015 22:23:42 +0000 (23:23 +0100)]
Basic console and printk() infrastructure

printk() can currently only deal with a plain string, and the output goes
nowhere.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
9 years agoArchitecture specific setup, obtaining the PV start_info page
Andrew Cooper [Wed, 18 Mar 2015 12:44:38 +0000 (13:44 +0100)]
Architecture specific setup, obtaining the PV start_info page

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
9 years agoBasic hypercall infrastructure. Tests now shut down as opposed to spinning in a...
Andrew Cooper [Tue, 17 Mar 2015 23:38:31 +0000 (00:38 +0100)]
Basic hypercall infrastructure.  Tests now shut down as opposed to spinning in a loop

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
9 years agoBasic build system and pv32/64 stubs. They currently spin in a loop
Andrew Cooper [Tue, 17 Mar 2015 23:15:02 +0000 (00:15 +0100)]
Basic build system and pv32/64 stubs.  They currently spin in a loop

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
9 years agoDoxygen configuration
Andrew Cooper [Wed, 29 Apr 2015 16:10:35 +0000 (17:10 +0100)]
Doxygen configuration

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
9 years agoSome introductory text files
Andrew Cooper [Sun, 29 Mar 2015 17:34:36 +0000 (18:34 +0100)]
Some introductory text files

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
10 years agoInitial commit
Andrew Cooper [Tue, 4 Nov 2014 20:48:27 +0000 (20:48 +0000)]
Initial commit

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>