On Mon, Jun 24, 2019 at 04:33:00PM +0200, Andrey Konovalov wrote:
--- /dev/null +++ b/tools/testing/selftests/arm64/tags_test.c @@ -0,0 +1,29 @@ +// SPDX-License-Identifier: GPL-2.0
+#include <stdio.h> +#include <stdlib.h> +#include <unistd.h> +#include <stdint.h> +#include <sys/prctl.h> +#include <sys/utsname.h>
+#define SHIFT_TAG(tag) ((uint64_t)(tag) << 56) +#define SET_TAG(ptr, tag) (((uint64_t)(ptr) & ~SHIFT_TAG(0xff)) | \
SHIFT_TAG(tag))
+int main(void) +{
- static int tbi_enabled = 0;
- struct utsname *ptr, *tagged_ptr;
- int err;
- if (prctl(PR_SET_TAGGED_ADDR_CTRL, PR_TAGGED_ADDR_ENABLE, 0, 0, 0) == 0)
tbi_enabled = 1;
Nitpick: with the latest prctl() patch, you can skip the last three arguments as they are ignored.
Either way:
Reviewed-by: Catalin Marinas catalin.marinas@arm.com