mirror of
https://github.com/linuxkit/linuxkit.git
synced 2026-04-11 14:04:06 +00:00
test: Add a simple test/example for compiling a kernel module
The test is currently not hooked up, but it pulls the latest 4.9.x kernel image, builds a simple kernel module against it and then creates a test package containing the kernel module and a shell script. The shell script prints out the 'modinfo' and then tries to 'insmod' the module. It checks the output of 'dmesg' of the load succeeded. Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
This commit is contained in:
6
test/kmod/src/Makefile
Normal file
6
test/kmod/src/Makefile
Normal file
@@ -0,0 +1,6 @@
|
||||
obj-m += hello_world.o
|
||||
KVER=$(shell basename /usr/src/linux-headers-*)
|
||||
all:
|
||||
make -C /usr/src/$(KVER) M=$(PWD) modules
|
||||
clean:
|
||||
make -C /usr/src/$(KVER) M=$(PWD) clean
|
||||
22
test/kmod/src/hello_world.c
Normal file
22
test/kmod/src/hello_world.c
Normal file
@@ -0,0 +1,22 @@
|
||||
/*
|
||||
* A simple Hello World kernel module
|
||||
*/
|
||||
#include <linux/module.h>
|
||||
#include <linux/kernel.h>
|
||||
|
||||
int init_hello(void)
|
||||
{
|
||||
printk(KERN_INFO "Hello LinuxKit\n");
|
||||
return 0;
|
||||
}
|
||||
|
||||
void exit_hello(void)
|
||||
{
|
||||
printk(KERN_INFO "Goodbye LinuxKit.\n");
|
||||
}
|
||||
|
||||
module_init(init_hello);
|
||||
module_exit(exit_hello);
|
||||
MODULE_AUTHOR("Rolf Neugebauer <rolf.neugebauer@docker.com>");
|
||||
MODULE_LICENSE("GPL");
|
||||
MODULE_DESCRIPTION("A simple Hello World kernel module for testing");
|
||||
Reference in New Issue
Block a user