From a4cc3278acccd2d543cba22c652063696d72361d Mon Sep 17 00:00:00 2001 From: Kris Van Hees Date: Tue, 2 Jun 2015 16:34:20 -0400 Subject: [PATCH] dtrace: convert from sdt_instr_t to asm_instr_t 2of2 The sdt_instr_t type was introduced as a generic type name for machine instructions to be defined as a synonym for the arch-specific type. It was named thusly because it was only used by the SDT support code. However, other providers will need it also (e.g. FBT) and therefore it is more appropriate to give it a name that is not tied to a specific provider. Orabug: 21220305 Signed-off-by: Kris Van Hees Acked-by: Nick Alcock Acked-by: Allen Pais --- arch/sparc/include/asm/dtrace_arch.h | 10 ++++++++++ arch/sparc/include/asm/dtrace_sdt.h | 10 ---------- arch/sparc/kernel/dtrace_sdt.c | 6 +++--- arch/x86/include/asm/dtrace_arch.h | 8 ++++++++ arch/x86/include/asm/dtrace_sdt.h | 8 -------- arch/x86/kernel/dtrace_sdt.c | 6 +++--- kernel/dtrace/dtrace_sdt.h | 4 ++-- kernel/dtrace/dtrace_sdt_core.c | 18 +++++++++--------- 8 files changed, 35 insertions(+), 35 deletions(-) create mode 100644 arch/sparc/include/asm/dtrace_arch.h delete mode 100644 arch/sparc/include/asm/dtrace_sdt.h create mode 100644 arch/x86/include/asm/dtrace_arch.h delete mode 100644 arch/x86/include/asm/dtrace_sdt.h diff --git a/arch/sparc/include/asm/dtrace_arch.h b/arch/sparc/include/asm/dtrace_arch.h new file mode 100644 index 000000000000..729ca60423e8 --- /dev/null +++ b/arch/sparc/include/asm/dtrace_arch.h @@ -0,0 +1,10 @@ +/* Copyright (C) 2013,2014 Oracle, Inc. */ + +#ifndef _SPARC_DTRACE_ARCH_H +#define _SPARC_DTRACE_ARCH_H + +typedef uint32_t asm_instr_t; + +#define SDT_TRAMP_SIZE 11 + +#endif /* _SPARC_DTRACE_ARCH_H */ diff --git a/arch/sparc/include/asm/dtrace_sdt.h b/arch/sparc/include/asm/dtrace_sdt.h deleted file mode 100644 index 105d07cb4929..000000000000 --- a/arch/sparc/include/asm/dtrace_sdt.h +++ /dev/null @@ -1,10 +0,0 @@ -/* Copyright (C) 2013,2014 Oracle, Inc. */ - -#ifndef _SPARC_DTRACE_SDT_H -#define _SPARC_DTRACE_SDT_H - -typedef uint32_t sdt_instr_t; - -#define SDT_TRAMP_SIZE 11 - -#endif /* _SPARC_DTRACE_SDT_H */ diff --git a/arch/sparc/kernel/dtrace_sdt.c b/arch/sparc/kernel/dtrace_sdt.c index e8b70ab467dd..1ffcbfb71dea 100644 --- a/arch/sparc/kernel/dtrace_sdt.c +++ b/arch/sparc/kernel/dtrace_sdt.c @@ -13,12 +13,12 @@ #include #include #include -#include +#include -void __init_or_module dtrace_sdt_nop_multi(sdt_instr_t **addrs, int cnt) +void __init_or_module dtrace_sdt_nop_multi(asm_instr_t **addrs, int cnt) { int i; - sdt_instr_t *addr; + asm_instr_t *addr; for (i = 0; i < cnt; i++) { addr = addrs[i]; diff --git a/arch/x86/include/asm/dtrace_arch.h b/arch/x86/include/asm/dtrace_arch.h new file mode 100644 index 000000000000..4806af6188ad --- /dev/null +++ b/arch/x86/include/asm/dtrace_arch.h @@ -0,0 +1,8 @@ +/* Copyright (C) 2013-2014 Oracle, Inc. */ + +#ifndef _X86_DTRACE_ARCH_H +#define _X86_DTRACE_ARCH_H + +typedef uint8_t asm_instr_t; + +#endif /* _X86_DTRACE_ARCH_H */ diff --git a/arch/x86/include/asm/dtrace_sdt.h b/arch/x86/include/asm/dtrace_sdt.h deleted file mode 100644 index 96c7fa259548..000000000000 --- a/arch/x86/include/asm/dtrace_sdt.h +++ /dev/null @@ -1,8 +0,0 @@ -/* Copyright (C) 2013-2014 Oracle, Inc. */ - -#ifndef _X86_DTRACE_SDT_H -#define _X86_DTRACE_SDT_H - -typedef uint8_t sdt_instr_t; - -#endif /* _X86_DTRACE_SDT_H */ diff --git a/arch/x86/kernel/dtrace_sdt.c b/arch/x86/kernel/dtrace_sdt.c index 86ed00bd1b8a..73768b1b91b2 100644 --- a/arch/x86/kernel/dtrace_sdt.c +++ b/arch/x86/kernel/dtrace_sdt.c @@ -14,7 +14,7 @@ #include #include #include -#include +#include #define SDT_NOP_SIZE 5 @@ -24,10 +24,10 @@ uint8_t nops[SDT_NOP_SIZE]; * run before SMP is initialized in order to avoid SMP problems with patching * code that might be accessed on another CPU. */ -void __init_or_module dtrace_sdt_nop_multi(sdt_instr_t **addrs, int cnt) +void __init_or_module dtrace_sdt_nop_multi(asm_instr_t **addrs, int cnt) { int i; - sdt_instr_t *addr; + asm_instr_t *addr; unsigned long flags; stop_nmi(); diff --git a/kernel/dtrace/dtrace_sdt.h b/kernel/dtrace/dtrace_sdt.h index 2e12b6940521..18a745fc1fc7 100644 --- a/kernel/dtrace/dtrace_sdt.h +++ b/kernel/dtrace/dtrace_sdt.h @@ -3,7 +3,7 @@ #ifndef _DTRACE_SDT_H_ #define _DTRACE_SDT_H_ -#include +#include /* * SDT probe called relocation information for the core kernel, provided by @@ -26,7 +26,7 @@ extern void dtrace_sdt_exit(void); /* * Functions to be defined in arch//kernel/dtrace_sdt.c */ -extern void __init_or_module dtrace_sdt_nop_multi(sdt_instr_t **, int); +extern void __init_or_module dtrace_sdt_nop_multi(asm_instr_t **, int); extern void dtrace_sdt_init_arch(void); #endif /* _DTRACE_SDT_H_ */ diff --git a/kernel/dtrace/dtrace_sdt_core.c b/kernel/dtrace/dtrace_sdt_core.c index e98b5743bdd8..ce953b85df8e 100644 --- a/kernel/dtrace/dtrace_sdt_core.c +++ b/kernel/dtrace/dtrace_sdt_core.c @@ -20,7 +20,7 @@ const char *sdt_prefix = "__dtrace_probe_"; static int sdt_probe_set(sdt_probedesc_t *sdp, char *name, char *func, - uintptr_t addr, sdt_instr_t **paddr) + uintptr_t addr, asm_instr_t **paddr) { if ((sdp->sdpd_name = kstrdup(name, GFP_KERNEL)) == NULL) { kfree(sdp); @@ -35,7 +35,7 @@ static int sdt_probe_set(sdt_probedesc_t *sdp, char *name, char *func, sdp->sdpd_offset = addr; - *paddr = (sdt_instr_t *)addr; + *paddr = (asm_instr_t *)addr; return 0; } @@ -51,7 +51,7 @@ void dtrace_sdt_register(struct module *mp) (dtrace_sdt_probeinfo_t *)&dtrace_sdt_probes; void *nextpi; sdt_probedesc_t *sdps; - sdt_instr_t **addrs; + asm_instr_t **addrs; if (mp == NULL) { pr_warning("%s: no module provided - nothing registered\n", @@ -83,8 +83,8 @@ void dtrace_sdt_register(struct module *mp) * Create a list of addresses (SDT probe locations) that need to be * patched with a NOP instruction (or instruction sequence). */ - addrs = (sdt_instr_t **)vmalloc(dtrace_sdt_nprobes * - sizeof(sdt_instr_t *)); + addrs = (asm_instr_t **)vmalloc(dtrace_sdt_nprobes * + sizeof(asm_instr_t *)); if (addrs == NULL) { pr_warning("%s: cannot allocate SDT probe address list\n", __func__); @@ -131,7 +131,7 @@ static int dtrace_mod_notifier(struct notifier_block *nb, unsigned long val, struct module *mp = args; int i, cnt; sdt_probedesc_t *sdp; - sdt_instr_t **addrs; + asm_instr_t **addrs; /* * We only need to capture modules in the COMING state, we need a valid @@ -149,8 +149,8 @@ static int dtrace_mod_notifier(struct notifier_block *nb, unsigned long val, * Create a list of addresses (SDT probe locations) that need to be * patched with a NOP instruction (or instruction sequence). */ - addrs = (sdt_instr_t **)vmalloc(mp->sdt_probec * - sizeof(sdt_instr_t *)); + addrs = (asm_instr_t **)vmalloc(mp->sdt_probec * + sizeof(asm_instr_t *)); if (addrs == NULL) { pr_warning("%s: cannot allocate SDT probe address list (%s)\n", __func__, mp->name); @@ -172,7 +172,7 @@ static int dtrace_mod_notifier(struct notifier_block *nb, unsigned long val, continue; } - addrs[cnt++] = (sdt_instr_t *)sdp->sdpd_offset; + addrs[cnt++] = (asm_instr_t *)sdp->sdpd_offset; } dtrace_sdt_nop_multi(addrs, cnt); -- 2.50.1