Browse Source

seccomp: add futex_wake syscall (kernel v6.7, libseccomp v2.5.5)

Add this syscall to match the profile in containerd

containerd: https://github.com/containerd/containerd/commit/a6e52c74fa043a63d7dae4ac6998215f6c1bb6ac
libseccomp: https://github.com/seccomp/libseccomp/commit/53267af3fb56eed93a50b8ef92f41825c97a7813
kernel: https://github.com/torvalds/linux/commit/9f6c532f59b20580acf8ede9409c9b8dce6e74e1

    futex: Add sys_futex_wake()

    To complement sys_futex_waitv() add sys_futex_wake(). This syscall
    implements what was previously known as FUTEX_WAKE_BITSET except it
    uses 'unsigned long' for the bitmask and takes FUTEX2 flags.

    The 'unsigned long' allows FUTEX2_SIZE_U64 on 64bit platforms.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit d69729e0533e63a436822949b472e3fc8f7d6c40)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
Sebastiaan van Stijn 1 year ago
parent
commit
ed7c26339e
2 changed files with 2 additions and 0 deletions
  1. 1 0
      profiles/seccomp/default.json
  2. 1 0
      profiles/seccomp/default_linux.go

+ 1 - 0
profiles/seccomp/default.json

@@ -136,6 +136,7 @@
 				"futex_time64",
 				"futex_time64",
 				"futex_wait",
 				"futex_wait",
 				"futex_waitv",
 				"futex_waitv",
+				"futex_wake",
 				"futimesat",
 				"futimesat",
 				"getcpu",
 				"getcpu",
 				"getcwd",
 				"getcwd",

+ 1 - 0
profiles/seccomp/default_linux.go

@@ -128,6 +128,7 @@ func DefaultProfile() *Seccomp {
 					"futex_time64",
 					"futex_time64",
 					"futex_wait", // kernel v6.7, libseccomp v2.5.5
 					"futex_wait", // kernel v6.7, libseccomp v2.5.5
 					"futex_waitv",
 					"futex_waitv",
+					"futex_wake", // kernel v6.7, libseccomp v2.5.5
 					"futimesat",
 					"futimesat",
 					"getcpu",
 					"getcpu",
 					"getcwd",
 					"getcwd",