/kvm-unit-tests/lib/ |
H A D | devicetree.h | 4 * devicetree builds on libfdt to implement abstractions and accessors 54 * - a positive value on match 55 * - zero on no match 56 * - a negative FDT_ERR_* value on failure 65 * - zero on success 66 * - a negative FDT_ERR_* value on failure 95 * - zero on success 96 * - a negative FDT_ERR_* value on failure 103 * operates on an fdt node instead of a dt_device 112 * - zero on success [all …]
|
/kvm-unit-tests/ |
H A D | LICENSE | 45 software. If the software is modified by someone else and passed on, we 47 that any problems introduced by others will not reflect on the original 65 refers to any such program or work, and a "work based on the Program" 75 is covered only if its contents constitute a work based on the 77 Whether that is true depends on what the Program does. 81 conspicuously and appropriately publish on each copy an appropriate 91 of it, thus forming a work based on the Program, and copy and 111 does not normally print such an announcement, your work based on 120 on the Program, the distribution of the whole must be on the terms of 127 collective works based on the Program. [all …]
|
H A D | README.macOS.md | 1 # kvm-unit-tests on macOS 3 The tests can be used to validate TCG or HVF accel on macOS. 14 A cross-compiler with ELF support is required to build kvm-unit-tests on macOS.
|
/kvm-unit-tests/powerpc/ |
H A D | interrupts.c | 82 /* KVM does not MCE on access outside partition scope */ in test_mce() 83 report_kfail(host_is_kvm, got_interrupt, "MCE on access to invalid real address"); in test_mce() 93 /* KVM does not MCE on access outside partition scope */ in test_mce() 94 report_kfail(host_is_kvm, got_interrupt, "MCE on fetch from invalid real address"); in test_mce() 146 report(got_interrupt, "interrupt on NULL dereference"); in test_dseg_nommu() 171 report(got_interrupt, "dsi on out of range dereference"); in test_mmu() 182 report(got_interrupt, "dseg on out of range dereference"); in test_mmu() 192 report(got_interrupt, "isi on out of range fetch"); in test_mmu() 203 report(got_interrupt, "isi on out of range fetch"); in test_mmu() 239 report(got_interrupt, "interrupt on decrementer underflow"); in test_dec() [all …]
|
H A D | timebase.c | 128 "no interrupt on decrementer positive"); in test_dec() 138 report(got_interrupt, "interrupt on decrementer underflow"); in test_dec() 145 report(got_interrupt, "interrupt on decrementer still underflown"); in test_dec() 163 report(got_interrupt, "interrupt on decrementer write MSB"); in test_dec() 172 report(got_interrupt, "interrupt on decrementer write MSB with irqs on"); in test_dec() 219 report(!got_interrupt, "no interrupt on decrementer positive"); in test_hdec() 231 report(got_interrupt, "interrupt on hdecrementer underflow"); in test_hdec() 238 report(!got_interrupt, "no interrupt on hdecrementer still underflown"); in test_hdec() 246 report(got_interrupt, "no interrupt on hdecrementer underflown write MSB"); in test_hdec() 266 report(got_interrupt, "interrupt on hdecrementer write MSB with irqs on"); in test_hdec()
|
/kvm-unit-tests/riscv/efi/ |
H A D | run | 64 -blockdev node-name=pflash0,driver=file,read-only=on,filename="$EFI_UEFI" \ 65 -drive file.dir="$EFI_CASE_DIR/",file.driver=vvfat,file.rw=on,format=raw,if=virtio \ 80 -blockdev node-name=pflash0,driver=file,read-only=on,filename="$EFI_UEFI" \ 89 -blockdev node-name=pflash0,driver=file,read-only=on,filename="$EFI_UEFI" \ 90 -drive file.dir="$EFI_CASE_DIR/",file.driver=vvfat,file.rw=on,format=raw,if=virtio \ 102 -blockdev node-name=pflash0,driver=file,read-only=on,filename="$EFI_UEFI" \
|
/kvm-unit-tests/lib/powerpc/ |
H A D | smp.c | 194 * Returns: <0 on failure to start stopped cpu 195 * 0 on success 196 * >0 on cpu not in stopped state 250 * Start all stopped threads (vcpus) on cpu_node 259 /* Get the id array of threads on this cpu_node */ in start_core() 280 * Start all stopped cpus on the guest at entry with register 3 set to r3 282 * Returns: TRUE on success 283 * FALSE on failure 311 * Returns: <0 on failure to start stopped cpu 312 * 0 on success [all …]
|
/kvm-unit-tests/lib/s390x/ |
H A D | interrupt.c | 22 * expect_pgm_int - Expect a program interrupt on the current CPU. 33 * expect_ext_int - Expect an external interrupt on the current CPU. 64 * check_pgm_int_code - Check the program interrupt code on the current CPU. 65 * @code: the expected program interrupt code on the current CPU 67 * Check and report if the program interrupt on the current CPU matches the 81 * @f: the cleanup function to be registered on the current CPU 96 * @f: the cleanup function to be registered on the current CPU 144 /* If we have an error on SIE we directly move to sie_exit */ in fixup_pgm_int() 266 printf("Unexpected program interrupt %s: %#x on cpu %d at %#lx, ilen %d\n", in print_pgm_info() 282 * The grs are not linear on the interrupt stack frame. in print_pgm_info() [all …]
|
H A D | snippet.h | 59 * Sets up a snippet guest on top of an existing and initialized SIE 80 * We want to exit on PGM exceptions so we don't need in snippet_init() 87 * Sets up a snippet UV/PV guest on top of an existing and initialized 111 /* Unpack works on guest addresses so we only need off */ in snippet_pv_init()
|
/kvm-unit-tests/lib/libfdt/ |
H A D | fdt_overlay.c | 56 * Negative error code on error 91 /* return on error */ in overlay_get_target() 113 * 0 on success. 114 * Negative error code on error 153 * 0 on success 154 * Negative error code on failure 190 * 0 on success 191 * Negative error code on failure 204 * @tree_node: Node offset of the node to operate on 217 * 0 on success [all …]
|
H A D | libfdt.h | 131 * to work even with unaligned pointers on platforms (such as ARMv5) that don't 318 * 0, on success 343 * a pointer to the string, on success 357 * a pointer to the string, on success 372 * 0 on success or a negative error code on failure 387 * the highest phandle on success 408 * Walks the device tree blob and looks for the highest phandle value. On 413 * Return: 0 on success or a negative error-code on failure 437 * On success, @address and @size will contain the address and size of 442 * 0, on success [all …]
|
/kvm-unit-tests/x86/ |
H A D | msr.c | 63 * and conversely setting those bits on 32-bit CPUs is not allowed. Treat in __test_msr_rw() 93 "Expected success on WRMSR(%s, 0x%llx), got vector %d", in test_wrmsr() 102 "Expected #GP on WRMSR(%s, 0x%llx), got vector %d", in test_wrmsr_fault() 112 "Expected #GP on RDMSR(%s), got vector %d", name, vector); in test_rdmsr_fault() 121 "Expected #GP on emulated WRSMR(%s, 0x%llx), got vector %d", in test_wrmsr_fep_fault() 132 * canonical checks on both Intel and AMD. in test_msr() 185 * except on AMD-based systems with bit 18 set in MSR_K7_HWCR. in test_mce_msrs() 188 * on bare metal). in test_mce_msrs() 196 * The ADDR is a physical address, and all bits are writable on in test_mce_msrs() 198 * enforce checks on bits 63:36 for 32-bit hosts. The behavior in test_mce_msrs() [all …]
|
H A D | eventinj.c | 69 // no task on x86_64, save/restore caller-save regs 142 // save it in RDX while we run on the nested stack 228 /* generate HW exception that will fault on IDT and stack */ in main() 238 /* generate soft exception (BP) that will fault on IDT and stack */ in main() 249 /* generate soft exception (OF) that will fault on IDT */ in main() 259 fault on IDT */ in main() 269 /* generate HW interrupt that will fault on IDT */ in main() 280 /* generate soft interrupt that will fault on IDT and stack */ in main() 290 will fault on IDT access */ in main() 344 /* generate NMI that will fault on IDT */ in main() [all …]
|
H A D | pcid.c | 31 report(passed, "Test on PCID when enabled"); in test_pcid_enabled() 46 report(passed, "Test on PCID when disabled"); in test_pcid_disabled() 92 report(passed, "Test on INVPCID when enabled"); in test_invpcid_enabled() 107 report(passed, "Test on INVPCID when disabled"); in test_invpcid_disabled()
|
H A D | la57.c | 184 /* 57-canonical value will work on CPUs that *support* LA57 */ in test_register() 256 * SYSENTER ESP/EIP MSRs have canonical checks only on Intel, because in __test_canonical_checks() 257 * only on Intel these instructions were extended to 64 bit. in __test_canonical_checks() 260 * on Intel, to support cross-vendor migration. This includes nested in __test_canonical_checks() 263 * Thus, the checks only work when run on bare metal, without forced in __test_canonical_checks() 269 * TODO: Enable testing of SYSENTER MSRs on bare metal. in __test_canonical_checks()
|
/kvm-unit-tests/s390x/ |
H A D | migration-skey.c | 6 * - sequential: set storage keys on some pages, migrates the VM and then 8 * - parallel: start migration and set and check storage keys on some 50 * Set storage key test pattern on pagebuf with a seed for the storage keys. 76 * Verify storage keys on pagebuf. 77 * Storage keys must have been set by set_test_pattern on pagebuf before. 83 * be filled with the details on the first mismatch encountered. 102 * don't rely on it and just clear the bits to avoid compare in verify_test_pattern() 194 * Verification of skeys occurs on the thread. We don't know if we in test_skey_migration_parallel()
|
H A D | macros.S | 15 * Exception handler macro that saves registers on the stack, 36 /* Save registers on the stack (r15), so we can have stacked interrupts. */ 40 /* Store registers r0 to r14 on the stack */ 56 /* Save fp register on stack: offset to SP is multiple of reg number */
|
H A D | firq.c | 22 /* Enable SCLP interrupts on this CPU only. */ in wait_for_sclp_int() 52 * interrupt on CPU #1 while it is in the wait state. in test_wait_state_delivery() 83 * Wait until the interrupt gets delivered on CPU #1, marking the in test_wait_state_delivery()
|
H A D | spec_ex-sie.c | 7 * specification exception interpretation is off/on. 57 report_prefix_push("on"); in test_spec_ex_sie() 61 /* interpretation on -> configuration dependent if initial exception causes in test_spec_ex_sie()
|
/kvm-unit-tests/docs/ |
H A D | unittests.txt | 22 Parameters appear on their own lines under the test name, and have a 37 on the arch. The directory name is not included, only the file name. 42 the test to the specified arch. By default, the test will run on any 48 the test to the specified machine. By default, the test will run on 83 test will run on either accelerator. (Note, the accelerator can be
|
/kvm-unit-tests/lib/arm64/asm/ |
H A D | assembler.h | 3 * Based on the file arch/arm64/include/asm/assembled.h from Linux v5.10, which 4 * in turn is based on arch/arm/include/asm/assembler.h and 19 * raw_dcache_line_size - get the minimum D-cache line size on this CPU
|
/kvm-unit-tests/lib/riscv/asm/ |
H A D | barrier.h | 8 /* These barriers need to enforce ordering on both devices or memory. */ 13 /* These barriers do not need to enforce ordering on devices, just memory. */
|
/kvm-unit-tests/lib/powerpc/asm/ |
H A D | processor.h | 82 * This returns true on PowerNV / OPAL machines which run in hypervisor 83 * mode. False on pseries / PAPR machines that run in guest mode. 91 * This returns true on pseries / PAPR / KVM machines which run under a
|
/kvm-unit-tests/lib/s390x/asm/ |
H A D | interrupt.h | 32 /* suppression on protection */ 38 /* enhanced suppression on protection 2 */ 97 * on the current CPU.
|
/kvm-unit-tests/lib/arm/asm/ |
H A D | assembler.h | 3 * Based on several files from Linux version v5.10: arch/arm/mm/proc-macros.S, 16 * on ARMv7.
|