diff options
author | gVisor bot <gvisor-bot@google.com> | 2021-01-07 20:48:58 -0800 |
---|---|---|
committer | gVisor bot <gvisor-bot@google.com> | 2021-01-07 20:48:58 -0800 |
commit | bf343394d4988c01461b59b6b05bc508f26855eb (patch) | |
tree | 586ba320187829bbcc66382ee87c0f2f5502894a /pkg/sentry/syscalls/linux/sys_sem.go | |
parent | 77b340ce82230e4e0bded01f43232c708328cd7e (diff) | |
parent | 8de562b79942f5383ffbe67873df07509ca7fcb0 (diff) |
Merge pull request #5207 from avagin:arm64-cross
PiperOrigin-RevId: 350691246
Diffstat (limited to 'pkg/sentry/syscalls/linux/sys_sem.go')
-rw-r--r-- | pkg/sentry/syscalls/linux/sys_sem.go | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/pkg/sentry/syscalls/linux/sys_sem.go b/pkg/sentry/syscalls/linux/sys_sem.go index 1166cd7bb..d324461a3 100644 --- a/pkg/sentry/syscalls/linux/sys_sem.go +++ b/pkg/sentry/syscalls/linux/sys_sem.go @@ -48,6 +48,15 @@ func Semget(t *kernel.Task, args arch.SyscallArguments) (uintptr, *kernel.Syscal return uintptr(set.ID), nil, nil } +// Semtimedop handles: semop(int semid, struct sembuf *sops, size_t nsops, const struct timespec *timeout) +func Semtimedop(t *kernel.Task, args arch.SyscallArguments) (uintptr, *kernel.SyscallControl, error) { + // TODO(gvisor.dev/issue/137): A non-zero timeout isn't supported. + if args[3].Pointer() != 0 { + return 0, nil, syserror.ENOSYS + } + return Semop(t, args) +} + // Semop handles: semop(int semid, struct sembuf *sops, size_t nsops) func Semop(t *kernel.Task, args arch.SyscallArguments) (uintptr, *kernel.SyscallControl, error) { id := args[0].Int() |