Enable dtrace support for mips64 and the ERL kernel config
Turn on the required options in the ERL config file, and ensure that the fbt module is listed as a dependency for mips in the modules/dtrace/dtraceall/dtraceall.c file. PR: 220346 Reviewed by: gnn, markj MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D12227
This commit is contained in:
parent
1b8f13eb45
commit
9290d460ca
@ -37,8 +37,6 @@
|
||||
#include <machine/cpuregs.h>
|
||||
#include <machine/regnum.h>
|
||||
|
||||
#include "assym.s"
|
||||
|
||||
.set noreorder # Noreorder is default style!
|
||||
|
||||
/*
|
||||
|
@ -50,6 +50,8 @@ extern int (*dtrace_invop_jump_addr)(struct trapframe *);
|
||||
extern dtrace_id_t dtrace_probeid_error;
|
||||
|
||||
int dtrace_invop(uintptr_t, struct trapframe *, uintptr_t);
|
||||
void dtrace_invop_init(void);
|
||||
void dtrace_invop_uninit(void);
|
||||
|
||||
typedef struct dtrace_invop_hdlr {
|
||||
int (*dtih_func)(uintptr_t, struct trapframe *, uintptr_t);
|
||||
|
@ -82,7 +82,6 @@ fbt_provide_module_function(linker_file_t lf, int symindx,
|
||||
linker_symval_t *symval, void *opaque)
|
||||
{
|
||||
fbt_probe_t *fbt, *retfbt;
|
||||
uint32_t *target, *start;
|
||||
uint32_t *instr, *limit;
|
||||
const char *name;
|
||||
char *modname;
|
||||
|
@ -86,14 +86,15 @@ options PRINTF_BUFR_SIZE=128 # Prevent printf output being interspersed.
|
||||
options HWPMC_HOOKS # Necessary kernel hooks for hwpmc(4)
|
||||
options AUDIT # Security event auditing
|
||||
options MAC # TrustedBSD MAC Framework
|
||||
#options KDTRACE_FRAME # Ensure frames are compiled in
|
||||
#options KDTRACE_HOOKS # Kernel DTrace hooks
|
||||
options INCLUDE_CONFIG_FILE # Include this file in kernel
|
||||
options KDTRACE_FRAME # Ensure frames are compiled in
|
||||
options KDTRACE_HOOKS # Kernel DTrace hooks
|
||||
options DDB_CTF # Kernel ELF linker loads CTF data
|
||||
options INCLUDE_CONFIG_FILE # Include this file in kernel
|
||||
options TMPFS # Temporary file system
|
||||
|
||||
# Debugging for use in -current
|
||||
#options KDB # Enable kernel debugger support.
|
||||
#options DDB # Support DDB.
|
||||
options DDB # Support DDB.
|
||||
#options GDB # Support remote GDB.
|
||||
#options DEADLKRES # Enable the deadlock resolver
|
||||
#options INVARIANTS # Enable calls of extra sanity checking
|
||||
|
@ -22,11 +22,14 @@ SUBDIR+= systrace_linux32
|
||||
.if ${MACHINE_CPUARCH} == "powerpc"
|
||||
SUBDIR+= fbt fasttrap
|
||||
.endif
|
||||
.if ${MACHINE_CPUARCH} == "amd64" || ${MACHINE_ARCH} == "powerpc64"
|
||||
.if ${MACHINE_CPUARCH} == "amd64" || \
|
||||
${MACHINE_ARCH} == "mips64" || \
|
||||
${MACHINE_ARCH} == "powerpc64"
|
||||
SUBDIR+= systrace_freebsd32
|
||||
.endif
|
||||
.if ${MACHINE_CPUARCH} == "aarch64" || \
|
||||
${MACHINE_CPUARCH} == "arm" || \
|
||||
${MACHINE_CPUARCH} == "mips" || \
|
||||
${MACHINE_CPUARCH} == "riscv"
|
||||
SUBDIR+= fbt
|
||||
.endif
|
||||
|
@ -8,7 +8,7 @@ SRCS= dtraceall.c opt_compat.h opt_nfs.h
|
||||
CFLAGS+= -I${SYSDIR}
|
||||
|
||||
.if !defined(KERNBUILDDIR)
|
||||
.if ${MACHINE_ARCH} == "amd64"
|
||||
.if ${MACHINE_ARCH} == "amd64" || ${MACHINE_ARCH} == "mips64"
|
||||
opt_compat.h:
|
||||
echo "#define COMPAT_FREEBSD32 1" >> ${.TARGET}
|
||||
.endif
|
||||
|
@ -70,7 +70,8 @@ MODULE_DEPEND(dtraceall, dtmalloc, 1, 1, 1);
|
||||
MODULE_DEPEND(dtraceall, dtnfscl, 1, 1, 1);
|
||||
#endif
|
||||
#if defined(__aarch64__) || defined(__amd64__) || defined(__arm__) || \
|
||||
defined(__i386__) || defined(__powerpc__) || defined(__riscv)
|
||||
defined(__i386__) || defined(__mips__) || \
|
||||
defined(__powerpc__) || defined(__riscv)
|
||||
MODULE_DEPEND(dtraceall, fbt, 1, 1, 1);
|
||||
#endif
|
||||
#if defined(__amd64__) || defined(__i386__)
|
||||
|
Loading…
x
Reference in New Issue
Block a user