Skip to content

Commit

Permalink
ftrace: ignore functions that cannot be kprobe-ed
Browse files Browse the repository at this point in the history
kprobes already has an extensive list of annotations for functions
that should not be instrumented. Add notrace annotations to these
functions as well.

This is particularly useful for functions called by the NMI path.

Signed-off-by: Ingo Molnar <mingo@elte.hu>
  • Loading branch information
Ingo Molnar committed Oct 14, 2008
1 parent 9795302 commit 36dcd67
Show file tree
Hide file tree
Showing 2 changed files with 4 additions and 3 deletions.
5 changes: 3 additions & 2 deletions include/linux/kprobes.h
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@
* <jkenisto@us.ibm.com> and Prasanna S Panchamukhi
* <prasanna@in.ibm.com> added function-return probes.
*/
#include <linux/linkage.h>
#include <linux/list.h>
#include <linux/notifier.h>
#include <linux/smp.h>
Expand All @@ -47,7 +48,7 @@
#define KPROBE_HIT_SSDONE 0x00000008

/* Attach to insert probes on any functions which should be ignored*/
#define __kprobes __attribute__((__section__(".kprobes.text")))
#define __kprobes __attribute__((__section__(".kprobes.text"))) notrace

struct kprobe;
struct pt_regs;
Expand Down Expand Up @@ -256,7 +257,7 @@ void recycle_rp_inst(struct kretprobe_instance *ri, struct hlist_head *head);

#else /* CONFIG_KPROBES */

#define __kprobes /**/
#define __kprobes notrace
struct jprobe;
struct kretprobe;

Expand Down
2 changes: 1 addition & 1 deletion kernel/notifier.c
Original file line number Diff line number Diff line change
Expand Up @@ -550,7 +550,7 @@ EXPORT_SYMBOL(unregister_reboot_notifier);

static ATOMIC_NOTIFIER_HEAD(die_chain);

int notify_die(enum die_val val, const char *str,
int notrace notify_die(enum die_val val, const char *str,
struct pt_regs *regs, long err, int trap, int sig)
{
struct die_args args = {
Expand Down

0 comments on commit 36dcd67

Please sign in to comment.