summaryrefslogtreecommitdiffstats
path: root/kernel/modules/949568/module1
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/modules/949568/module1')
-rw-r--r--kernel/modules/949568/module1/Makefile8
-rw-r--r--kernel/modules/949568/module1/module1.c22
2 files changed, 30 insertions, 0 deletions
diff --git a/kernel/modules/949568/module1/Makefile b/kernel/modules/949568/module1/Makefile
new file mode 100644
index 0000000..12e2918
--- /dev/null
+++ b/kernel/modules/949568/module1/Makefile
@@ -0,0 +1,8 @@
+obj-m := module1.o
+KERNELDIR ?= /lib/modules/$(shell uname -r)/build
+PWD := $(shell pwd)
+
+default:
+ $(MAKE) -C $(KERNELDIR) M=$(PWD) modules
+clean:
+ $(MAKE) -C $(KERNELDIR) M=$(PWD) clean
diff --git a/kernel/modules/949568/module1/module1.c b/kernel/modules/949568/module1/module1.c
new file mode 100644
index 0000000..f01e9dc
--- /dev/null
+++ b/kernel/modules/949568/module1/module1.c
@@ -0,0 +1,22 @@
+#include <linux/module.h>
+#include <linux/kernel.h>
+
+MODULE_LICENSE("Dual BSD/GPL");
+
+static int module1_init(void)
+{
+ int code = 0;
+ printk(KERN_INFO "module1 loaded!\n");
+ code = request_module("module2");
+ if (code != 0)
+ printk(KERN_ERR "Request module2 failed\n");
+ else
+ printk(KERN_INFO "Request module2 successed\n");
+ return 0;
+}
+static void module1_exit(void)
+{
+ printk(KERN_ALERT "module1 removed\n");
+}
+module_init(module1_init);
+module_exit(module1_exit);