我想知道哪里是主要的页面error handling程序。
我写了一个algorithm来最小化内核中的页面错误。 所以我需要logging一些页面错误发生的事情。 我目前在arch / x86 / mm / fault_32.c的do_page_fault(…)中logging了一个页面错误
但是,似乎小问题和主要的页面错误将进入do_page_fault(…)…小的页面错误总是发生,并使algorithm搞砸了。
我想我只想logging一些主要page_fault时发生的事情。 所以,内核黑客,你能告诉我应该在哪里放我的代码? 哪个文件和哪个function
顺便说一句,我正在破解内核2.6.24
非常感谢你! 阿尔弗雷德
handle_mm_fault
函数处理页面错误。 它的返回值是一组标志。 如果VM_FAULT_MAJOR
被设置,那么这是一个主要的页面错误。 内核在每个主要页面错误上调用perf_sw_event(PERF_COUNT_SW_PAGE_FAULT_MAJ, 1, 0, ...
。