|
|
1.1 root 1: /*
2: * page.s contains the low-level page-exception code.
3: * the real work is done in mm.c
4: */
5:
6: .globl _page_fault
7:
8: _page_fault:
9: xchgl %eax,(%esp)
10: pushl %ecx
11: pushl %edx
12: push %ds
13: push %es
14: push %fs
15: movl $0x10,%edx
16: mov %dx,%ds
17: mov %dx,%es
18: mov %dx,%fs
19: movl %cr2,%edx
20: pushl %edx
21: pushl %eax
22: testl $1,%eax
23: jne 1f
24: call _do_no_page
25: jmp 2f
26: 1: call _do_wp_page
27: 2: addl $8,%esp
28: pop %fs
29: pop %es
30: pop %ds
31: popl %edx
32: popl %ecx
33: popl %eax
34: iret
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.