logger module first version

Just provide print_record() method to log informations.
logger.h and logger_main.c are the main file of the module.
mmap.c handles how to map the page in kernel out to user space.
log_util.h is a helper file.
logger_pro.c is the code of userspace program to log info into file.

Bugs:
- When unmmap(), there may be a bug warning in the kernel log, but it seems to be fine.
Second version of log module
Change the calling method from function pointer to inner module.
Now logger is a sub-module of kvm module

After insmod kvm and kvm-intel, execute load_logger.sh to add the device file.
The third version of Logger module

All the files of logger now are under arch/x86/kvm/
There are three files:
logger.h,logger.c and logger_mmap.c

No need to modify arch/x86/Kbuild
Logger is still a sub-module of kvm module
The last version of non-blocked mmap logger module

change some flags to try to fix the bad-page-map bug, but fail
First Block Mmap Version of Logger Module

add block mode: when there is not enough data to mmap, block the user program
Bug to fix: How to swap out all the log in logger? At last, maybe there is not enough data to mmap
Logger Module with TimeStamp Functionality

can be configured to add timestamp at the front of each message
Add ioctl() to logger module

ioctl(LOGGER_FLUSH) will flush the last incomplete page out by filling
it with '\0'
add the call in record_ctrl.c
Change the blocked method from mmap() to read()

Now mmap() won't be block and read() will be blocked.If there are enough data
read() just return and then hope that the userspace program will call mmap() to
read the data. Otherwise, read will be blocked.
This method fix a bug that will blcok the landscape_sys when opening a new shell
window.
Auto add /dev/logger and Fix Bad Page Map

Now logger module can add /dev/logger file automatically.
And change the map method from vm_fault to mmap() using remap_pfn_page().
Add some interface to record_ctrl.c

Signed-off-by: tanle <tamlokveer@gmail.com>
Change related prink to print_record

Change log related printk to print_record, and change record_ctrl.c
to fit for the whole architecture.

Signed-off-by: Arthur Chunqi Li <yzt356@gmail.com>