aboutsummaryrefslogtreecommitdiffstats
path: root/executor
diff options
context:
space:
mode:
authorAleksandr Nogikh <nogikh@google.com>2021-09-13 13:30:11 +0000
committerAleksandr Nogikh <wp32pw@gmail.com>2021-09-13 18:50:12 +0200
commit58d094047fb1e61df8402ef854bd3bfb97826d6f (patch)
tree9ec3896b15f66f9d12d9bdbe20966f9d40bcb41f /executor
parent3ce60af85b4644bd7f2d2ef01a7d2b9a41545b76 (diff)
sys: skip kvm const extraction for non i386/amd64
It is impossible to compile a number of definitions in include/uapi/linux/kvm.h for other platforms, which leads to syz-extract failing to update constants. Skip processing of this file for all arches except i386 and amd64. This is a hacky and (hopefully) temporary solution until #2754 is implemented.
Diffstat (limited to 'executor')
-rw-r--r--executor/common_kvm_amd64.h2
-rw-r--r--executor/common_kvm_arm64.h2
-rw-r--r--executor/common_kvm_ppc64.h2
-rw-r--r--executor/common_linux.h2
4 files changed, 4 insertions, 4 deletions
diff --git a/executor/common_kvm_amd64.h b/executor/common_kvm_amd64.h
index c327ef4b8..64987d19d 100644
--- a/executor/common_kvm_amd64.h
+++ b/executor/common_kvm_amd64.h
@@ -267,7 +267,7 @@ struct kvm_opt {
#define KVM_SETUP_VM (1 << 6)
// syz_kvm_setup_cpu(fd fd_kvmvm, cpufd fd_kvmcpu, usermem vma[24], text ptr[in, array[kvm_text, 1]], ntext len[text], flags flags[kvm_setup_flags], opts ptr[in, array[kvm_setup_opt, 0:2]], nopt len[opts])
-static long syz_kvm_setup_cpu(volatile long a0, volatile long a1, volatile long a2, volatile long a3, volatile long a4, volatile long a5, volatile long a6, volatile long a7)
+static volatile long syz_kvm_setup_cpu(volatile long a0, volatile long a1, volatile long a2, volatile long a3, volatile long a4, volatile long a5, volatile long a6, volatile long a7)
{
const int vmfd = a0;
const int cpufd = a1;
diff --git a/executor/common_kvm_arm64.h b/executor/common_kvm_arm64.h
index 36c95cba8..201fa87e9 100644
--- a/executor/common_kvm_arm64.h
+++ b/executor/common_kvm_arm64.h
@@ -17,7 +17,7 @@ struct kvm_opt {
};
// syz_kvm_setup_cpu(fd fd_kvmvm, cpufd fd_kvmcpu, usermem vma[24], text ptr[in, array[kvm_text, 1]], ntext len[text], flags flags[kvm_setup_flags], opts ptr[in, array[kvm_setup_opt, 0:2]], nopt len[opts])
-static long syz_kvm_setup_cpu(volatile long a0, volatile long a1, volatile long a2, volatile long a3, volatile long a4, volatile long a5, volatile long a6, volatile long a7)
+static volatile long syz_kvm_setup_cpu(volatile long a0, volatile long a1, volatile long a2, volatile long a3, volatile long a4, volatile long a5, volatile long a6, volatile long a7)
{
const int vmfd = a0;
const int cpufd = a1;
diff --git a/executor/common_kvm_ppc64.h b/executor/common_kvm_ppc64.h
index 287d7a7b3..283824b43 100644
--- a/executor/common_kvm_ppc64.h
+++ b/executor/common_kvm_ppc64.h
@@ -147,7 +147,7 @@ static void dump_text(const char* mem, unsigned start, unsigned cw, uint32 debug
#define KVM_SETUP_PPC64_PID1 (1 << 4) // Set PID=1 i.e. not kernel's PID
// syz_kvm_setup_cpu(fd fd_kvmvm, cpufd fd_kvmcpu, usermem vma[24], text ptr[in, array[kvm_text, 1]], ntext len[text], flags flags[kvm_setup_flags_ppc64], opts ptr[in, array[kvm_setup_opt, 0:2]], nopt len[opts])
-static long syz_kvm_setup_cpu(volatile long a0, volatile long a1, volatile long a2, volatile long a3, volatile long a4, volatile long a5, volatile long a6, volatile long a7)
+static volatile long syz_kvm_setup_cpu(volatile long a0, volatile long a1, volatile long a2, volatile long a3, volatile long a4, volatile long a5, volatile long a6, volatile long a7)
{
const int vmfd = a0;
const int cpufd = a1;
diff --git a/executor/common_linux.h b/executor/common_linux.h
index 1a25748fc..215ef1a8a 100644
--- a/executor/common_linux.h
+++ b/executor/common_linux.h
@@ -2961,7 +2961,7 @@ error_clear_loop:
#elif GOARCH_ppc64 || GOARCH_ppc64le
#include "common_kvm_ppc64.h"
#elif !GOARCH_arm
-static long syz_kvm_setup_cpu(volatile long a0, volatile long a1, volatile long a2, volatile long a3, volatile long a4, volatile long a5, volatile long a6, volatile long a7)
+static volatile long syz_kvm_setup_cpu(volatile long a0, volatile long a1, volatile long a2, volatile long a3, volatile long a4, volatile long a5, volatile long a6, volatile long a7)
{
return 0;
}