3bb4bef8 |
1 | /* probe.c |
2 | * |
3 | * Loads a function at a marker call site. |
4 | * |
5 | * (C) Copyright 2006 Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca> |
6 | * |
7 | * This file is released under the GPLv2. |
8 | * See the file COPYING for more details. |
9 | */ |
10 | |
11 | #include <linux/marker.h> |
12 | #include <linux/module.h> |
13 | #include <linux/kallsyms.h> |
14 | |
15 | /* function to install */ |
16 | void do_mark1(const char *format, int value) |
17 | { |
18 | printk("value is %d\n", value); |
19 | } |
20 | |
21 | int init_module(void) |
22 | { |
23 | return marker_set_probe("subsys_mark1", (marker_probe)do_mark1, |
24 | MARKER_CALL); |
25 | } |
26 | |
27 | void cleanup_module(void) |
28 | { |
29 | marker_disable_probe("subsys_mark1", (marker_probe)do_mark1, |
30 | MARKER_CALL); |
31 | } |
32 | |
33 | MODULE_LICENSE("GPL"); |
34 | MODULE_AUTHOR("Mathieu Desnoyers"); |
35 | MODULE_DESCRIPTION("Probe"); |
36 | |