#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/export.h>
#include <linux/mm.h>
#include <linux/vmalloc.h>
#include <linux/slab.h>
#include <linux/sizes.h>
#include <linux/io.h>
#include <asm/page.h>
#ifdef CONFIG_MIPS
#include <asm/bootinfo.h>
#endif
struct foo { … };
static struct foo *foo;
static int __init test_debug_virtual_init(void)
{ … }
module_init(…) …;
static void __exit test_debug_virtual_exit(void)
{ … }
module_exit(test_debug_virtual_exit);
MODULE_LICENSE(…) …;
MODULE_DESCRIPTION(…) …;