tracing: Documentation / sample code fixes for tracepoints
Fix the tracepoint documentation to refer to "tracepoint-sample" instead of "tracepoint-example" to match what actually exists; fix the directory, and clarify how to compile. Change every instance of "example" in the sample tracepoint code to "sample" for consistency. Signed-off-by: Jody McIntyre <scjody@sun.com> Acked-by: Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca> Cc: torvalds@linux-foundation.org LKML-Reference: <20090324200027.GH8294@clouds> Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
Родитель
a524446fe8
Коммит
0a5d649018
|
@ -103,13 +103,14 @@ used to export the defined tracepoints.
|
||||||
|
|
||||||
* Probe / tracepoint example
|
* Probe / tracepoint example
|
||||||
|
|
||||||
See the example provided in samples/tracepoints/src
|
See the example provided in samples/tracepoints
|
||||||
|
|
||||||
Compile them with your kernel.
|
Compile them with your kernel. They are built during 'make' (not
|
||||||
|
'make modules') when CONFIG_SAMPLE_TRACEPOINTS=m.
|
||||||
|
|
||||||
Run, as root :
|
Run, as root :
|
||||||
modprobe tracepoint-example (insmod order is not important)
|
modprobe tracepoint-sample (insmod order is not important)
|
||||||
modprobe tracepoint-probe-example
|
modprobe tracepoint-probe-sample
|
||||||
cat /proc/tracepoint-example (returns an expected error)
|
cat /proc/tracepoint-sample (returns an expected error)
|
||||||
rmmod tracepoint-example tracepoint-probe-example
|
rmmod tracepoint-sample tracepoint-probe-sample
|
||||||
dmesg
|
dmesg
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
/* tracepoint-sample.c
|
/* tracepoint-sample.c
|
||||||
*
|
*
|
||||||
* Executes a tracepoint when /proc/tracepoint-example is opened.
|
* Executes a tracepoint when /proc/tracepoint-sample is opened.
|
||||||
*
|
*
|
||||||
* (C) Copyright 2007 Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca>
|
* (C) Copyright 2007 Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca>
|
||||||
*
|
*
|
||||||
|
@ -16,7 +16,7 @@
|
||||||
DEFINE_TRACE(subsys_event);
|
DEFINE_TRACE(subsys_event);
|
||||||
DEFINE_TRACE(subsys_eventb);
|
DEFINE_TRACE(subsys_eventb);
|
||||||
|
|
||||||
struct proc_dir_entry *pentry_example;
|
struct proc_dir_entry *pentry_sample;
|
||||||
|
|
||||||
static int my_open(struct inode *inode, struct file *file)
|
static int my_open(struct inode *inode, struct file *file)
|
||||||
{
|
{
|
||||||
|
@ -32,25 +32,25 @@ static struct file_operations mark_ops = {
|
||||||
.open = my_open,
|
.open = my_open,
|
||||||
};
|
};
|
||||||
|
|
||||||
static int __init example_init(void)
|
static int __init sample_init(void)
|
||||||
{
|
{
|
||||||
printk(KERN_ALERT "example init\n");
|
printk(KERN_ALERT "sample init\n");
|
||||||
pentry_example = proc_create("tracepoint-example", 0444, NULL,
|
pentry_sample = proc_create("tracepoint-sample", 0444, NULL,
|
||||||
&mark_ops);
|
&mark_ops);
|
||||||
if (!pentry_example)
|
if (!pentry_sample)
|
||||||
return -EPERM;
|
return -EPERM;
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void __exit example_exit(void)
|
static void __exit sample_exit(void)
|
||||||
{
|
{
|
||||||
printk(KERN_ALERT "example exit\n");
|
printk(KERN_ALERT "sample exit\n");
|
||||||
remove_proc_entry("tracepoint-example", NULL);
|
remove_proc_entry("tracepoint-sample", NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
module_init(example_init)
|
module_init(sample_init)
|
||||||
module_exit(example_exit)
|
module_exit(sample_exit)
|
||||||
|
|
||||||
MODULE_LICENSE("GPL");
|
MODULE_LICENSE("GPL");
|
||||||
MODULE_AUTHOR("Mathieu Desnoyers");
|
MODULE_AUTHOR("Mathieu Desnoyers");
|
||||||
MODULE_DESCRIPTION("Tracepoint example");
|
MODULE_DESCRIPTION("Tracepoint sample");
|
||||||
|
|
Загрузка…
Ссылка в новой задаче