diff options
| author | Alexey Kardashevskiy <aik@linux.ibm.com> | 2021-07-13 16:13:04 +1000 |
|---|---|---|
| committer | Dmitry Vyukov <dvyukov@google.com> | 2021-07-19 11:29:36 +0200 |
| commit | a0fbb62d9577118fda219fbd475f5ea3d08ea303 (patch) | |
| tree | 1ceae9cf9bef552ccbca006cd547e2d889868b15 /executor/test_linux.h | |
| parent | e00224d9ff393517c827e5e827f7638a9eaff812 (diff) | |
executor/common_kvm_ppc64: run with enabled MMU
This sets up a page table to map the text in order to exercise
more code paths in the KVM.
This defines flags to control the MMU state. When enabled, this
creates a simple page table at the 64K offset and maps all the RAM.
The fuzzer code is placed right after the table.
The flags are:
IR - enables MMU for instruction fetches
DR - enables MMU for data loads/stores
PR - "problem state", i.e. userspace (implies DR and IR)
PID1 - initializes a process table for PID>0 (PID#0 is used by the VM OS
normally)
This adds a simple "syz_kvm_setup_cpu_ppc64" syz-test with MSR=IR|DR|LE
which is a typical Linux kernel mode.
Signed-off-by: Alexey Kardashevskiy <aik@linux.ibm.com>
Diffstat (limited to 'executor/test_linux.h')
| -rw-r--r-- | executor/test_linux.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/executor/test_linux.h b/executor/test_linux.h index 84efbdba0..f5630edbf 100644 --- a/executor/test_linux.h +++ b/executor/test_linux.h @@ -174,7 +174,7 @@ static int test_kvm() return res; } #elif GOARCH_ppc64le - for (unsigned i = 0; i < (1 << 1); ++i) { + for (unsigned i = 0; i < (1 << 5); ++i) { res = test_one(8, kvm_ppc64_mr, sizeof(kvm_ppc64_mr) - 1, i, KVM_EXIT_DEBUG, true); if (res) return res; |
