Hi, I'm doing research about rootkits and I have received a lot of warnings like`
"BUG: unable to handle kernel paging request at [addr]"
when I tried to attach my own function to sys_call_table[__NR_read], for example.
In kernels <=2.6.25, function change_page_attr() helped with changing page attributes of a certain address. However, in new kernels >=2.6.28, this function is deprecated and is replaced with set_memory_* functions, related to PAT.
The Linux kernel documentation is not clear about PAT functions usage; I have used set_memory_wc() & set_memory_uc() to change the sys_call_table permissions but I continue receiving the same BUG. That functions I guess are replacing the old change_page_attr().
I saw one example in i915 module, and I have used functions in same way, but the BUG continues.
Any help about it? Am I handling in wrong way kernel addresses?