From 7b8967679879332dbe5982e55ad70375483fb695 Mon Sep 17 00:00:00 2001 From: David Carlier Date: Sat, 11 Feb 2023 23:12:25 +0000 Subject: [PATCH] prctl SME flags for gnu arm64. --- libc-test/build.rs | 2 ++ src/unix/linux_like/linux/gnu/b64/aarch64/mod.rs | 7 +++++++ 2 files changed, 9 insertions(+) diff --git a/libc-test/build.rs b/libc-test/build.rs index 7ef89cd52e23d..4b1ab9f783318 100644 --- a/libc-test/build.rs +++ b/libc-test/build.rs @@ -3583,6 +3583,8 @@ fn test_linux(target: &str) { // present in recent kernels only "PR_PAC_SET_ENABLED_KEYS" | "PR_PAC_GET_ENABLED_KEYS" => true, + // present in recent kernels only + "PR_SME_SET_VL" | "PR_SME_GET_VL" | "PR_SME_VL_LEN_MAX" | "PR_SME_SET_VL_INHERIT" | "PR_SEM_SET_VL_ONE_EXEC" => true, // Added in Linux 5.14 "FUTEX_LOCK_PI2" => true, diff --git a/src/unix/linux_like/linux/gnu/b64/aarch64/mod.rs b/src/unix/linux_like/linux/gnu/b64/aarch64/mod.rs index a20a1cf688e3c..f46ea941b97a6 100644 --- a/src/unix/linux_like/linux/gnu/b64/aarch64/mod.rs +++ b/src/unix/linux_like/linux/gnu/b64/aarch64/mod.rs @@ -590,6 +590,13 @@ pub const PR_PAC_APDAKEY: ::c_ulong = 1 << 2; pub const PR_PAC_APDBKEY: ::c_ulong = 1 << 3; pub const PR_PAC_APGAKEY: ::c_ulong = 1 << 4; +pub const PR_SME_SET_VL: ::c_int = 63; +pub const PR_SME_GET_VL: ::c_int = 64; +pub const PR_SME_VL_LEN_MAX: ::c_int = 0xffff; + +pub const PR_SME_SET_VL_INHERIT: ::c_ulong = 1 << 17; +pub const PR_SME_SET_VL_ONE_EXEC: ::c_ulong = 1 << 18; + // Syscall table pub const SYS_io_setup: ::c_long = 0; pub const SYS_io_destroy: ::c_long = 1;