linux_machdep.c (d42a83b1a914e4c0db0a9070076883c1d2de9f3d) linux_machdep.c (3b57ddb029daf225a8385dade491019269da82e8)
1/*-
2 * SPDX-License-Identifier: BSD-2-Clause-FreeBSD
3 *
4 * Copyright (c) 2018 Turing Robotic Industries Inc.
5 * Copyright (c) 2000 Marcel Moolenaar
6 *
7 * Redistribution and use in source and binary forms, with or without
8 * modification, are permitted provided that the following conditions

--- 38 unchanged lines hidden (view full) ---

47#include <compat/linux/linux_misc.h>
48#include <compat/linux/linux_mmap.h>
49#include <compat/linux/linux_util.h>
50
51/* DTrace init */
52LIN_SDT_PROVIDER_DECLARE(LINUX_DTRACE);
53
54/* DTrace probes */
1/*-
2 * SPDX-License-Identifier: BSD-2-Clause-FreeBSD
3 *
4 * Copyright (c) 2018 Turing Robotic Industries Inc.
5 * Copyright (c) 2000 Marcel Moolenaar
6 *
7 * Redistribution and use in source and binary forms, with or without
8 * modification, are permitted provided that the following conditions

--- 38 unchanged lines hidden (view full) ---

47#include <compat/linux/linux_misc.h>
48#include <compat/linux/linux_mmap.h>
49#include <compat/linux/linux_util.h>
50
51/* DTrace init */
52LIN_SDT_PROVIDER_DECLARE(LINUX_DTRACE);
53
54/* DTrace probes */
55LIN_SDT_PROBE_DEFINE0(machdep, linux_set_upcall_kse, todo);
55LIN_SDT_PROBE_DEFINE0(machdep, linux_set_upcall, todo);
56LIN_SDT_PROBE_DEFINE0(machdep, linux_mmap2, todo);
57LIN_SDT_PROBE_DEFINE0(machdep, linux_rt_sigsuspend, todo);
58LIN_SDT_PROBE_DEFINE0(machdep, linux_sigaltstack, todo);
59LIN_SDT_PROBE_DEFINE0(machdep, linux_set_cloned_tls, todo);
60
61/*
62 * LINUXTODO: deduplicate; linux_execve is common across archs, except that on
63 * amd64 compat linuxulator it calls freebsd32_exec_copyin_args.

--- 15 unchanged lines hidden (view full) ---

79 LFREEPATH(path);
80 }
81 if (error == 0)
82 error = linux_common_execve(td, &eargs);
83 AUDIT_SYSCALL_EXIT(error == EJUSTRETURN ? 0 : error, td);
84 return (error);
85}
86
56LIN_SDT_PROBE_DEFINE0(machdep, linux_mmap2, todo);
57LIN_SDT_PROBE_DEFINE0(machdep, linux_rt_sigsuspend, todo);
58LIN_SDT_PROBE_DEFINE0(machdep, linux_sigaltstack, todo);
59LIN_SDT_PROBE_DEFINE0(machdep, linux_set_cloned_tls, todo);
60
61/*
62 * LINUXTODO: deduplicate; linux_execve is common across archs, except that on
63 * amd64 compat linuxulator it calls freebsd32_exec_copyin_args.

--- 15 unchanged lines hidden (view full) ---

79 LFREEPATH(path);
80 }
81 if (error == 0)
82 error = linux_common_execve(td, &eargs);
83 AUDIT_SYSCALL_EXIT(error == EJUSTRETURN ? 0 : error, td);
84 return (error);
85}
86
87/* LINUXTODO: implement (or deduplicate) arm64 linux_set_upcall_kse */
87/* LINUXTODO: implement (or deduplicate) arm64 linux_set_upcall */
88int
88int
89linux_set_upcall_kse(struct thread *td, register_t stack)
89linux_set_upcall(struct thread *td, register_t stack)
90{
91
90{
91
92 LIN_SDT_PROBE0(machdep, linux_set_upcall_kse, todo);
92 LIN_SDT_PROBE0(machdep, linux_set_upcall, todo);
93 return (EDOOFUS);
94}
95
96/* LINUXTODO: deduplicate arm64 linux_mmap2 */
97int
98linux_mmap2(struct thread *td, struct linux_mmap2_args *uap)
99{
100

--- 46 unchanged lines hidden ---
93 return (EDOOFUS);
94}
95
96/* LINUXTODO: deduplicate arm64 linux_mmap2 */
97int
98linux_mmap2(struct thread *td, struct linux_mmap2_args *uap)
99{
100

--- 46 unchanged lines hidden ---