Linux内核中的主要页面错误处理程序

Alf*_*ong 6 linux kernel linux-kernel page-fault

我想知道主要的页面错误处理程序在哪里.

我写了一个算法来最小化内核中的页面错误.因此,每当发生页面错误时我都需要记录一些内容.我目前在arch/x86/mm/fault_32.c中的do_page_fault(...)处记录了页面错误

然而,似乎小的和主要的页面错误将转到do_page_fault(...)...并且小的页面错误一直发生并且搞砸了算法.

我想我只想在主要的page_fault发生时录制内容.那么,内核黑客,请你告诉我应该把我的代码放在哪里?哪个文件和哪个功能.

顺便说一句,我正在破解内核2.6.24

非常感谢你!阿尔弗雷德

Dav*_*rtz 7

handle_mm_fault函数处理页面错误.它的返回值是一组标志.如果VM_FAULT_MAJOR设置,那么这是一个主要的页面错误.内核调用perf_sw_event(PERF_COUNT_SW_PAGE_FAULT_MAJ, 1, 0, ...每个主要的页面错误.