RE: Page Fault

양원혁 kjhg4321 at naver.com
Wed Apr 22 23:44:50 EDT 2020


I'm sorry I said the wrong thing.
 
First of all, page fault isn't blocked by cli instuction.
Page fault is a type of fulat(not a interrupt)
 
This log is printed from the page fault handler. 
 
> [ 4024.792614] #PF: supervisor write access in kernel mode
> [ 4024.793944] #PF: error_code(0x0002) - not-present page
> [ 4024.794920] PGD 0 P4D 0 
 
But, the strange thing is that the address where the page fault occurred is a strange address(0x000000008004020b).
This address looks similar to the value of cr0. Adding 8*59 to this cr0 value immediately 
results in the address where the page fault occurred.
 
cr0 = 0x0000000080040033
cr2 = 0x000000008004020B
 
cr2 == cr0[59]
 
This is because the rax register was missing from the clobber field of the inline assembly.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.kernelnewbies.org/pipermail/kernelnewbies/attachments/20200423/f10dab77/attachment.html>


More information about the Kernelnewbies mailing list