Module Name: src Committed By: kamil Date: Sat May 25 03:22:53 UTC 2019
Modified Files: src/tests/lib/libc/sys: t_ptrace_wait.h Log Message: Add get_user_va0_disable() in t_ptrace_wait.h Add a utility function to check vm.user_va0_disable. To generate a diff of this commit: cvs rdiff -u -r1.16 -r1.17 src/tests/lib/libc/sys/t_ptrace_wait.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/tests/lib/libc/sys/t_ptrace_wait.h diff -u src/tests/lib/libc/sys/t_ptrace_wait.h:1.16 src/tests/lib/libc/sys/t_ptrace_wait.h:1.17 --- src/tests/lib/libc/sys/t_ptrace_wait.h:1.16 Thu Apr 25 19:15:23 2019 +++ src/tests/lib/libc/sys/t_ptrace_wait.h Sat May 25 03:22:53 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: t_ptrace_wait.h,v 1.16 2019/04/25 19:15:23 kamil Exp $ */ +/* $NetBSD: t_ptrace_wait.h,v 1.17 2019/05/25 03:22:53 kamil Exp $ */ /*- * Copyright (c) 2016, 2017, 2018, 2019 The NetBSD Foundation, Inc. @@ -553,6 +553,26 @@ can_we_set_dbregs(void) #endif static bool __used +get_user_va0_disable(void) +{ + static int user_va0_disable = -1; + size_t user_va0_disable_len = sizeof(user_va0_disable); + + if (user_va0_disable == -1) { + if (sysctlbyname("vm.user_va0_disable", + &user_va0_disable, &user_va0_disable_len, NULL, 0) + == -1) { + return true; + } + } + + if (user_va0_disable > 0) + return true; + else + return false; +} + +static bool __used can_we_write_to_text(pid_t pid) { int mib[3];