Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 659b957f authored by Naveen N. Rao's avatar Naveen N. Rao Committed by Ingo Molnar
Browse files

kprobes: Rename [arch_]function_offset_within_entry() to [arch_]kprobe_on_func_entry()



Rename function_offset_within_entry() to scope it to kprobe namespace by
using kprobe_ prefix, and to also simplify it.

Suggested-by: default avatarIngo Molnar <mingo@kernel.org>
Suggested-by: default avatarMasami Hiramatsu <mhiramat@kernel.org>
Signed-off-by: default avatarNaveen N. Rao <naveen.n.rao@linux.vnet.ibm.com>
Cc: Ananth N Mavinakayanahalli <ananth@linux.vnet.ibm.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Link: http://lkml.kernel.org/r/3aa6c7e2e4fb6e00f3c24fa306496a66edb558ea.1499443367.git.naveen.n.rao@linux.vnet.ibm.com


Signed-off-by: default avatarIngo Molnar <mingo@kernel.org>
parent 524b62fd
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -221,7 +221,7 @@ static nokprobe_inline void set_current_kprobe(struct kprobe *p, struct pt_regs
	kcb->kprobe_saved_msr = regs->msr;
}

bool arch_function_offset_within_entry(unsigned long offset)
bool arch_kprobe_on_func_entry(unsigned long offset)
{
#ifdef PPC64_ELF_ABI_v2
#ifdef CONFIG_KPROBES_ON_FTRACE
+2 −2
Original line number Diff line number Diff line
@@ -267,8 +267,8 @@ extern int arch_init_kprobes(void);
extern void show_registers(struct pt_regs *regs);
extern void kprobes_inc_nmissed_count(struct kprobe *p);
extern bool arch_within_kprobe_blacklist(unsigned long addr);
extern bool arch_function_offset_within_entry(unsigned long offset);
extern bool function_offset_within_entry(kprobe_opcode_t *addr, const char *sym, unsigned long offset);
extern bool arch_kprobe_on_func_entry(unsigned long offset);
extern bool kprobe_on_func_entry(kprobe_opcode_t *addr, const char *sym, unsigned long offset);

extern bool within_kprobe_blacklist(unsigned long addr);

+4 −4
Original line number Diff line number Diff line
@@ -1888,12 +1888,12 @@ static int pre_handler_kretprobe(struct kprobe *p, struct pt_regs *regs)
}
NOKPROBE_SYMBOL(pre_handler_kretprobe);

bool __weak arch_function_offset_within_entry(unsigned long offset)
bool __weak arch_kprobe_on_func_entry(unsigned long offset)
{
	return !offset;
}

bool function_offset_within_entry(kprobe_opcode_t *addr, const char *sym, unsigned long offset)
bool kprobe_on_func_entry(kprobe_opcode_t *addr, const char *sym, unsigned long offset)
{
	kprobe_opcode_t *kp_addr = _kprobe_addr(addr, sym, offset);

@@ -1901,7 +1901,7 @@ bool function_offset_within_entry(kprobe_opcode_t *addr, const char *sym, unsign
		return false;

	if (!kallsyms_lookup_size_offset((unsigned long)kp_addr, NULL, &offset) ||
						!arch_function_offset_within_entry(offset))
						!arch_kprobe_on_func_entry(offset))
		return false;

	return true;
@@ -1914,7 +1914,7 @@ int register_kretprobe(struct kretprobe *rp)
	int i;
	void *addr;

	if (!function_offset_within_entry(rp->kp.addr, rp->kp.symbol_name, rp->kp.offset))
	if (!kprobe_on_func_entry(rp->kp.addr, rp->kp.symbol_name, rp->kp.offset))
		return -EINVAL;

	if (kretprobe_blacklist_size) {
+1 −1
Original line number Diff line number Diff line
@@ -720,7 +720,7 @@ static int create_trace_kprobe(int argc, char **argv)
			return ret;
		}
		if (offset && is_return &&
		    !function_offset_within_entry(NULL, symbol, offset)) {
		    !kprobe_on_func_entry(NULL, symbol, offset)) {
			pr_info("Given offset is not valid for return probe.\n");
			return -EINVAL;
		}