irq test
[lttv.git] / tests / kernel / ltt-facility-loader-tests.c
1 /*
2 * ltt-facility-loader-tests.c
3 *
4 * (C) Copyright 2005 -
5 * Mathieu Desnoyers (mathieu.desnoyers@polymtl.ca)
6 *
7 * Contains the LTT facility loader.
8 *
9 */
10
11
12 #include <linux/ltt-facilities.h>
13 #include <linux/module.h>
14 #include <linux/init.h>
15 #include <linux/config.h>
16 #include "ltt-facility-loader-tests.h"
17
18
19 #ifdef CONFIG_LTT
20
21 EXPORT_SYMBOL(LTT_FACILITY_SYMBOL);
22 EXPORT_SYMBOL(LTT_FACILITY_CHECKSUM_SYMBOL);
23
24 static const char ltt_facility_name[] = LTT_FACILITY_NAME;
25
26 #define SYMBOL_STRING(sym) #sym
27
28 static struct ltt_facility facility = {
29 .name = ltt_facility_name,
30 .num_events = LTT_FACILITY_NUM_EVENTS,
31 .checksum = LTT_FACILITY_CHECKSUM,
32 .symbol = SYMBOL_STRING(LTT_FACILITY_SYMBOL),
33 };
34
35 static int __init facility_init(void)
36 {
37 printk(KERN_INFO "LTT : ltt-facility-tests init in kernel\n");
38
39 LTT_FACILITY_SYMBOL = ltt_facility_kernel_register(&facility);
40 LTT_FACILITY_CHECKSUM_SYMBOL = LTT_FACILITY_SYMBOL;
41
42 return LTT_FACILITY_SYMBOL;
43 }
44
45 #ifndef MODULE
46 __initcall(facility_init);
47 #else
48 module_init(facility_init);
49 static void __exit facility_exit(void)
50 {
51 int err;
52
53 err = ltt_facility_unregister(LTT_FACILITY_SYMBOL);
54 if (err != 0)
55 printk(KERN_ERR "LTT : Error in unregistering facility.\n");
56
57 }
58 module_exit(facility_exit)
59
60 MODULE_LICENSE("GPL");
61 MODULE_AUTHOR("Mathieu Desnoyers");
62 MODULE_DESCRIPTION("Linux Trace Toolkit Facility");
63
64 #endif //MODULE
65
66 #endif //CONFIG_LTT
This page took 0.030599 seconds and 5 git commands to generate.