[IMPROVE] Modern kernels (> 3.16) support
Issue:
Great amount of changes in kernel interface, differences
between arch-dependent symbols and definitions.
Solutions:
- Add necessary includes and definitions for
getnstimeofday() (changed interface and declaration location);
- Replace f_dentry with f_path.dentry (f_dentry definition was
removed);
- Replace instruction_pointer() definition with regs->pc for ARM64
(it is casted to unsinged long, so, is treated as simple number);
- Replace hlist_add_after() by version-dependent definition
(now it is hlist_add_behind() in kernel);
- Replace dereference of task->real_start_time with definition
(on recent kernels its type was changed);
- Redefined __get_cpu_var() for modern kernels
(it was removed from kernel);
- Make kernel version-dependent .map/.unmap methods for
pipe_buf_operations;
- Add necessary include for using splice.h;
- Replace strict_strtoul() with kstrtoul() (strict_strtoul()
was removed);
Change-Id: Id4d5ca4f809b6e13f18614bc0266d6f54d4c47fd
Signed-off-by: Alexander Aksenov <a.aksenov@samsung.com>
23 files changed: