aboutsummaryrefslogtreecommitdiffstats
path: root/pkg/vminfo/linux_syscalls.go
diff options
context:
space:
mode:
authorAlexander Potapenko <glider@google.com>2024-08-08 17:12:18 +0200
committerAlexander Potapenko <glider@google.com>2024-09-03 12:16:36 +0000
commit89418520e59f2957dbb192c9db4eb45f108459a4 (patch)
tree1704e0524bcf12e712d793d6624a497864eaecdc /pkg/vminfo/linux_syscalls.go
parentbe562dffcc62a7644ab55833c9650774fb462ebe (diff)
executor: pkg/vminfo: sys/linux: define syz_kvm_vgic_v3_setup
The new pseudo-syscall sets up VGICv3 IRQ controller on the host. That still requires guest setup code, which will be submitted separately.
Diffstat (limited to 'pkg/vminfo/linux_syscalls.go')
-rw-r--r--pkg/vminfo/linux_syscalls.go8
1 files changed, 8 insertions, 0 deletions
diff --git a/pkg/vminfo/linux_syscalls.go b/pkg/vminfo/linux_syscalls.go
index 3f675c6a9..2b02ad7f9 100644
--- a/pkg/vminfo/linux_syscalls.go
+++ b/pkg/vminfo/linux_syscalls.go
@@ -80,6 +80,7 @@ var linuxSyscallChecks = map[string]func(*checkContext, *prog.Syscall) string{
"syz_usb_ep_write": linuxCheckUSBEmulation,
"syz_usb_ep_read": linuxCheckUSBEmulation,
"syz_kvm_setup_cpu": linuxSyzKvmSetupCPUSupported,
+ "syz_kvm_vgic_v3_setup": linuxSyzKvmVgicV3SetupSupported,
"syz_emit_vhci": linuxVhciInjectionSupported,
"syz_init_net_socket": linuxSyzInitNetSocketSupported,
"syz_genetlink_get_family_id": linuxSyzGenetlinkGetFamilyIDSupported,
@@ -184,6 +185,13 @@ func linuxSyzKvmSetupCPUSupported(ctx *checkContext, call *prog.Syscall) string
return "unsupported arch"
}
+func linuxSyzKvmVgicV3SetupSupported(ctx *checkContext, call *prog.Syscall) string {
+ if ctx.target.Arch == targets.ARM64 {
+ return ""
+ }
+ return "unsupported arch"
+}
+
func linuxSupportedMount(ctx *checkContext, call *prog.Syscall) string {
return linuxSupportedFilesystem(ctx, call, 2)
}