diff options
author | Stephen Boyd <swboyd@chromium.org> | 2019-12-02 10:28:28 -0800 |
---|---|---|
committer | Commit Bot <commit-bot@chromium.org> | 2019-12-06 19:06:34 +0000 |
commit | cef1079c2058457bc9485fc0f41f5fe1d592e715 (patch) | |
tree | bf2425953d87e4253d85fedf6c1cf526668ee0ee /seccomp/aarch64/gpu_device.policy | |
parent | 92a2c49349404b4ba90941e18e8a828beca52390 (diff) | |
download | crosvm-cef1079c2058457bc9485fc0f41f5fe1d592e715.tar crosvm-cef1079c2058457bc9485fc0f41f5fe1d592e715.tar.gz crosvm-cef1079c2058457bc9485fc0f41f5fe1d592e715.tar.bz2 crosvm-cef1079c2058457bc9485fc0f41f5fe1d592e715.tar.lz crosvm-cef1079c2058457bc9485fc0f41f5fe1d592e715.tar.xz crosvm-cef1079c2058457bc9485fc0f41f5fe1d592e715.tar.zst crosvm-cef1079c2058457bc9485fc0f41f5fe1d592e715.zip |
seccomp: Add initial arm64 seccomp filters
BUG=chromium:1029666 TEST=tast run crostini.LaunchTerminal.download_buster Change-Id: I8fa7dc9df4d5f0144aed80fcd60307036fc7e16d Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/1946765 Reviewed-by: Stephen Barber <smbarber@chromium.org> Tested-by: kokoro <noreply+kokoro@google.com> Tested-by: Stephen Barber <smbarber@chromium.org> Commit-Queue: Stephen Barber <smbarber@chromium.org>
Diffstat (limited to 'seccomp/aarch64/gpu_device.policy')
-rw-r--r-- | seccomp/aarch64/gpu_device.policy | 72 |
1 files changed, 72 insertions, 0 deletions
diff --git a/seccomp/aarch64/gpu_device.policy b/seccomp/aarch64/gpu_device.policy new file mode 100644 index 0000000..1daedc2 --- /dev/null +++ b/seccomp/aarch64/gpu_device.policy @@ -0,0 +1,72 @@ +# Copyright 2019 The Chromium OS Authors. All rights reserved. +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. + +# Rules from common_device.policy with some rules removed because they block certain flags needed +# for gpu. +brk: 1 +clone: arg0 & CLONE_THREAD +close: 1 +dup3: 1 +dup: 1 +epoll_create1: 1 +epoll_ctl: 1 +epoll_wait: 1 +eventfd2: 1 +exit: 1 +exit_group: 1 +futex: 1 +getpid: 1 +gettimeofday: 1 +kill: 1 +madvise: arg2 == MADV_DONTNEED || arg2 == MADV_DONTDUMP || arg2 == MADV_REMOVE +mremap: 1 +munmap: 1 +nanosleep: 1 +open: return ENOENT +pipe2: 1 +ppoll: 1 +prctl: arg0 == PR_SET_NAME +read: 1 +readv: 1 +recv: 1 +recvfrom: 1 +recvmsg: 1 +restart_syscall: 1 +rt_sigaction: 1 +rt_sigprocmask: 1 +rt_sigreturn: 1 +sched_getaffinity: 1 +sendmsg: 1 +sendto: 1 +set_robust_list: 1 +sigaltstack: 1 +write: 1 +writev: 1 + +## Rules specific to gpu +connect: 1 +getrandom: 1 +socket: arg0 == 1 && arg1 == 0x80001 && arg2 == 0 +lseek: 1 +ftruncate: 1 +statx: 1 +fstat: 1 +getdents64: 1 + +# 0x6400 == DRM_IOCTL_BASE, 0x8000 = KBASE_IOCTL_TYPE (mali) +ioctl: arg1 & 0x6400 || arg1 & 0x8000 + +## mmap/mprotect/openat differ from the common_device.policy +mmap: arg2 == PROT_READ|PROT_WRITE || arg2 == PROT_NONE || arg2 == PROT_READ|PROT_EXEC || arg2 == PROT_WRITE || arg2 == PROT_READ +mprotect: arg2 == PROT_READ|PROT_WRITE || arg2 == PROT_NONE || arg2 == PROT_READ +openat: 1 + +## Rules specific to pvr +geteuid: 1 +getuid: 1 +readlinkat: 1 +gettid: 1 +fcntl: 1 +tgkill: 1 +clock_gettime: 1 |