/kvm-unit-tests/ |
H A D | errata.txt | 1 #---------------:-------------------------------:--------------------------------------------------- 4 #---------------:-------------------------------:--------------------------------------------------- 8 8c58be34494b : 5.6 : KVM: arm/arm64: vgic-its: Fix restoration of unma… 9 #---------------:-------------------------------:---------------------------------------------------
|
H A D | .gitlab-ci.yml | 4 - dnf update -y 5 - dnf install -y make python 15 - logs 23 - build/logs 25 build-aarch64: 28 - dnf install -y qemu-system-aarch64 gcc-aarch64-linux-gnu 29 - ./configure --arch=aarch64 --cross-prefix=aarch64-linux-gnu- 30 - make -j2 31 - ACCEL=tcg MAX_SMP=8 ./run_tests.sh 33 debug-bp [all …]
|
H A D | .travis.yml | 11 - arch: ppc64le 13 apt_packages: clang qemu-system-ppc 15 - CONFIG="--arch=ppc64 --endian=little --cc=clang --cflags=-no-integrated-as" 16 - TESTS="emulator rtas-get-time-of-day rtas-get-time-of-day-base 17 rtas-set-time-of-day selftest-setup spapr_hcall" 19 - arch: s390x 22 apt_packages: clang-11 qemu-system-s390x 24 - CONFIG="--arch=s390x --cc=clang-11 --cflags=-no-integrated-as" 25 - TESTS="" 28 - mkdir -p build && cd build [all …]
|
H A D | Makefile | 4 $(error run ./configure first. See ./configure -h) 14 libdirs-get = $(shell [ -d "lib/$(1)" ] && echo "lib/$(1) lib/$(1)/asm") 15 ARCH_LIBDIRS := $(call libdirs-get,$(ARCH_LIBDIR)) $(call libdirs-get,$(TEST_DIR)) 18 DESTDIR := $(PREFIX)/share/kvm-unit-tests/ 22 # cc-option 23 # Usage: OP_CFLAGS+=$(call cc-option, -falign-functions=0, -malign-functions=0) 24 cc-option = $(shell if $(CC) $(CFLAGS) -Werror $(1) -S -o /dev/null -xc /dev/null \ 46 EFI_CFLAGS := -DCONFIG_EFI -DCONFIG_RELOC 48 # - GNU-EFI/Makefile.defaults 49 # - GNU-EFI/apps/Makefile [all …]
|
H A D | README.macOS.md | 1 # kvm-unit-tests on macOS 11 $ brew install gnu-getopt 14 A cross-compiler with ELF support is required to build kvm-unit-tests on macOS. 16 ### Pre-built cross-compiler 18 Binary packages of ELF cross-compilers for i386 and x86_64 target can be 21 $ brew install i686-elf-gcc 22 $ brew install x86_64-elf-gcc 27 export PATH="/usr/local/opt/gnu-getopt/bin:$PATH" 30 Then, 32-bit x86 tests can be built like that: 33 --arch=i386 \ [all …]
|
H A D | configure | 3 if [ -z "${BASH_VERSINFO[0]}" ] || [ "${BASH_VERSINFO[0]}" -lt 4 ] ; then 4 echo "Error: Bash version 4 or newer is required for the kvm-unit-tests" 15 echo "cortex-a15" 18 echo "cortex-a57" 33 echo "cortex-a15" 51 arch=$(uname -m | sed -e 's/i.86/i386/;s/arm64/aarch64/;s/arm.*/arm/;s/ppc64.*/ppc64/') 72 # Enable -Werror by default for git repositories only (i.e. developer builds) 73 if [ -e "$srcdir"/.git ]; then 74 werror=-Werror 81 [ -z "$processor" ] && processor=$(get_default_processor $arch) [all …]
|
H A D | run_tests.sh | 7 if [ ! -f config.mak ]; then 8 echo "run ./configure && make first. See ./configure -h" 18 Usage: $0 [-h] [-v] [-a] [-g group] [-j NUM-TASKS] [-t] [-l] 20 -h, --help Output this help text 21 -v, --verbose Enables verbose mode 22 -a, --all Run all tests, including those flagged as 'nodefault' 24 -g, --group Only execute tests in the given group 25 -j, --parallel Execute tests in parallel 26 -t, --tap13 Output test results in TAP format 27 -l, --list Only output all tests list [all …]
|
H A D | MAINTAINERS | 19 W: Web-page with status/info 55 ------------------------------ 63 T: https://gitlab.com/kvm-unit-tests/kvm-unit-tests.git 75 --------------------------- 86 T: https://gitlab.com/jones-drew/kvm-unit-tests.git 92 L: linuxppc-dev@lists.ozlabs.org 100 L: kvm-riscv@lists.infradead.org 103 T: https://gitlab.com/jones-drew/kvm-unit-tests.git 112 L: linux-s390@vger.kernel.org 122 T: https://gitlab.com/bonzini/kvm-unit-tests.git
|
/kvm-unit-tests/riscv/ |
H A D | flat.lds | 7 * +----------------------+ <-- top of physical memory 11 * +----------------------+ <-- top of initrd 13 * +----------------------+ <-- top of FDT 15 * +----------------------+ <-- top of cpu0's stack 17 * +----------------------+ <-- top of text/data/bss sections 20 * +----------------------+ <-- load address 22 * +----------------------+ <-- physical address 0x0 65 PROVIDE(stackptr = . - 16);
|
H A D | Makefile | 20 $(TEST_DIR)/sbi-deps += $(TEST_DIR)/sbi-asm.o 21 $(TEST_DIR)/sbi-deps += $(TEST_DIR)/sbi-fwft.o 22 $(TEST_DIR)/sbi-deps += $(TEST_DIR)/sbi-sse.o 24 all_deps += $($(TEST_DIR)/sbi-deps) 26 # When built for EFI sieve needs extra memory, run with e.g. '-m 256' on QEMU 36 cflatobjs += lib/on-cpus.o 50 cflatobjs += lib/riscv/sbi-sse-asm.o 69 $(if $(shell ! $(READELF) -rW $(1) >&/dev/null && echo "nok"), 70 $(error $(shell $(READELF) -rW $(1) 2>&1))) 71 $(if $(shell $(READELF) -rW $(1) | grep R_ | grep -v R_RISCV_RELATIVE), [all …]
|
/kvm-unit-tests/s390x/ |
H A D | unittests.cfg | 9 [selftest-setup] 13 extra_params = -append 'test 123' 15 [selftest-migration] 16 file = selftest-migration.elf 19 # https://lore.kernel.org/qemu-devel/20240219061731.232570-1-npiggin@gmail.com/ 22 [selftest-migration-skip] 23 file = selftest-migration.elf 25 extra_params = -append "skip" 27 # This fails due to a QEMU TCG bug so KVM-only until QEMU is fixed upstream 28 [migration-memory] [all …]
|
H A D | Makefile | 2 tests += $(TEST_DIR)/selftest-migration.elf 3 tests += $(TEST_DIR)/memory-verify.elf 25 tests += $(TEST_DIR)/uv-guest.elf 28 tests += $(TEST_DIR)/uv-host.elf 30 tests += $(TEST_DIR)/mvpg-sie.elf 31 tests += $(TEST_DIR)/spec_ex-sie.elf 35 tests += $(TEST_DIR)/adtl-status.elf 37 tests += $(TEST_DIR)/pv-attest.elf 38 tests += $(TEST_DIR)/migration-cmm.elf 39 tests += $(TEST_DIR)/migration-skey.elf [all …]
|
/kvm-unit-tests/arm/ |
H A D | flat.lds | 7 * +----------------------+ <-- top of physical memory 11 * +----------------------+ <-- top of initrd 13 * +----------------------+ <-- top of FDT 15 * +----------------------+ <-- top of cpu0's stack 17 * +----------------------+ <-- top of text/data/bss sections 20 * +----------------------+ <-- load address 22 * +----------------------+ <-- physical address 0x0 65 PROVIDE(stackptr = . - 16);
|
H A D | unittests.cfg | 12 # that the configured amount of memory (-m <MB>) are correctly setup 15 [selftest-setup] 18 extra_params = -m 256 -append 'setup smp=2 mem=256' 22 [selftest-vectors-kernel] 24 extra_params = -append 'vectors-kernel' 28 [selftest-vectors-user] 30 extra_params = -append 'vectors-user' 34 [selftest-smp] 37 extra_params = -append 'smp' 41 [pci-test] [all …]
|
H A D | Makefile.common | 7 tests-common = $(TEST_DIR)/selftest.$(exe) 8 tests-common += $(TEST_DIR)/spinlock-test.$(exe) 9 tests-common += $(TEST_DIR)/pci-test.$(exe) 10 tests-common += $(TEST_DIR)/pmu.$(exe) 11 tests-common += $(TEST_DIR)/gic.$(exe) 12 tests-common += $(TEST_DIR)/psci.$(exe) 13 tests-common += $(TEST_DIR)/sieve.$(exe) 14 tests-common += $(TEST_DIR)/pl031.$(exe) 15 tests-common += $(TEST_DIR)/dummy.$(exe) 17 tests-all = $(tests-common) $(tests) [all …]
|
/kvm-unit-tests/lib/powerpc/ |
H A D | setup.c | 5 * (nr_cpus_present), how much memory they have (PHYSICAL_END - PHYSICAL_START), 33 u32 cpu_to_hwid[NR_CPUS] = { [0 ... NR_CPUS-1] = (~0U) }; 58 "ibm,ppc-interrupt-server#s", &len); in cpu_set() 62 threads = (u32 *)prop->data; /* Array of valid ids */ in cpu_set() 81 "i-cache-line-size", NULL); in cpu_set() 83 data = (u32 *)prop->data; in cpu_set() 84 params->icache_bytes = fdt32_to_cpu(*data); in cpu_set() 87 "d-cache-line-size", NULL); in cpu_set() 89 data = (u32 *)prop->data; in cpu_set() 90 params->dcache_bytes = fdt32_to_cpu(*data); in cpu_set() [all …]
|
/kvm-unit-tests/x86/ |
H A D | unittests.cfg | 10 [apic-split] 13 extra_params = -cpu qemu64,+x2apic,+tsc-deadline -machine kernel_irqchip=split 17 [ioapic-split] 19 extra_params = -cpu qemu64 -machine kernel_irqchip=split 26 extra_params = -cpu qemu64,+x2apic,+tsc-deadline 36 extra_params = -cpu qemu64,-x2apic,+tsc-deadline -machine pit=off 44 extra_params = -cpu qemu64,+x2apic 61 extra_params = -append 'cpuid' 66 extra_params = -append 'vmcall' 71 extra_params = -append 'mov_from_cr8' [all …]
|
/kvm-unit-tests/scripts/ |
H A D | arch-run.bash | 6 # -------------------- 7 # 0 - Unexpected exit from QEMU (possible signal), or the unittest did 8 # not use debug-exit 9 # 1 - most likely unittest succeeded, or QEMU failed 12 # ------------------- 13 # 0 - Everything succeeded 14 # 1 - most likely QEMU failed 17 # ---------------------- 18 # 0 - SUCCESS 19 # 1 - most likely QEMU failed [all …]
|
/kvm-unit-tests/docs/ |
H A D | unittests.txt | 18 Each unit test is defined with a [unit-test-name] line, followed by 32 ---- 40 ---- 46 ------- 53 --- 60 ------------ 61 These are extra parameters supplied to the QEMU process. -append '...' can 65 extra_params = -m 256 -append 'smp=2' 68 ------ 71 Used to group the test cases for the `run_tests.sh -g ...` run group [all …]
|
/kvm-unit-tests/ci/ |
H A D | cirrus-ci-macos-x86-64.yml | 4 image: ghcr.io/cirruslabs/macos-ventura-base:latest 6 - brew update 7 - brew install coreutils bash git gnu-getopt make qemu x86_64-elf-gcc 9 - git clone --depth 100 "@CI_REPOSITORY_URL@" . 10 - git fetch origin "@CI_COMMIT_REF_NAME@" 11 - git reset --hard "@CI_COMMIT_SHA@" 13 - export PATH="/opt/homebrew/opt/gnu-getopt/bin:$PATH" 14 - mkdir build 15 - cd build 16 - ../configure --arch=x86_64 --cross-prefix=x86_64-elf- [all …]
|
H A D | cirrus-ci-macos-i386.yml | 4 image: ghcr.io/cirruslabs/macos-ventura-base:latest 6 - brew update 7 - brew install coreutils bash git gnu-getopt make qemu i686-elf-gcc 9 - git clone --depth 100 "@CI_REPOSITORY_URL@" . 10 - git fetch origin "@CI_COMMIT_REF_NAME@" 11 - git reset --hard "@CI_COMMIT_SHA@" 13 - export PATH="/opt/homebrew/opt/gnu-getopt/bin:$PATH" 14 - mkdir build 15 - cd build 16 - ../configure --arch=i386 --cross-prefix=i686-elf- [all …]
|
H A D | cirrus-ci-fedora.yml | 9 - dnf update -y 10 - dnf install -y diffutils gcc git make qemu-system-x86 12 - git clone --depth 100 "@CI_REPOSITORY_URL@" . 13 - git fetch origin "@CI_COMMIT_REF_NAME@" 14 - git reset --hard "@CI_COMMIT_SHA@" 16 - uname -r 17 - sed -n "/processor.*:.0/,/^$/p" /proc/cpuinfo 18 - mkdir build 19 - cd build 20 - ../configure [all …]
|
/kvm-unit-tests/powerpc/ |
H A D | unittests.cfg | 12 # that the configured amount of memory (-m <MB>) are correctly setup 15 [selftest-setup] 18 extra_params = -m 1g -append 'setup smp=2 mem=1024' 21 [selftest-migration] 22 file = selftest-migration.elf 26 [selftest-migration-skip] 27 file = selftest-migration.elf 30 extra_params = -append "skip" 32 [migration-memory] 33 file = memory-verify.elf [all …]
|
/kvm-unit-tests/s390x/snippets/ |
H A D | Makefile | 2 $(SNIPPET_DIR)/asm/%.o: $(SNIPPET_SRC_DIR)/asm/%.S $(asm-offsets) 3 $(CC) $(CFLAGS) -c -nostdlib -o $@ $< 6 $(SNIPPET_DIR)/c/%.o: $(SNIPPET_SRC_DIR)/c/%.c $(asm-offsets) 7 $(CC) $(CFLAGS) -c -nostdlib -o $@ $< 10 $(CC) $(LDFLAGS) -o $@ -T $(SNIPPET_SRC_DIR)/asm/flat.lds $< 13 …$(OBJCOPY) -O binary -j ".rodata" -j ".lowcore" -j ".text" -j ".data" -j ".bss" --set-section-flag… 14 truncate -s '%4096' $@ 17 $(CC) $(LDFLAGS) -o $@ -T $(SNIPPET_DIR)/c/flat.lds $< $(snippet_lib) $(FLATLIBS) 20 …$(OBJCOPY) -O binary -j ".rodata" -j ".lowcore" -j ".text" -j ".data" -j ".bss" --set-section-flag… 21 truncate -s '%4096' $@ [all …]
|
/kvm-unit-tests/lib/ |
H A D | virtio.c | 11 #include "virtio-mmio.h" 16 vr->num = num; in vring_init() 17 vr->desc = p; in vring_init() 18 vr->avail = p + num*sizeof(struct vring_desc); in vring_init() 19 vr->used = (void *)(((unsigned long)&vr->avail->ring[num] + sizeof(u16) in vring_init() 20 + align-1) & ~(align - 1)); in vring_init() 32 vring_init(&vq->vring, num, pages, vring_align); in vring_init_virtqueue() 33 vq->vq.callback = callback; in vring_init_virtqueue() 34 vq->vq.vdev = vdev; in vring_init_virtqueue() 35 vq->vq.name = name; in vring_init_virtqueue() [all …]
|