#include <linux/module.h>#include <linux/sched.h>#include <linux/init_task.h>#include <linux/mqueue.h>#include <asm/pgtable.h>#include <asm/uaccess.h>staticstructfs_structinit_fs=INIT_FS;staticstructsignal_structinit_signals=INIT_SIGNALS(init_signals);staticstructsighand_structinit_sighand=INIT_SIGHAND(init_sighand);structmm_structinit_mm=INIT_MM(init_mm);structtask_structinit_task=INIT_TASK(init_task);EXPORT_SYMBOL(init_mm);EXPORT_SYMBOL(init_task);/* .text section in head.S is aligned at 8k boundary and this gets linked * right after that so that the init_thread_union is aligned properly as well. * If this is not aligned on a 8k boundry, then you should change code * in etrap.S which assumes it. */unionthread_unioninit_thread_union__attribute__((section(".text\"\n\t#")))__attribute__((aligned(THREAD_SIZE)))={INIT_THREAD_INFO(init_task)};