Created
October 15, 2018 05:05
-
-
Save nathanchance/f038bb0a6653b975bb8a4e64fcd5503e to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
arch/x86/mm/fault.o: file format elf64-x86-64 | |
Disassembly of section .text: | |
0000000000000000 <trace_event_raw_event_x86_exceptions>: | |
0: 41 57 push %r15 | |
2: 41 56 push %r14 | |
4: 41 55 push %r13 | |
6: 41 54 push %r12 | |
8: 53 push %rbx | |
9: 48 83 ec 38 sub $0x38,%rsp | |
d: 49 89 ce mov %rcx,%r14 | |
10: 49 89 d7 mov %rdx,%r15 | |
13: 49 89 f4 mov %rsi,%r12 | |
16: 49 89 fd mov %rdi,%r13 | |
19: 65 48 8b 04 25 28 00 mov %gs:0x28,%rax | |
20: 00 00 | |
22: 48 89 44 24 30 mov %rax,0x30(%rsp) | |
27: 48 8b 5f 48 mov 0x48(%rdi),%rbx | |
2b: f7 c3 00 01 00 00 test $0x100,%ebx | |
31: 75 1d jne 50 <trace_event_raw_event_x86_exceptions+0x50> | |
33: 84 db test %bl,%bl | |
35: 78 67 js 9e <trace_event_raw_event_x86_exceptions+0x9e> | |
37: f6 c3 40 test $0x40,%bl | |
3a: 75 44 jne 80 <trace_event_raw_event_x86_exceptions+0x80> | |
3c: f7 c3 00 02 00 00 test $0x200,%ebx | |
42: 74 0c je 50 <trace_event_raw_event_x86_exceptions+0x50> | |
44: 4c 89 ef mov %r13,%rdi | |
47: e8 00 00 00 00 callq 4c <trace_event_raw_event_x86_exceptions+0x4c> | |
48: R_X86_64_PLT32 trace_event_ignore_this_pid-0x4 | |
4c: 84 c0 test %al,%al | |
4e: 75 30 jne 80 <trace_event_raw_event_x86_exceptions+0x80> | |
50: 48 89 e7 mov %rsp,%rdi | |
53: ba 20 00 00 00 mov $0x20,%edx | |
58: 4c 89 ee mov %r13,%rsi | |
5b: e8 00 00 00 00 callq 60 <trace_event_raw_event_x86_exceptions+0x60> | |
5c: R_X86_64_PLT32 trace_event_buffer_reserve-0x4 | |
60: 48 85 c0 test %rax,%rax | |
63: 74 1b je 80 <trace_event_raw_event_x86_exceptions+0x80> | |
65: 4c 89 60 08 mov %r12,0x8(%rax) | |
69: 49 8b 8f 80 00 00 00 mov 0x80(%r15),%rcx | |
70: 48 89 48 10 mov %rcx,0x10(%rax) | |
74: 4c 89 70 18 mov %r14,0x18(%rax) | |
78: 48 89 e7 mov %rsp,%rdi | |
7b: e8 00 00 00 00 callq 80 <trace_event_raw_event_x86_exceptions+0x80> | |
7c: R_X86_64_PLT32 trace_event_buffer_commit-0x4 | |
80: 65 48 8b 04 25 28 00 mov %gs:0x28,%rax | |
87: 00 00 | |
89: 48 3b 44 24 30 cmp 0x30(%rsp),%rax | |
8e: 75 21 jne b1 <trace_event_raw_event_x86_exceptions+0xb1> | |
90: 48 83 c4 38 add $0x38,%rsp | |
94: 5b pop %rbx | |
95: 41 5c pop %r12 | |
97: 41 5d pop %r13 | |
99: 41 5e pop %r14 | |
9b: 41 5f pop %r15 | |
9d: c3 retq | |
9e: 31 f6 xor %esi,%esi | |
a0: 31 d2 xor %edx,%edx | |
a2: 4c 89 ef mov %r13,%rdi | |
a5: e8 00 00 00 00 callq aa <trace_event_raw_event_x86_exceptions+0xaa> | |
a6: R_X86_64_PLT32 event_triggers_call-0x4 | |
aa: f6 c3 40 test $0x40,%bl | |
ad: 74 8d je 3c <trace_event_raw_event_x86_exceptions+0x3c> | |
af: eb cf jmp 80 <trace_event_raw_event_x86_exceptions+0x80> | |
b1: e8 00 00 00 00 callq b6 <trace_event_raw_event_x86_exceptions+0xb6> | |
b2: R_X86_64_PLT32 __stack_chk_fail-0x4 | |
b6: 66 2e 0f 1f 84 00 00 nopw %cs:0x0(%rax,%rax,1) | |
bd: 00 00 00 | |
00000000000000c0 <perf_trace_x86_exceptions>: | |
c0: 55 push %rbp | |
c1: 48 89 e5 mov %rsp,%rbp | |
c4: 41 57 push %r15 | |
c6: 41 56 push %r14 | |
c8: 41 55 push %r13 | |
ca: 41 54 push %r12 | |
cc: 53 push %rbx | |
cd: 48 83 ec 18 sub $0x18,%rsp | |
d1: 49 89 ce mov %rcx,%r14 | |
d4: 49 89 d7 mov %rdx,%r15 | |
d7: 49 89 f4 mov %rsi,%r12 | |
da: 49 89 fd mov %rdi,%r13 | |
dd: 65 48 8b 04 25 28 00 mov %gs:0x28,%rax | |
e4: 00 00 | |
e6: 48 89 45 d0 mov %rax,-0x30(%rbp) | |
ea: 48 8b 5f 78 mov 0x78(%rdi),%rbx | |
ee: 65 48 03 1c 25 00 00 add %gs:0x0,%rbx | |
f5: 00 00 | |
f3: R_X86_64_32S this_cpu_off | |
f7: 48 8b 87 80 00 00 00 mov 0x80(%rdi),%rax | |
fe: 48 8d 75 c8 lea -0x38(%rbp),%rsi | |
102: 48 8d 55 c4 lea -0x3c(%rbp),%rdx | |
106: bf 24 00 00 00 mov $0x24,%edi | |
10b: e8 00 00 00 00 callq 110 <perf_trace_x86_exceptions+0x50> | |
10c: R_X86_64_PLT32 perf_trace_buf_alloc-0x4 | |
110: 48 85 c0 test %rax,%rax | |
113: 74 67 je 17c <perf_trace_x86_exceptions+0xbc> | |
115: 48 8b 4d c8 mov -0x38(%rbp),%rcx | |
119: 48 8b 55 08 mov 0x8(%rbp),%rdx | |
11d: 48 89 91 80 00 00 00 mov %rdx,0x80(%rcx) | |
124: 48 89 69 20 mov %rbp,0x20(%rcx) | |
128: 48 c7 81 88 00 00 00 movq $0x10,0x88(%rcx) | |
12f: 10 00 00 00 | |
133: 48 c7 81 90 00 00 00 movq $0x0,0x90(%rcx) | |
13a: 00 00 00 00 | |
13e: 48 89 a1 98 00 00 00 mov %rsp,0x98(%rcx) | |
145: 4c 89 60 08 mov %r12,0x8(%rax) | |
149: 49 8b 8f 80 00 00 00 mov 0x80(%r15),%rcx | |
150: 48 89 48 10 mov %rcx,0x10(%rax) | |
154: 4c 89 70 18 mov %r14,0x18(%rax) | |
158: 8b 55 c4 mov -0x3c(%rbp),%edx | |
15b: 4c 8b 4d c8 mov -0x38(%rbp),%r9 | |
15f: be 24 00 00 00 mov $0x24,%esi | |
164: 41 b8 01 00 00 00 mov $0x1,%r8d | |
16a: 48 89 c7 mov %rax,%rdi | |
16d: 4c 89 e9 mov %r13,%rcx | |
170: 6a 00 pushq $0x0 | |
172: 53 push %rbx | |
173: e8 00 00 00 00 callq 178 <perf_trace_x86_exceptions+0xb8> | |
174: R_X86_64_PLT32 perf_trace_run_bpf_submit-0x4 | |
178: 48 83 c4 10 add $0x10,%rsp | |
17c: 65 48 8b 04 25 28 00 mov %gs:0x28,%rax | |
183: 00 00 | |
185: 48 3b 45 d0 cmp -0x30(%rbp),%rax | |
189: 75 0f jne 19a <perf_trace_x86_exceptions+0xda> | |
18b: 48 83 c4 18 add $0x18,%rsp | |
18f: 5b pop %rbx | |
190: 41 5c pop %r12 | |
192: 41 5d pop %r13 | |
194: 41 5e pop %r14 | |
196: 41 5f pop %r15 | |
198: 5d pop %rbp | |
199: c3 retq | |
19a: e8 00 00 00 00 callq 19f <perf_trace_x86_exceptions+0xdf> | |
19b: R_X86_64_PLT32 __stack_chk_fail-0x4 | |
19f: 90 nop | |
00000000000001a0 <vmalloc_sync_all>: | |
1a0: 48 8b 04 25 00 00 00 mov 0x0,%rax | |
1a7: 00 | |
1a4: R_X86_64_32S vmalloc_base | |
1a8: 48 bf 00 00 00 00 80 movabs $0xffffff8000000000,%rdi | |
1af: ff ff ff | |
1b2: 48 21 c7 and %rax,%rdi | |
1b5: 48 be ff ff ff ff ff movabs $0x1fffffffffff,%rsi | |
1bc: 1f 00 00 | |
1bf: 48 01 c6 add %rax,%rsi | |
1c2: e9 00 00 00 00 jmpq 1c7 <vmalloc_sync_all+0x27> | |
1c3: R_X86_64_PLT32 sync_global_pgds-0x4 | |
1c7: 66 0f 1f 84 00 00 00 nopw 0x0(%rax,%rax,1) | |
1ce: 00 00 | |
00000000000001d0 <vmalloc_fault>: | |
1d0: 55 push %rbp | |
1d1: 41 57 push %r15 | |
1d3: 41 56 push %r14 | |
1d5: 53 push %rbx | |
1d6: 48 8b 04 25 00 00 00 mov 0x0,%rax | |
1dd: 00 | |
1da: R_X86_64_32S vmalloc_base | |
1de: 41 be ff ff ff ff mov $0xffffffff,%r14d | |
1e4: 48 39 f8 cmp %rdi,%rax | |
1e7: 0f 87 44 01 00 00 ja 331 <vmalloc_fault+0x161> | |
1ed: 48 89 fb mov %rdi,%rbx | |
1f0: 48 b9 ff ff ff ff ff movabs $0x1fffffffffff,%rcx | |
1f7: 1f 00 00 | |
1fa: 48 01 c8 add %rcx,%rax | |
1fd: 48 39 f8 cmp %rdi,%rax | |
200: 0f 86 2b 01 00 00 jbe 331 <vmalloc_fault+0x161> | |
206: 65 8b 04 25 00 00 00 mov %gs:0x0,%eax | |
20d: 00 | |
20a: R_X86_64_32S __preempt_count | |
20e: a9 00 00 10 00 test $0x100000,%eax | |
213: 0f 85 22 01 00 00 jne 33b <vmalloc_fault+0x16b> | |
219: 0f 20 dd mov %cr3,%rbp | |
21c: 48 89 da mov %rbx,%rdx | |
21f: 48 c1 ea 24 shr $0x24,%rdx | |
223: 48 8b 04 25 00 00 00 mov 0x0,%rax | |
22a: 00 | |
227: R_X86_64_32S init_mm+0x50 | |
22b: 81 e2 f8 0f 00 00 and $0xff8,%edx | |
231: 48 8b 04 10 mov (%rax,%rdx,1),%rax | |
235: 48 a9 9f ff ff ff test $0xffffffffffffff9f,%rax | |
23b: 0f 84 f0 00 00 00 je 331 <vmalloc_fault+0x161> | |
241: 48 b9 00 f0 ff ff ff movabs $0x7ffffffffffff000,%rcx | |
248: ff ff 7f | |
24b: 48 21 cd and %rcx,%rbp | |
24e: 48 8b 0c 25 00 00 00 mov 0x0,%rcx | |
255: 00 | |
252: R_X86_64_32S page_offset_base | |
256: 48 01 cd add %rcx,%rbp | |
259: 48 01 d5 add %rdx,%rbp | |
25c: 49 bf 00 f0 ff ff ff movabs $0xffffffffff000,%r15 | |
263: ff 0f 00 | |
266: 48 8b 55 00 mov 0x0(%rbp),%rdx | |
26a: 48 f7 c2 9f ff ff ff test $0xffffffffffffff9f,%rdx | |
271: 74 0f je 282 <vmalloc_fault+0xb2> | |
273: 48 31 d0 xor %rdx,%rax | |
276: 4c 85 f8 test %r15,%rax | |
279: 74 2d je 2a8 <vmalloc_fault+0xd8> | |
27b: 0f 0b ud2 | |
27d: 0f 1f 00 nopl (%rax) | |
280: eb fe jmp 280 <vmalloc_fault+0xb0> | |
282: 48 0f ba 24 25 00 00 btq $0x2b,0x0 | |
289: 00 00 2b | |
287: R_X86_64_32S boot_cpu_data+0x2c | |
28c: 73 0b jae 299 <vmalloc_fault+0xc9> | |
28e: 48 89 ef mov %rbp,%rdi | |
291: 48 89 c6 mov %rax,%rsi | |
294: e8 00 00 00 00 callq 299 <vmalloc_fault+0xc9> | |
295: R_X86_64_PLT32 __pti_set_user_pgtbl-0x4 | |
299: 48 89 45 00 mov %rax,0x0(%rbp) | |
29d: 48 8b 0c 25 00 00 00 mov 0x0,%rcx | |
2a4: 00 | |
2a1: R_X86_64_32S page_offset_base | |
2a5: 48 89 c2 mov %rax,%rdx | |
2a8: 4c 21 fa and %r15,%rdx | |
2ab: 48 01 ca add %rcx,%rdx | |
2ae: 48 89 d8 mov %rbx,%rax | |
2b1: 48 c1 e8 1b shr $0x1b,%rax | |
2b5: 25 f8 0f 00 00 and $0xff8,%eax | |
2ba: 48 8b 04 10 mov (%rax,%rdx,1),%rax | |
2be: 48 a9 9f ff ff ff test $0xffffffffffffff9f,%rax | |
2c4: 74 6b je 331 <vmalloc_fault+0x161> | |
2c6: 89 c2 mov %eax,%edx | |
2c8: 81 e2 81 00 00 00 and $0x81,%edx | |
2ce: 48 81 fa 81 00 00 00 cmp $0x81,%rdx | |
2d5: 75 05 jne 2dc <vmalloc_fault+0x10c> | |
2d7: 45 31 f6 xor %r14d,%r14d | |
2da: eb 55 jmp 331 <vmalloc_fault+0x161> | |
2dc: 49 8d 97 00 10 00 c0 lea -0x3ffff000(%r15),%rdx | |
2e3: 84 c0 test %al,%al | |
2e5: 49 0f 49 d7 cmovns %r15,%rdx | |
2e9: 48 21 c2 and %rax,%rdx | |
2ec: 48 01 ca add %rcx,%rdx | |
2ef: 48 89 d8 mov %rbx,%rax | |
2f2: 48 c1 e8 12 shr $0x12,%rax | |
2f6: 25 f8 0f 00 00 and $0xff8,%eax | |
2fb: 48 8b 04 10 mov (%rax,%rdx,1),%rax | |
2ff: 48 a9 9f ff ff ff test $0xffffffffffffff9f,%rax | |
305: 74 2a je 331 <vmalloc_fault+0x161> | |
307: 41 be 00 00 00 00 mov $0x0,%r14d | |
30d: 84 c0 test %al,%al | |
30f: 78 20 js 331 <vmalloc_fault+0x161> | |
311: 4c 21 f8 and %r15,%rax | |
314: 48 01 c8 add %rcx,%rax | |
317: 48 c1 eb 09 shr $0x9,%rbx | |
31b: 81 e3 f8 0f 00 00 and $0xff8,%ebx | |
321: 0f b7 04 03 movzwl (%rbx,%rax,1),%eax | |
325: 25 01 01 00 00 and $0x101,%eax | |
32a: 66 83 f8 01 cmp $0x1,%ax | |
32e: 45 19 f6 sbb %r14d,%r14d | |
331: 44 89 f0 mov %r14d,%eax | |
334: 5b pop %rbx | |
335: 41 5e pop %r14 | |
337: 41 5f pop %r15 | |
339: 5d pop %rbp | |
33a: c3 retq | |
33b: 0f 0b ud2 | |
33d: e9 d7 fe ff ff jmpq 219 <vmalloc_fault+0x49> | |
342: 66 66 2e 0f 1f 84 00 data16 nopw %cs:0x0(%rax,%rax,1) | |
349: 00 00 00 00 | |
34d: 0f 1f 00 nopl (%rax) | |
0000000000000350 <spurious_fault>: | |
350: 55 push %rbp | |
351: 53 push %rbx | |
352: 31 ed xor %ebp,%ebp | |
354: 48 83 ff 11 cmp $0x11,%rdi | |
358: 74 0a je 364 <spurious_fault+0x14> | |
35a: 48 83 ff 03 cmp $0x3,%rdi | |
35e: 0f 85 6b 01 00 00 jne 4cf <spurious_fault+0x17f> | |
364: 48 8b 04 25 00 00 00 mov 0x0,%rax | |
36b: 00 | |
368: R_X86_64_32S init_mm+0x50 | |
36c: 48 89 f1 mov %rsi,%rcx | |
36f: 48 c1 e9 24 shr $0x24,%rcx | |
373: 81 e1 f8 0f 00 00 and $0xff8,%ecx | |
379: 48 8b 04 08 mov (%rax,%rcx,1),%rax | |
37d: a8 01 test $0x1,%al | |
37f: 0f 84 4a 01 00 00 je 4cf <spurious_fault+0x17f> | |
385: 48 b9 00 f0 ff ff ff movabs $0xffffffffff000,%rcx | |
38c: ff 0f 00 | |
38f: 48 21 c8 and %rcx,%rax | |
392: 48 8b 14 25 00 00 00 mov 0x0,%rdx | |
399: 00 | |
396: R_X86_64_32S page_offset_base | |
39a: 48 01 d0 add %rdx,%rax | |
39d: 48 89 f3 mov %rsi,%rbx | |
3a0: 48 c1 eb 1b shr $0x1b,%rbx | |
3a4: 81 e3 f8 0f 00 00 and $0xff8,%ebx | |
3aa: 48 8b 1c 03 mov (%rbx,%rax,1),%rbx | |
3ae: f6 c3 01 test $0x1,%bl | |
3b1: 0f 84 18 01 00 00 je 4cf <spurious_fault+0x17f> | |
3b7: 89 d8 mov %ebx,%eax | |
3b9: 25 81 00 00 00 and $0x81,%eax | |
3be: 48 3d 81 00 00 00 cmp $0x81,%rax | |
3c4: 75 2c jne 3f2 <spurious_fault+0xa2> | |
3c6: 40 f6 c7 02 test $0x2,%dil | |
3ca: 74 0e je 3da <spurious_fault+0x8a> | |
3cc: 89 d8 mov %ebx,%eax | |
3ce: 83 e0 02 and $0x2,%eax | |
3d1: 48 85 c0 test %rax,%rax | |
3d4: 0f 84 f5 00 00 00 je 4cf <spurious_fault+0x17f> | |
3da: 48 c1 eb 3f shr $0x3f,%rbx | |
3de: 83 f3 01 xor $0x1,%ebx | |
3e1: c1 ef 04 shr $0x4,%edi | |
3e4: f7 d7 not %edi | |
3e6: 83 e7 01 and $0x1,%edi | |
3e9: 09 df or %ebx,%edi | |
3eb: 89 f8 mov %edi,%eax | |
3ed: e9 df 00 00 00 jmpq 4d1 <spurious_fault+0x181> | |
3f2: 48 8d 81 00 10 00 c0 lea -0x3ffff000(%rcx),%rax | |
3f9: 84 db test %bl,%bl | |
3fb: 48 0f 49 c1 cmovns %rcx,%rax | |
3ff: 48 21 d8 and %rbx,%rax | |
402: 48 01 d0 add %rdx,%rax | |
405: 48 89 f3 mov %rsi,%rbx | |
408: 48 c1 eb 12 shr $0x12,%rbx | |
40c: 81 e3 f8 0f 00 00 and $0xff8,%ebx | |
412: 48 8b 04 03 mov (%rbx,%rax,1),%rax | |
416: a9 81 01 00 00 test $0x181,%eax | |
41b: 0f 84 ae 00 00 00 je 4cf <spurious_fault+0x17f> | |
421: 84 c0 test %al,%al | |
423: 0f 88 83 00 00 00 js 4ac <spurious_fault+0x15c> | |
429: 48 21 c1 and %rax,%rcx | |
42c: 48 01 d1 add %rdx,%rcx | |
42f: 48 c1 ee 09 shr $0x9,%rsi | |
433: 81 e6 f8 0f 00 00 and $0xff8,%esi | |
439: 48 8b 0c 0e mov (%rsi,%rcx,1),%rcx | |
43d: f7 c1 01 01 00 00 test $0x101,%ecx | |
443: 0f 84 86 00 00 00 je 4cf <spurious_fault+0x17f> | |
449: f6 c1 02 test $0x2,%cl | |
44c: 75 0a jne 458 <spurious_fault+0x108> | |
44e: 89 fa mov %edi,%edx | |
450: 83 e2 02 and $0x2,%edx | |
453: 48 85 d2 test %rdx,%rdx | |
456: 75 77 jne 4cf <spurious_fault+0x17f> | |
458: 40 f6 c7 10 test $0x10,%dil | |
45c: 74 05 je 463 <spurious_fault+0x113> | |
45e: 48 85 c9 test %rcx,%rcx | |
461: 78 6c js 4cf <spurious_fault+0x17f> | |
463: a8 02 test $0x2,%al | |
465: 75 0a jne 471 <spurious_fault+0x121> | |
467: 89 f9 mov %edi,%ecx | |
469: 83 e1 02 and $0x2,%ecx | |
46c: 48 85 c9 test %rcx,%rcx | |
46f: 75 10 jne 481 <spurious_fault+0x131> | |
471: bd 01 00 00 00 mov $0x1,%ebp | |
476: 40 f6 c7 10 test $0x10,%dil | |
47a: 74 53 je 4cf <spurious_fault+0x17f> | |
47c: 48 85 c0 test %rax,%rax | |
47f: 79 4e jns 4cf <spurious_fault+0x17f> | |
481: 80 3c 25 00 00 00 00 cmpb $0x0,0x0 | |
488: 00 | |
484: R_X86_64_32S .data.once | |
489: bd 00 00 00 00 mov $0x0,%ebp | |
48e: 75 3f jne 4cf <spurious_fault+0x17f> | |
490: c6 04 25 00 00 00 00 movb $0x1,0x0 | |
497: 01 | |
493: R_X86_64_32S .data.once | |
498: 31 ed xor %ebp,%ebp | |
49a: 48 c7 c7 00 00 00 00 mov $0x0,%rdi | |
49d: R_X86_64_32S .rodata.str1.1+0x5d | |
4a1: 31 c0 xor %eax,%eax | |
4a3: e8 00 00 00 00 callq 4a8 <spurious_fault+0x158> | |
4a4: R_X86_64_PLT32 __warn_printk-0x4 | |
4a8: 0f 0b ud2 | |
4aa: eb 23 jmp 4cf <spurious_fault+0x17f> | |
4ac: 40 f6 c7 02 test $0x2,%dil | |
4b0: 74 0a je 4bc <spurious_fault+0x16c> | |
4b2: 89 c1 mov %eax,%ecx | |
4b4: 83 e1 02 and $0x2,%ecx | |
4b7: 48 85 c9 test %rcx,%rcx | |
4ba: 74 13 je 4cf <spurious_fault+0x17f> | |
4bc: 48 c1 e8 3f shr $0x3f,%rax | |
4c0: 83 f0 01 xor $0x1,%eax | |
4c3: c1 ef 04 shr $0x4,%edi | |
4c6: f7 d7 not %edi | |
4c8: 83 e7 01 and $0x1,%edi | |
4cb: 09 c7 or %eax,%edi | |
4cd: 89 fd mov %edi,%ebp | |
4cf: 89 e8 mov %ebp,%eax | |
4d1: 5b pop %rbx | |
4d2: 5d pop %rbp | |
4d3: c3 retq | |
4d4: 66 66 2e 0f 1f 84 00 data16 nopw %cs:0x0(%rax,%rax,1) | |
4db: 00 00 00 00 | |
4df: 90 nop | |
00000000000004e0 <__do_page_fault>: | |
4e0: 55 push %rbp | |
4e1: 41 57 push %r15 | |
4e3: 41 56 push %r14 | |
4e5: 41 55 push %r13 | |
4e7: 41 54 push %r12 | |
4e9: 53 push %rbx | |
4ea: 48 83 ec 38 sub $0x38,%rsp | |
4ee: 49 89 d7 mov %rdx,%r15 | |
4f1: 49 89 f6 mov %rsi,%r14 | |
4f4: 48 89 fd mov %rdi,%rbp | |
4f7: 65 48 8b 04 25 28 00 mov %gs:0x28,%rax | |
4fe: 00 00 | |
500: 48 89 44 24 30 mov %rax,0x30(%rsp) | |
505: 65 4c 8b 2c 25 00 00 mov %gs:0x0,%r13 | |
50c: 00 00 | |
50a: R_X86_64_32S current_task | |
50e: 4d 8b a5 d8 03 00 00 mov 0x3d8(%r13),%r12 | |
515: 41 0f 18 4c 24 70 prefetcht0 0x70(%r12) | |
51b: 48 b8 00 f0 ff ff ff movabs $0x7ffffffff000,%rax | |
522: 7f 00 00 | |
525: 48 39 c2 cmp %rax,%rdx | |
528: 0f 83 b6 02 00 00 jae 7e4 <__do_page_fault+0x304> | |
52e: f6 85 88 00 00 00 03 testb $0x3,0x88(%rbp) | |
535: 75 23 jne 55a <__do_page_fault+0x7a> | |
537: 65 48 8b 04 25 00 00 mov %gs:0x0,%rax | |
53e: 00 00 | |
53c: R_X86_64_32S current_kprobe | |
540: 48 85 c0 test %rax,%rax | |
543: 74 15 je 55a <__do_page_fault+0x7a> | |
545: be 0e 00 00 00 mov $0xe,%esi | |
54a: 48 89 ef mov %rbp,%rdi | |
54d: e8 00 00 00 00 callq 552 <__do_page_fault+0x72> | |
54e: R_X86_64_PLT32 kprobe_fault_handler-0x4 | |
552: 85 c0 test %eax,%eax | |
554: 0f 85 53 02 00 00 jne 7ad <__do_page_fault+0x2cd> | |
55a: 41 f6 c6 08 test $0x8,%r14b | |
55e: 0f 85 ce 02 00 00 jne 832 <__do_page_fault+0x352> | |
564: 48 b8 00 00 00 00 00 movabs $0x10000000000000,%rax | |
56b: 00 10 00 | |
56e: 48 23 04 25 00 00 00 and 0x0,%rax | |
575: 00 | |
572: R_X86_64_32S boot_cpu_data+0x34 | |
576: 41 f6 c6 04 test $0x4,%r14b | |
57a: 75 2a jne 5a6 <__do_page_fault+0xc6> | |
57c: 48 85 c0 test %rax,%rax | |
57f: 74 25 je 5a6 <__do_page_fault+0xc6> | |
581: f6 85 88 00 00 00 03 testb $0x3,0x88(%rbp) | |
588: 75 09 jne 593 <__do_page_fault+0xb3> | |
58a: f6 85 92 00 00 00 04 testb $0x4,0x92(%rbp) | |
591: 75 13 jne 5a6 <__do_page_fault+0xc6> | |
593: 48 89 ef mov %rbp,%rdi | |
596: 4c 89 f6 mov %r14,%rsi | |
599: 4c 89 fa mov %r15,%rdx | |
59c: e8 4f 05 00 00 callq af0 <bad_area_nosemaphore> | |
5a1: e9 07 02 00 00 jmpq 7ad <__do_page_fault+0x2cd> | |
5a6: 41 83 bd f8 08 00 00 cmpl $0x0,0x8f8(%r13) | |
5ad: 00 | |
5ae: 75 e3 jne 593 <__do_page_fault+0xb3> | |
5b0: 65 8b 04 25 00 00 00 mov %gs:0x0,%eax | |
5b7: 00 | |
5b4: R_X86_64_32S __preempt_count | |
5b8: 4d 85 e4 test %r12,%r12 | |
5bb: 74 d6 je 593 <__do_page_fault+0xb3> | |
5bd: 25 ff ff ff 7f and $0x7fffffff,%eax | |
5c2: 75 cf jne 593 <__do_page_fault+0xb3> | |
5c4: f6 85 88 00 00 00 03 testb $0x3,0x88(%rbp) | |
5cb: 74 0c je 5d9 <__do_page_fault+0xf9> | |
5cd: fb sti | |
5ce: 49 83 ce 04 or $0x4,%r14 | |
5d2: bb 54 00 00 00 mov $0x54,%ebx | |
5d7: eb 0f jmp 5e8 <__do_page_fault+0x108> | |
5d9: bb 14 00 00 00 mov $0x14,%ebx | |
5de: f6 85 91 00 00 00 02 testb $0x2,0x91(%rbp) | |
5e5: 74 01 je 5e8 <__do_page_fault+0x108> | |
5e7: fb sti | |
5e8: 49 8d 44 24 70 lea 0x70(%r12),%rax | |
5ed: 48 89 44 24 18 mov %rax,0x18(%rsp) | |
5f2: 83 3c 25 00 00 00 00 cmpl $0x0,0x0 | |
5f9: 00 | |
5f5: R_X86_64_32S perf_swevent_enabled+0x8 | |
5fa: 7e 15 jle 611 <__do_page_fault+0x131> | |
5fc: bf 02 00 00 00 mov $0x2,%edi | |
601: be 01 00 00 00 mov $0x1,%esi | |
606: 48 89 ea mov %rbp,%rdx | |
609: 4c 89 f9 mov %r15,%rcx | |
60c: e8 00 00 00 00 callq 611 <__do_page_fault+0x131> | |
60d: R_X86_64_PLT32 __perf_sw_event-0x4 | |
611: 4c 89 6c 24 10 mov %r13,0x10(%rsp) | |
616: 44 89 f0 mov %r14d,%eax | |
619: 83 e0 02 and $0x2,%eax | |
61c: 48 89 44 24 20 mov %rax,0x20(%rsp) | |
621: 48 d1 e8 shr %rax | |
624: 09 c3 or %eax,%ebx | |
626: 8d 83 00 01 00 00 lea 0x100(%rbx),%eax | |
62c: 41 f6 c6 10 test $0x10,%r14b | |
630: 0f 44 c3 cmove %ebx,%eax | |
633: 89 44 24 0c mov %eax,0xc(%rsp) | |
637: 48 8b 7c 24 18 mov 0x18(%rsp),%rdi | |
63c: e8 00 00 00 00 callq 641 <__do_page_fault+0x161> | |
63d: R_X86_64_PLT32 down_read_trylock-0x4 | |
641: 85 c0 test %eax,%eax | |
643: 48 89 2c 24 mov %rbp,(%rsp) | |
647: 0f 84 f8 01 00 00 je 845 <__do_page_fault+0x365> | |
64d: e8 00 00 00 00 callq 652 <__do_page_fault+0x172> | |
64e: R_X86_64_PLT32 _cond_resched-0x4 | |
652: 31 db xor %ebx,%ebx | |
654: 4c 89 e7 mov %r12,%rdi | |
657: 4c 89 fe mov %r15,%rsi | |
65a: e8 00 00 00 00 callq 65f <__do_page_fault+0x17f> | |
65b: R_X86_64_PLT32 find_vma-0x4 | |
65f: 48 85 c0 test %rax,%rax | |
662: 0f 84 3b 02 00 00 je 8a3 <__do_page_fault+0x3c3> | |
668: 49 89 c5 mov %rax,%r13 | |
66b: 4c 39 38 cmp %r15,(%rax) | |
66e: 0f 87 fb 01 00 00 ja 86f <__do_page_fault+0x38f> | |
674: 41 f6 c6 20 test $0x20,%r14b | |
678: 0f 85 52 01 00 00 jne 7d0 <__do_page_fault+0x2f0> | |
67e: 41 f6 c6 10 test $0x10,%r14b | |
682: 75 17 jne 69b <__do_page_fault+0x1bb> | |
684: 48 8b 44 24 10 mov 0x10(%rsp),%rax | |
689: 48 8b 80 d8 03 00 00 mov 0x3d8(%rax),%rax | |
690: 48 85 c0 test %rax,%rax | |
693: 74 06 je 69b <__do_page_fault+0x1bb> | |
695: 49 3b 45 40 cmp 0x40(%r13),%rax | |
699: 74 21 je 6bc <__do_page_fault+0x1dc> | |
69b: 48 83 7c 24 20 00 cmpq $0x0,0x20(%rsp) | |
6a1: 74 58 je 6fb <__do_page_fault+0x21b> | |
6a3: 4c 89 e8 mov %r13,%rax | |
6a6: 48 83 c0 50 add $0x50,%rax | |
6aa: 8b 00 mov (%rax),%eax | |
6ac: d1 e8 shr %eax | |
6ae: f7 d0 not %eax | |
6b0: 83 e0 01 and $0x1,%eax | |
6b3: 85 c0 test %eax,%eax | |
6b5: 74 60 je 717 <__do_page_fault+0x237> | |
6b7: e9 14 01 00 00 jmpq 7d0 <__do_page_fault+0x2f0> | |
6bc: 49 8b 75 50 mov 0x50(%r13),%rsi | |
6c0: 31 c0 xor %eax,%eax | |
6c2: f6 04 25 00 00 00 00 testb $0x10,0x0 | |
6c9: 10 | |
6c5: R_X86_64_32S boot_cpu_data+0x54 | |
6ca: 74 05 je 6d1 <__do_page_fault+0x1f1> | |
6cc: 31 c9 xor %ecx,%ecx | |
6ce: 0f 01 ee rdpkru | |
6d1: 48 c1 ee 1f shr $0x1f,%rsi | |
6d5: 83 e6 1e and $0x1e,%esi | |
6d8: 0f a3 f0 bt %esi,%eax | |
6db: 0f 82 ef 00 00 00 jb 7d0 <__do_page_fault+0x2f0> | |
6e1: 48 83 7c 24 20 00 cmpq $0x0,0x20(%rsp) | |
6e7: 74 12 je 6fb <__do_page_fault+0x21b> | |
6e9: ba 03 00 00 00 mov $0x3,%edx | |
6ee: 89 f1 mov %esi,%ecx | |
6f0: d3 e2 shl %cl,%edx | |
6f2: 85 d0 test %edx,%eax | |
6f4: 74 ad je 6a3 <__do_page_fault+0x1c3> | |
6f6: e9 d5 00 00 00 jmpq 7d0 <__do_page_fault+0x2f0> | |
6fb: 41 f6 c6 01 test $0x1,%r14b | |
6ff: 0f 85 cb 00 00 00 jne 7d0 <__do_page_fault+0x2f0> | |
705: 31 c0 xor %eax,%eax | |
707: 41 f6 45 50 07 testb $0x7,0x50(%r13) | |
70c: 0f 94 c0 sete %al | |
70f: 85 c0 test %eax,%eax | |
711: 0f 85 b9 00 00 00 jne 7d0 <__do_page_fault+0x2f0> | |
717: 4c 89 ef mov %r13,%rdi | |
71a: 4d 89 fd mov %r15,%r13 | |
71d: 4c 89 fe mov %r15,%rsi | |
720: 44 8b 7c 24 0c mov 0xc(%rsp),%r15d | |
725: 44 89 fa mov %r15d,%edx | |
728: e8 00 00 00 00 callq 72d <__do_page_fault+0x24d> | |
729: R_X86_64_PLT32 handle_mm_fault-0x4 | |
72d: 89 c5 mov %eax,%ebp | |
72f: 89 d8 mov %ebx,%eax | |
731: 89 eb mov %ebp,%ebx | |
733: 83 e3 04 and $0x4,%ebx | |
736: 09 c3 or %eax,%ebx | |
738: f7 c5 00 04 00 00 test $0x400,%ebp | |
73e: 0f 85 73 01 00 00 jne 8b7 <__do_page_fault+0x3d7> | |
744: 48 8b 7c 24 18 mov 0x18(%rsp),%rdi | |
749: e8 00 00 00 00 callq 74e <__do_page_fault+0x26e> | |
74a: R_X86_64_PLT32 up_read-0x4 | |
74e: f7 c5 73 08 00 00 test $0x873,%ebp | |
754: 0f 85 93 01 00 00 jne 8ed <__do_page_fault+0x40d> | |
75a: 85 db test %ebx,%ebx | |
75c: 74 22 je 780 <__do_page_fault+0x2a0> | |
75e: 48 8b 44 24 10 mov 0x10(%rsp),%rax | |
763: 48 83 80 c8 05 00 00 addq $0x1,0x5c8(%rax) | |
76a: 01 | |
76b: 83 3c 25 00 00 00 00 cmpl $0x0,0x0 | |
772: 00 | |
76e: R_X86_64_32S perf_swevent_enabled+0x18 | |
773: 48 8b 14 24 mov (%rsp),%rdx | |
777: 7e 34 jle 7ad <__do_page_fault+0x2cd> | |
779: bf 06 00 00 00 mov $0x6,%edi | |
77e: eb 20 jmp 7a0 <__do_page_fault+0x2c0> | |
780: 48 8b 44 24 10 mov 0x10(%rsp),%rax | |
785: 48 83 80 c0 05 00 00 addq $0x1,0x5c0(%rax) | |
78c: 01 | |
78d: 83 3c 25 00 00 00 00 cmpl $0x0,0x0 | |
794: 00 | |
790: R_X86_64_32S perf_swevent_enabled+0x14 | |
795: 48 8b 14 24 mov (%rsp),%rdx | |
799: 7e 12 jle 7ad <__do_page_fault+0x2cd> | |
79b: bf 05 00 00 00 mov $0x5,%edi | |
7a0: be 01 00 00 00 mov $0x1,%esi | |
7a5: 4c 89 e9 mov %r13,%rcx | |
7a8: e8 00 00 00 00 callq 7ad <__do_page_fault+0x2cd> | |
7a9: R_X86_64_PLT32 __perf_sw_event-0x4 | |
7ad: 65 48 8b 04 25 28 00 mov %gs:0x28,%rax | |
7b4: 00 00 | |
7b6: 48 3b 44 24 30 cmp 0x30(%rsp),%rax | |
7bb: 0f 85 9e 01 00 00 jne 95f <__do_page_fault+0x47f> | |
7c1: 48 83 c4 38 add $0x38,%rsp | |
7c5: 5b pop %rbx | |
7c6: 41 5c pop %r12 | |
7c8: 41 5d pop %r13 | |
7ca: 41 5e pop %r14 | |
7cc: 41 5f pop %r15 | |
7ce: 5d pop %rbp | |
7cf: c3 retq | |
7d0: 48 8b 3c 24 mov (%rsp),%rdi | |
7d4: 4c 89 f6 mov %r14,%rsi | |
7d7: 4c 89 fa mov %r15,%rdx | |
7da: 4c 89 e9 mov %r13,%rcx | |
7dd: e8 fe 03 00 00 callq be0 <bad_area_access_error> | |
7e2: eb c9 jmp 7ad <__do_page_fault+0x2cd> | |
7e4: 41 f6 c6 0d test $0xd,%r14b | |
7e8: 0f 84 15 01 00 00 je 903 <__do_page_fault+0x423> | |
7ee: 4c 89 f7 mov %r14,%rdi | |
7f1: 4c 89 fe mov %r15,%rsi | |
7f4: e8 57 fb ff ff callq 350 <spurious_fault> | |
7f9: 85 c0 test %eax,%eax | |
7fb: 75 b0 jne 7ad <__do_page_fault+0x2cd> | |
7fd: f6 85 88 00 00 00 03 testb $0x3,0x88(%rbp) | |
804: 0f 85 89 fd ff ff jne 593 <__do_page_fault+0xb3> | |
80a: 65 48 8b 04 25 00 00 mov %gs:0x0,%rax | |
811: 00 00 | |
80f: R_X86_64_32S current_kprobe | |
813: 48 85 c0 test %rax,%rax | |
816: 0f 84 77 fd ff ff je 593 <__do_page_fault+0xb3> | |
81c: be 0e 00 00 00 mov $0xe,%esi | |
821: 48 89 ef mov %rbp,%rdi | |
824: e8 00 00 00 00 callq 829 <__do_page_fault+0x349> | |
825: R_X86_64_PLT32 kprobe_fault_handler-0x4 | |
829: 85 c0 test %eax,%eax | |
82b: 75 80 jne 7ad <__do_page_fault+0x2cd> | |
82d: e9 61 fd ff ff jmpq 593 <__do_page_fault+0xb3> | |
832: 48 89 ef mov %rbp,%rdi | |
835: 4c 89 f6 mov %r14,%rsi | |
838: 4c 89 fa mov %r15,%rdx | |
83b: e8 c0 02 00 00 callq b00 <pgtable_bad> | |
840: e9 1f fd ff ff jmpq 564 <__do_page_fault+0x84> | |
845: 31 db xor %ebx,%ebx | |
847: 41 f6 c6 04 test $0x4,%r14b | |
84b: 0f 85 d2 00 00 00 jne 923 <__do_page_fault+0x443> | |
851: 48 8b bd 80 00 00 00 mov 0x80(%rbp),%rdi | |
858: e8 00 00 00 00 callq 85d <__do_page_fault+0x37d> | |
859: R_X86_64_PLT32 search_exception_tables-0x4 | |
85d: 48 85 c0 test %rax,%rax | |
860: 0f 85 bd 00 00 00 jne 923 <__do_page_fault+0x443> | |
866: 48 8b 3c 24 mov (%rsp),%rdi | |
86a: e9 27 fd ff ff jmpq 596 <__do_page_fault+0xb6> | |
86f: 41 f6 45 51 01 testb $0x1,0x51(%r13) | |
874: 74 2d je 8a3 <__do_page_fault+0x3c3> | |
876: 41 f6 c6 04 test $0x4,%r14b | |
87a: 74 14 je 890 <__do_page_fault+0x3b0> | |
87c: 49 8d 87 00 01 01 00 lea 0x10100(%r15),%rax | |
883: 48 8b 0c 24 mov (%rsp),%rcx | |
887: 48 3b 81 98 00 00 00 cmp 0x98(%rcx),%rax | |
88e: 72 13 jb 8a3 <__do_page_fault+0x3c3> | |
890: 4c 89 ef mov %r13,%rdi | |
893: 4c 89 fe mov %r15,%rsi | |
896: e8 00 00 00 00 callq 89b <__do_page_fault+0x3bb> | |
897: R_X86_64_PLT32 expand_stack-0x4 | |
89b: 85 c0 test %eax,%eax | |
89d: 0f 84 d1 fd ff ff je 674 <__do_page_fault+0x194> | |
8a3: 48 8b 3c 24 mov (%rsp),%rdi | |
8a7: 4c 89 f6 mov %r14,%rsi | |
8aa: 4c 89 fa mov %r15,%rdx | |
8ad: e8 de 02 00 00 callq b90 <bad_area> | |
8b2: e9 f6 fe ff ff jmpq 7ad <__do_page_fault+0x2cd> | |
8b7: 41 f6 c7 04 test $0x4,%r15b | |
8bb: 74 75 je 932 <__do_page_fault+0x452> | |
8bd: 41 83 e7 db and $0xffffffdb,%r15d | |
8c1: 44 89 7c 24 0c mov %r15d,0xc(%rsp) | |
8c6: 48 8b 44 24 10 mov 0x10(%rsp),%rax | |
8cb: 48 0f ba 20 02 btq $0x2,(%rax) | |
8d0: 0f 92 44 24 2f setb 0x2f(%rsp) | |
8d5: 80 7c 24 2f 00 cmpb $0x0,0x2f(%rsp) | |
8da: 4d 89 ef mov %r13,%r15 | |
8dd: 74 39 je 918 <__do_page_fault+0x438> | |
8df: 8b 80 b0 06 00 00 mov 0x6b0(%rax),%eax | |
8e5: c1 e8 08 shr $0x8,%eax | |
8e8: 83 e0 01 and $0x1,%eax | |
8eb: eb 2d jmp 91a <__do_page_fault+0x43a> | |
8ed: 48 8b 3c 24 mov (%rsp),%rdi | |
8f1: 4c 89 f6 mov %r14,%rsi | |
8f4: 4c 89 ea mov %r13,%rdx | |
8f7: 89 e9 mov %ebp,%ecx | |
8f9: e8 52 07 00 00 callq 1050 <mm_fault_error> | |
8fe: e9 aa fe ff ff jmpq 7ad <__do_page_fault+0x2cd> | |
903: 4c 89 ff mov %r15,%rdi | |
906: e8 c5 f8 ff ff callq 1d0 <vmalloc_fault> | |
90b: 85 c0 test %eax,%eax | |
90d: 0f 89 9a fe ff ff jns 7ad <__do_page_fault+0x2cd> | |
913: e9 d6 fe ff ff jmpq 7ee <__do_page_fault+0x30e> | |
918: 31 c0 xor %eax,%eax | |
91a: 83 44 24 0c 20 addl $0x20,0xc(%rsp) | |
91f: 85 c0 test %eax,%eax | |
921: 75 12 jne 935 <__do_page_fault+0x455> | |
923: 48 8b 7c 24 18 mov 0x18(%rsp),%rdi | |
928: e8 00 00 00 00 callq 92d <__do_page_fault+0x44d> | |
929: R_X86_64_PLT32 down_read-0x4 | |
92d: e9 22 fd ff ff jmpq 654 <__do_page_fault+0x174> | |
932: 4d 89 ef mov %r13,%r15 | |
935: f6 44 24 0c 40 testb $0x40,0xc(%rsp) | |
93a: 48 8b 3c 24 mov (%rsp),%rdi | |
93e: 0f 85 69 fe ff ff jne 7ad <__do_page_fault+0x2cd> | |
944: b9 07 00 00 00 mov $0x7,%ecx | |
949: 41 b8 02 00 00 00 mov $0x2,%r8d | |
94f: 4c 89 f6 mov %r14,%rsi | |
952: 4c 89 fa mov %r15,%rdx | |
955: e8 76 03 00 00 callq cd0 <no_context> | |
95a: e9 4e fe ff ff jmpq 7ad <__do_page_fault+0x2cd> | |
95f: e8 00 00 00 00 callq 964 <__do_page_fault+0x484> | |
960: R_X86_64_PLT32 __stack_chk_fail-0x4 | |
964: 66 66 2e 0f 1f 84 00 data16 nopw %cs:0x0(%rax,%rax,1) | |
96b: 00 00 00 00 | |
96f: 90 nop | |
0000000000000970 <do_page_fault>: | |
970: 41 57 push %r15 | |
972: 41 56 push %r14 | |
974: 41 54 push %r12 | |
976: 53 push %rbx | |
977: 48 83 ec 10 sub $0x10,%rsp | |
97b: 49 89 f6 mov %rsi,%r14 | |
97e: 49 89 ff mov %rdi,%r15 | |
981: 65 48 8b 04 25 28 00 mov %gs:0x28,%rax | |
988: 00 00 | |
98a: 48 89 44 24 08 mov %rax,0x8(%rsp) | |
98f: 0f 20 d3 mov %cr2,%rbx | |
992: 83 3c 25 00 00 00 00 cmpl $0x0,0x0 | |
999: 00 | |
995: R_X86_64_32S trace_pagefault_key | |
99a: 7f 2e jg 9ca <do_page_fault+0x5a> | |
99c: 4c 89 ff mov %r15,%rdi | |
99f: 4c 89 f6 mov %r14,%rsi | |
9a2: 48 89 da mov %rbx,%rdx | |
9a5: e8 36 fb ff ff callq 4e0 <__do_page_fault> | |
9aa: 65 48 8b 04 25 28 00 mov %gs:0x28,%rax | |
9b1: 00 00 | |
9b3: 48 3b 44 24 08 cmp 0x8(%rsp),%rax | |
9b8: 0f 85 dc 00 00 00 jne a9a <do_page_fault+0x12a> | |
9be: 48 83 c4 10 add $0x10,%rsp | |
9c2: 5b pop %rbx | |
9c3: 41 5c pop %r12 | |
9c5: 41 5e pop %r14 | |
9c7: 41 5f pop %r15 | |
9c9: c3 retq | |
9ca: 41 f6 87 88 00 00 00 testb $0x3,0x88(%r15) | |
9d1: 03 | |
9d2: 74 5f je a33 <do_page_fault+0xc3> | |
9d4: 83 3c 25 00 00 00 00 cmpl $0x0,0x0 | |
9db: 00 | |
9d7: R_X86_64_32S __tracepoint_page_fault_user+0x8 | |
9dc: 7e be jle 99c <do_page_fault+0x2c> | |
9de: 65 8b 04 25 00 00 00 mov %gs:0x0,%eax | |
9e5: 00 | |
9e2: R_X86_64_32S cpu_number | |
9e6: 89 c0 mov %eax,%eax | |
9e8: 48 0f a3 04 25 00 00 bt %rax,0x0 | |
9ef: 00 00 | |
9ed: R_X86_64_32S __cpu_online_mask | |
9f1: 0f 92 44 24 07 setb 0x7(%rsp) | |
9f6: 80 7c 24 07 00 cmpb $0x0,0x7(%rsp) | |
9fb: 74 9f je 99c <do_page_fault+0x2c> | |
9fd: 4c 8b 24 25 00 00 00 mov 0x0,%r12 | |
a04: 00 | |
a01: R_X86_64_32S __tracepoint_page_fault_user+0x20 | |
a05: 4d 85 e4 test %r12,%r12 | |
a08: 74 24 je a2e <do_page_fault+0xbe> | |
a0a: 4d 8b 1c 24 mov (%r12),%r11 | |
a0e: 49 8b 7c 24 08 mov 0x8(%r12),%rdi | |
a13: 48 89 de mov %rbx,%rsi | |
a16: 4c 89 fa mov %r15,%rdx | |
a19: 4c 89 f1 mov %r14,%rcx | |
a1c: e8 00 00 00 00 callq a21 <do_page_fault+0xb1> | |
a1d: R_X86_64_PLT32 __x86_indirect_thunk_r11-0x4 | |
a21: 49 83 7c 24 18 00 cmpq $0x0,0x18(%r12) | |
a27: 4d 8d 64 24 18 lea 0x18(%r12),%r12 | |
a2c: 75 dc jne a0a <do_page_fault+0x9a> | |
a2e: e9 69 ff ff ff jmpq 99c <do_page_fault+0x2c> | |
a33: 83 3c 25 00 00 00 00 cmpl $0x0,0x0 | |
a3a: 00 | |
a36: R_X86_64_32S __tracepoint_page_fault_kernel+0x8 | |
a3b: 0f 8e 5b ff ff ff jle 99c <do_page_fault+0x2c> | |
a41: 65 8b 04 25 00 00 00 mov %gs:0x0,%eax | |
a48: 00 | |
a45: R_X86_64_32S cpu_number | |
a49: 89 c0 mov %eax,%eax | |
a4b: 48 0f a3 04 25 00 00 bt %rax,0x0 | |
a52: 00 00 | |
a50: R_X86_64_32S __cpu_online_mask | |
a54: 0f 92 44 24 06 setb 0x6(%rsp) | |
a59: 80 7c 24 06 00 cmpb $0x0,0x6(%rsp) | |
a5e: 0f 84 38 ff ff ff je 99c <do_page_fault+0x2c> | |
a64: 4c 8b 24 25 00 00 00 mov 0x0,%r12 | |
a6b: 00 | |
a68: R_X86_64_32S __tracepoint_page_fault_kernel+0x20 | |
a6c: 4d 85 e4 test %r12,%r12 | |
a6f: 74 24 je a95 <do_page_fault+0x125> | |
a71: 4d 8b 1c 24 mov (%r12),%r11 | |
a75: 49 8b 7c 24 08 mov 0x8(%r12),%rdi | |
a7a: 48 89 de mov %rbx,%rsi | |
a7d: 4c 89 fa mov %r15,%rdx | |
a80: 4c 89 f1 mov %r14,%rcx | |
a83: e8 00 00 00 00 callq a88 <do_page_fault+0x118> | |
a84: R_X86_64_PLT32 __x86_indirect_thunk_r11-0x4 | |
a88: 49 83 7c 24 18 00 cmpq $0x0,0x18(%r12) | |
a8e: 4d 8d 64 24 18 lea 0x18(%r12),%r12 | |
a93: 75 dc jne a71 <do_page_fault+0x101> | |
a95: e9 02 ff ff ff jmpq 99c <do_page_fault+0x2c> | |
a9a: e8 00 00 00 00 callq a9f <do_page_fault+0x12f> | |
a9b: R_X86_64_PLT32 __stack_chk_fail-0x4 | |
a9f: 90 nop | |
0000000000000aa0 <trace_raw_output_x86_exceptions>: | |
aa0: 41 56 push %r14 | |
aa2: 53 push %rbx | |
aa3: 48 89 fb mov %rdi,%rbx | |
aa6: 4c 8b b7 b8 20 00 00 mov 0x20b8(%rdi),%r14 | |
aad: 48 89 d6 mov %rdx,%rsi | |
ab0: e8 00 00 00 00 callq ab5 <trace_raw_output_x86_exceptions+0x15> | |
ab1: R_X86_64_PLT32 trace_raw_output_prep-0x4 | |
ab5: 83 f8 01 cmp $0x1,%eax | |
ab8: 75 2f jne ae9 <trace_raw_output_x86_exceptions+0x49> | |
aba: 48 81 c3 90 10 00 00 add $0x1090,%rbx | |
ac1: 49 8b 56 08 mov 0x8(%r14),%rdx | |
ac5: 49 8b 4e 10 mov 0x10(%r14),%rcx | |
ac9: 4d 8b 46 18 mov 0x18(%r14),%r8 | |
acd: 48 c7 c6 00 00 00 00 mov $0x0,%rsi | |
ad0: R_X86_64_32S .rodata.str1.1+0x24 | |
ad4: 31 c0 xor %eax,%eax | |
ad6: 48 89 df mov %rbx,%rdi | |
ad9: e8 00 00 00 00 callq ade <trace_raw_output_x86_exceptions+0x3e> | |
ada: R_X86_64_PLT32 trace_seq_printf-0x4 | |
ade: 48 89 df mov %rbx,%rdi | |
ae1: 5b pop %rbx | |
ae2: 41 5e pop %r14 | |
ae4: e9 00 00 00 00 jmpq ae9 <trace_raw_output_x86_exceptions+0x49> | |
ae5: R_X86_64_PLT32 trace_handle_return-0x4 | |
ae9: 5b pop %rbx | |
aea: 41 5e pop %r14 | |
aec: c3 retq | |
aed: 0f 1f 00 nopl (%rax) | |
0000000000000af0 <bad_area_nosemaphore>: | |
af0: 31 c9 xor %ecx,%ecx | |
af2: 41 b8 01 00 00 00 mov $0x1,%r8d | |
af8: e9 73 06 00 00 jmpq 1170 <__bad_area_nosemaphore> | |
afd: 0f 1f 00 nopl (%rax) | |
0000000000000b00 <pgtable_bad>: | |
b00: 41 57 push %r15 | |
b02: 41 56 push %r14 | |
b04: 41 55 push %r13 | |
b06: 41 54 push %r12 | |
b08: 53 push %rbx | |
b09: 49 89 d5 mov %rdx,%r13 | |
b0c: 49 89 f4 mov %rsi,%r12 | |
b0f: 49 89 ff mov %rdi,%r15 | |
b12: e8 00 00 00 00 callq b17 <pgtable_bad+0x17> | |
b13: R_X86_64_PLT32 oops_begin-0x4 | |
b17: 49 89 c6 mov %rax,%r14 | |
b1a: 65 48 8b 1c 25 00 00 mov %gs:0x0,%rbx | |
b21: 00 00 | |
b1f: R_X86_64_32S current_task | |
b23: 48 8d b3 30 06 00 00 lea 0x630(%rbx),%rsi | |
b2a: 48 c7 c7 00 00 00 00 mov $0x0,%rdi | |
b2d: R_X86_64_32S .rodata.str1.1+0xd3 | |
b31: 31 c0 xor %eax,%eax | |
b33: 4c 89 ea mov %r13,%rdx | |
b36: e8 00 00 00 00 callq b3b <pgtable_bad+0x3b> | |
b37: R_X86_64_PLT32 printk-0x4 | |
b3b: 4c 89 ef mov %r13,%rdi | |
b3e: e8 ad 09 00 00 callq 14f0 <dump_pagetable> | |
b43: 4c 89 ab a8 09 00 00 mov %r13,0x9a8(%rbx) | |
b4a: 48 c7 83 b0 09 00 00 movq $0xe,0x9b0(%rbx) | |
b51: 0e 00 00 00 | |
b55: 4c 89 a3 b8 09 00 00 mov %r12,0x9b8(%rbx) | |
b5c: 48 c7 c7 00 00 00 00 mov $0x0,%rdi | |
b5f: R_X86_64_32S .rodata.str1.1+0xfe | |
b63: 4c 89 fe mov %r15,%rsi | |
b66: 4c 89 e2 mov %r12,%rdx | |
b69: e8 00 00 00 00 callq b6e <pgtable_bad+0x6e> | |
b6a: R_X86_64_PLT32 __die-0x4 | |
b6e: 31 c9 xor %ecx,%ecx | |
b70: 85 c0 test %eax,%eax | |
b72: 0f 94 c1 sete %cl | |
b75: 8d 14 c9 lea (%rcx,%rcx,8),%edx | |
b78: 4c 89 f7 mov %r14,%rdi | |
b7b: 4c 89 fe mov %r15,%rsi | |
b7e: 5b pop %rbx | |
b7f: 41 5c pop %r12 | |
b81: 41 5d pop %r13 | |
b83: 41 5e pop %r14 | |
b85: 41 5f pop %r15 | |
b87: e9 00 00 00 00 jmpq b8c <pgtable_bad+0x8c> | |
b88: R_X86_64_PLT32 oops_end-0x4 | |
b8c: 0f 1f 40 00 nopl 0x0(%rax) | |
0000000000000b90 <bad_area>: | |
b90: 41 57 push %r15 | |
b92: 41 56 push %r14 | |
b94: 53 push %rbx | |
b95: 49 89 d6 mov %rdx,%r14 | |
b98: 49 89 f7 mov %rsi,%r15 | |
b9b: 48 89 fb mov %rdi,%rbx | |
b9e: 65 48 8b 04 25 00 00 mov %gs:0x0,%rax | |
ba5: 00 00 | |
ba3: R_X86_64_32S current_task | |
ba7: 48 8b b8 d8 03 00 00 mov 0x3d8(%rax),%rdi | |
bae: 48 83 c7 70 add $0x70,%rdi | |
bb2: e8 00 00 00 00 callq bb7 <bad_area+0x27> | |
bb3: R_X86_64_PLT32 up_read-0x4 | |
bb7: 31 c9 xor %ecx,%ecx | |
bb9: 41 b8 01 00 00 00 mov $0x1,%r8d | |
bbf: 48 89 df mov %rbx,%rdi | |
bc2: 4c 89 fe mov %r15,%rsi | |
bc5: 4c 89 f2 mov %r14,%rdx | |
bc8: 5b pop %rbx | |
bc9: 41 5e pop %r14 | |
bcb: 41 5f pop %r15 | |
bcd: e9 9e 05 00 00 jmpq 1170 <__bad_area_nosemaphore> | |
bd2: 66 66 2e 0f 1f 84 00 data16 nopw %cs:0x0(%rax,%rax,1) | |
bd9: 00 00 00 00 | |
bdd: 0f 1f 00 nopl (%rax) | |
0000000000000be0 <bad_area_access_error>: | |
be0: 55 push %rbp | |
be1: 41 57 push %r15 | |
be3: 41 56 push %r14 | |
be5: 53 push %rbx | |
be6: 49 89 d6 mov %rdx,%r14 | |
be9: 48 89 f3 mov %rsi,%rbx | |
bec: 49 89 ff mov %rdi,%r15 | |
bef: f6 04 25 00 00 00 00 testb $0x10,0x0 | |
bf6: 10 | |
bf2: R_X86_64_32S boot_cpu_data+0x54 | |
bf7: 74 28 je c21 <bad_area_access_error+0x41> | |
bf9: 49 89 c8 mov %rcx,%r8 | |
bfc: f6 c3 20 test $0x20,%bl | |
bff: 75 4c jne c4d <bad_area_access_error+0x6d> | |
c01: f6 c3 10 test $0x10,%bl | |
c04: 75 1b jne c21 <bad_area_access_error+0x41> | |
c06: 65 48 8b 04 25 00 00 mov %gs:0x0,%rax | |
c0d: 00 00 | |
c0b: R_X86_64_32S current_task | |
c0f: 48 8b 80 d8 03 00 00 mov 0x3d8(%rax),%rax | |
c16: 48 85 c0 test %rax,%rax | |
c19: 74 06 je c21 <bad_area_access_error+0x41> | |
c1b: 49 3b 40 40 cmp 0x40(%r8),%rax | |
c1f: 74 6c je c8d <bad_area_access_error+0xad> | |
c21: 65 48 8b 04 25 00 00 mov %gs:0x0,%rax | |
c28: 00 00 | |
c26: R_X86_64_32S current_task | |
c2a: 48 8b b8 d8 03 00 00 mov 0x3d8(%rax),%rdi | |
c31: 48 83 c7 70 add $0x70,%rdi | |
c35: e8 00 00 00 00 callq c3a <bad_area_access_error+0x5a> | |
c36: R_X86_64_PLT32 up_read-0x4 | |
c3a: 31 c9 xor %ecx,%ecx | |
c3c: 41 b8 02 00 00 00 mov $0x2,%r8d | |
c42: 4c 89 ff mov %r15,%rdi | |
c45: 48 89 de mov %rbx,%rsi | |
c48: 4c 89 f2 mov %r14,%rdx | |
c4b: eb 35 jmp c82 <bad_area_access_error+0xa2> | |
c4d: 49 83 c0 50 add $0x50,%r8 | |
c51: 41 8b 68 04 mov 0x4(%r8),%ebp | |
c55: 83 e5 0f and $0xf,%ebp | |
c58: 65 48 8b 04 25 00 00 mov %gs:0x0,%rax | |
c5f: 00 00 | |
c5d: R_X86_64_32S current_task | |
c61: 48 8b b8 d8 03 00 00 mov 0x3d8(%rax),%rdi | |
c68: 48 83 c7 70 add $0x70,%rdi | |
c6c: e8 00 00 00 00 callq c71 <bad_area_access_error+0x91> | |
c6d: R_X86_64_PLT32 up_read-0x4 | |
c71: 41 b8 04 00 00 00 mov $0x4,%r8d | |
c77: 4c 89 ff mov %r15,%rdi | |
c7a: 48 89 de mov %rbx,%rsi | |
c7d: 4c 89 f2 mov %r14,%rdx | |
c80: 89 e9 mov %ebp,%ecx | |
c82: 5b pop %rbx | |
c83: 41 5e pop %r14 | |
c85: 41 5f pop %r15 | |
c87: 5d pop %rbp | |
c88: e9 e3 04 00 00 jmpq 1170 <__bad_area_nosemaphore> | |
c8d: 49 8b 70 50 mov 0x50(%r8),%rsi | |
c91: 31 c0 xor %eax,%eax | |
c93: f6 04 25 00 00 00 00 testb $0x10,0x0 | |
c9a: 10 | |
c96: R_X86_64_32S boot_cpu_data+0x54 | |
c9b: 74 05 je ca2 <bad_area_access_error+0xc2> | |
c9d: 31 c9 xor %ecx,%ecx | |
c9f: 0f 01 ee rdpkru | |
ca2: 49 83 c0 50 add $0x50,%r8 | |
ca6: 48 c1 ee 1f shr $0x1f,%rsi | |
caa: 83 e6 1e and $0x1e,%esi | |
cad: 0f a3 f0 bt %esi,%eax | |
cb0: 72 9f jb c51 <bad_area_access_error+0x71> | |
cb2: f6 c3 02 test $0x2,%bl | |
cb5: 0f 84 66 ff ff ff je c21 <bad_area_access_error+0x41> | |
cbb: ba 03 00 00 00 mov $0x3,%edx | |
cc0: 89 f1 mov %esi,%ecx | |
cc2: d3 e2 shl %cl,%edx | |
cc4: 85 d0 test %edx,%eax | |
cc6: 75 89 jne c51 <bad_area_access_error+0x71> | |
cc8: e9 54 ff ff ff jmpq c21 <bad_area_access_error+0x41> | |
ccd: 0f 1f 00 nopl (%rax) | |
0000000000000cd0 <no_context>: | |
cd0: 55 push %rbp | |
cd1: 41 57 push %r15 | |
cd3: 41 56 push %r14 | |
cd5: 41 55 push %r13 | |
cd7: 41 54 push %r12 | |
cd9: 53 push %rbx | |
cda: 48 83 ec 20 sub $0x20,%rsp | |
cde: 44 89 c5 mov %r8d,%ebp | |
ce1: 89 cb mov %ecx,%ebx | |
ce3: 49 89 d5 mov %rdx,%r13 | |
ce6: 49 89 f7 mov %rsi,%r15 | |
ce9: 49 89 fe mov %rdi,%r14 | |
cec: 65 48 8b 04 25 28 00 mov %gs:0x28,%rax | |
cf3: 00 00 | |
cf5: 48 89 44 24 18 mov %rax,0x18(%rsp) | |
cfa: 65 4c 8b 24 25 00 00 mov %gs:0x0,%r12 | |
d01: 00 00 | |
cff: R_X86_64_32S current_task | |
d03: be 0e 00 00 00 mov $0xe,%esi | |
d08: 4c 89 fa mov %r15,%rdx | |
d0b: 4c 89 e9 mov %r13,%rcx | |
d0e: e8 00 00 00 00 callq d13 <no_context+0x43> | |
d0f: R_X86_64_PLT32 fixup_exception-0x4 | |
d13: 85 c0 test %eax,%eax | |
d15: 74 5f je d76 <no_context+0xa6> | |
d17: 65 8b 04 25 00 00 00 mov %gs:0x0,%eax | |
d1e: 00 | |
d1b: R_X86_64_32S __preempt_count | |
d1f: a9 00 ff 1f 00 test $0x1fff00,%eax | |
d24: 0f 85 54 01 00 00 jne e7e <no_context+0x1ae> | |
d2a: 85 db test %ebx,%ebx | |
d2c: 0f 84 4c 01 00 00 je e7e <no_context+0x1ae> | |
d32: 41 8a 84 24 e0 09 00 mov 0x9e0(%r12),%al | |
d39: 00 | |
d3a: 24 01 and $0x1,%al | |
d3c: 0f 84 3c 01 00 00 je e7e <no_context+0x1ae> | |
d42: 49 c7 84 24 b0 09 00 movq $0xe,0x9b0(%r12) | |
d49: 00 0e 00 00 00 | |
d4e: 49 83 cf 04 or $0x4,%r15 | |
d52: 4d 89 bc 24 b8 09 00 mov %r15,0x9b8(%r12) | |
d59: 00 | |
d5a: 4d 89 ac 24 a8 09 00 mov %r13,0x9a8(%r12) | |
d61: 00 | |
d62: 89 df mov %ebx,%edi | |
d64: 89 ee mov %ebp,%esi | |
d66: 4c 89 ea mov %r13,%rdx | |
d69: 4c 89 e1 mov %r12,%rcx | |
d6c: e8 00 00 00 00 callq d71 <no_context+0xa1> | |
d6d: R_X86_64_PLT32 force_sig_fault-0x4 | |
d71: e9 08 01 00 00 jmpq e7e <no_context+0x1ae> | |
d76: 48 8b 04 25 00 00 00 mov 0x0,%rax | |
d7d: 00 | |
d7a: R_X86_64_32S vmalloc_base | |
d7e: 4c 39 e8 cmp %r13,%rax | |
d81: 77 6f ja df2 <no_context+0x122> | |
d83: 48 b9 ff ff ff ff ff movabs $0x1fffffffffff,%rcx | |
d8a: 1f 00 00 | |
d8d: 48 01 c8 add %rcx,%rax | |
d90: 4c 39 e8 cmp %r13,%rax | |
d93: 76 5d jbe df2 <no_context+0x122> | |
d95: 49 8b 44 24 18 mov 0x18(%r12),%rax | |
d9a: 4c 89 e9 mov %r13,%rcx | |
d9d: 48 f7 d1 not %rcx | |
da0: 48 01 c1 add %rax,%rcx | |
da3: 48 81 f9 00 10 00 00 cmp $0x1000,%rcx | |
daa: 72 13 jb dbf <no_context+0xef> | |
dac: 49 8d 8d 00 c0 ff ff lea -0x4000(%r13),%rcx | |
db3: 48 29 c1 sub %rax,%rcx | |
db6: 48 81 f9 ff 0f 00 00 cmp $0xfff,%rcx | |
dbd: 77 33 ja df2 <no_context+0x122> | |
dbf: 65 48 8b 04 25 00 00 mov %gs:0x0,%rax | |
dc6: 00 00 | |
dc4: R_X86_64_32S orig_ist+0x8 | |
dc8: 48 83 c0 f8 add $0xfffffffffffffff8,%rax | |
dcc: 48 89 44 24 08 mov %rax,0x8(%rsp) | |
dd1: 48 c7 c7 00 00 00 00 mov $0x0,%rdi | |
dd4: R_X86_64_32S .rodata.str1.1+0x149 | |
dd8: 4c 89 f6 mov %r14,%rsi | |
ddb: 4c 89 ea mov %r13,%rdx | |
dde: 48 8b 64 24 08 mov 0x8(%rsp),%rsp | |
de3: e8 00 00 00 00 callq de8 <no_context+0x118> | |
de4: R_X86_64_PLT32 handle_stack_overflow-0x4 | |
de8: eb fe jmp de8 <no_context+0x118> | |
dea: 66 0f 1f 44 00 00 nopw 0x0(%rax,%rax,1) | |
df0: eb fe jmp df0 <no_context+0x120> | |
df2: 4c 89 f7 mov %r14,%rdi | |
df5: 4c 89 fe mov %r15,%rsi | |
df8: e8 53 05 00 00 callq 1350 <is_prefetch> | |
dfd: 85 c0 test %eax,%eax | |
dff: 75 7d jne e7e <no_context+0x1ae> | |
e01: 80 3c 25 00 00 00 00 cmpb $0x2,0x0 | |
e08: 02 | |
e04: R_X86_64_32S boot_cpu_data+0x1 | |
e09: 0f 85 92 00 00 00 jne ea1 <no_context+0x1d1> | |
e0f: 80 3c 25 00 00 00 00 cmpb $0xf,0x0 | |
e16: 0f | |
e12: R_X86_64_32S boot_cpu_data | |
e17: 0f 85 84 00 00 00 jne ea1 <no_context+0x1d1> | |
e1d: 4c 89 e8 mov %r13,%rax | |
e20: 48 c1 e8 20 shr $0x20,%rax | |
e24: 75 7b jne ea1 <no_context+0x1d1> | |
e26: 4d 39 ae 80 00 00 00 cmp %r13,0x80(%r14) | |
e2d: 75 72 jne ea1 <no_context+0x1d1> | |
e2f: 48 bb 00 00 00 00 ff movabs $0xffffffff00000000,%rbx | |
e36: ff ff ff | |
e39: 4c 09 eb or %r13,%rbx | |
e3c: 48 c7 c0 00 00 00 00 mov $0x0,%rax | |
e3f: R_X86_64_32S _stext | |
e43: 48 39 c3 cmp %rax,%rbx | |
e46: 0f 93 c0 setae %al | |
e49: 48 c7 c1 00 00 00 00 mov $0x0,%rcx | |
e4c: R_X86_64_32S _etext | |
e50: 48 39 cb cmp %rcx,%rbx | |
e53: 0f 96 c1 setbe %cl | |
e56: 84 c8 test %cl,%al | |
e58: 75 0f jne e69 <no_context+0x199> | |
e5a: 48 8d 83 00 00 00 40 lea 0x40000000(%rbx),%rax | |
e61: 48 3d 00 00 00 3f cmp $0x3f000000,%rax | |
e67: 77 38 ja ea1 <no_context+0x1d1> | |
e69: 80 3c 25 00 00 00 00 cmpb $0x0,0x0 | |
e70: 00 | |
e6c: R_X86_64_32S .data..read_mostly | |
e71: 0f 84 ae 01 00 00 je 1025 <no_context+0x355> | |
e77: 49 89 9e 80 00 00 00 mov %rbx,0x80(%r14) | |
e7e: 65 48 8b 04 25 28 00 mov %gs:0x28,%rax | |
e85: 00 00 | |
e87: 48 3b 44 24 18 cmp 0x18(%rsp),%rax | |
e8c: 0f 85 ae 01 00 00 jne 1040 <no_context+0x370> | |
e92: 48 83 c4 20 add $0x20,%rsp | |
e96: 5b pop %rbx | |
e97: 41 5c pop %r12 | |
e99: 41 5d pop %r13 | |
e9b: 41 5e pop %r14 | |
e9d: 41 5f pop %r15 | |
e9f: 5d pop %rbp | |
ea0: c3 retq | |
ea1: 4c 89 ef mov %r13,%rdi | |
ea4: e8 00 00 00 00 callq ea9 <no_context+0x1d9> | |
ea5: R_X86_64_PLT32 efi_recover_from_page_fault-0x4 | |
ea9: e8 00 00 00 00 callq eae <no_context+0x1de> | |
eaa: R_X86_64_PLT32 oops_begin-0x4 | |
eae: 48 89 c5 mov %rax,%rbp | |
eb1: e8 00 00 00 00 callq eb6 <no_context+0x1e6> | |
eb2: R_X86_64_PLT32 oops_may_print-0x4 | |
eb6: 85 c0 test %eax,%eax | |
eb8: 0f 84 f0 00 00 00 je fae <no_context+0x2de> | |
ebe: 41 f6 c7 10 test $0x10,%r15b | |
ec2: 0f 84 b4 00 00 00 je f7c <no_context+0x2ac> | |
ec8: 48 89 2c 24 mov %rbp,(%rsp) | |
ecc: 0f 20 d8 mov %cr3,%rax | |
ecf: 48 b9 00 f0 ff ff ff movabs $0x7ffffffffffff000,%rcx | |
ed6: ff ff 7f | |
ed9: 48 21 c1 and %rax,%rcx | |
edc: 48 03 0c 25 00 00 00 add 0x0,%rcx | |
ee3: 00 | |
ee0: R_X86_64_32S page_offset_base | |
ee4: 4c 89 ed mov %r13,%rbp | |
ee7: 48 c1 ed 24 shr $0x24,%rbp | |
eeb: 81 e5 f8 0f 00 00 and $0xff8,%ebp | |
ef1: 48 01 cd add %rcx,%rbp | |
ef4: 48 8d 54 24 14 lea 0x14(%rsp),%rdx | |
ef9: 48 89 ef mov %rbp,%rdi | |
efc: 4c 89 ee mov %r13,%rsi | |
eff: e8 00 00 00 00 callq f04 <no_context+0x234> | |
f00: R_X86_64_PLT32 lookup_address_in_pgd-0x4 | |
f04: 48 85 c0 test %rax,%rax | |
f07: 74 6f je f78 <no_context+0x2a8> | |
f09: 48 89 c3 mov %rax,%rbx | |
f0c: 48 8b 00 mov (%rax),%rax | |
f0f: 89 c1 mov %eax,%ecx | |
f11: 81 e1 01 01 00 00 and $0x101,%ecx | |
f17: 48 85 c0 test %rax,%rax | |
f1a: 79 29 jns f45 <no_context+0x275> | |
f1c: 48 85 c9 test %rcx,%rcx | |
f1f: 74 24 je f45 <no_context+0x275> | |
f21: 49 8b 84 24 28 06 00 mov 0x628(%r12),%rax | |
f28: 00 | |
f29: 8b 70 04 mov 0x4(%rax),%esi | |
f2c: 48 c7 c7 00 00 00 00 mov $0x0,%rdi | |
f2f: R_X86_64_32S .rodata.str1.1+0x1ac | |
f33: 31 c0 xor %eax,%eax | |
f35: e8 00 00 00 00 callq f3a <no_context+0x26a> | |
f36: R_X86_64_PLT32 printk-0x4 | |
f3a: 48 8b 03 mov (%rbx),%rax | |
f3d: 89 c1 mov %eax,%ecx | |
f3f: 81 e1 01 01 00 00 and $0x101,%ecx | |
f45: 48 85 c9 test %rcx,%rcx | |
f48: 74 2e je f78 <no_context+0x2a8> | |
f4a: 48 85 c0 test %rax,%rax | |
f4d: 78 29 js f78 <no_context+0x2a8> | |
f4f: f6 45 00 04 testb $0x4,0x0(%rbp) | |
f53: 74 23 je f78 <no_context+0x2a8> | |
f55: 0f 20 e0 mov %cr4,%rax | |
f58: a9 00 00 10 00 test $0x100000,%eax | |
f5d: 74 19 je f78 <no_context+0x2a8> | |
f5f: 49 8b 84 24 28 06 00 mov 0x628(%r12),%rax | |
f66: 00 | |
f67: 8b 70 04 mov 0x4(%rax),%esi | |
f6a: 48 c7 c7 00 00 00 00 mov $0x0,%rdi | |
f6d: R_X86_64_32S .rodata.str1.1+0x1f6 | |
f71: 31 c0 xor %eax,%eax | |
f73: e8 00 00 00 00 callq f78 <no_context+0x2a8> | |
f74: R_X86_64_PLT32 printk-0x4 | |
f78: 48 8b 2c 24 mov (%rsp),%rbp | |
f7c: 49 81 fd 00 10 00 00 cmp $0x1000,%r13 | |
f83: 48 c7 c0 00 00 00 00 mov $0x0,%rax | |
f86: R_X86_64_32S .rodata.str1.1+0x256 | |
f8a: 48 c7 c6 00 00 00 00 mov $0x0,%rsi | |
f8d: R_X86_64_32S .rodata.str1.1+0x26f | |
f91: 48 0f 42 f0 cmovb %rax,%rsi | |
f95: 48 c7 c7 00 00 00 00 mov $0x0,%rdi | |
f98: R_X86_64_32S .rodata.str1.1+0x22c | |
f9c: 31 c0 xor %eax,%eax | |
f9e: 4c 89 ea mov %r13,%rdx | |
fa1: e8 00 00 00 00 callq fa6 <no_context+0x2d6> | |
fa2: R_X86_64_PLT32 printk-0x4 | |
fa6: 4c 89 ef mov %r13,%rdi | |
fa9: e8 42 05 00 00 callq 14f0 <dump_pagetable> | |
fae: 49 8b 44 24 18 mov 0x18(%r12),%rax | |
fb3: 48 81 38 9d 6e ac 57 cmpq $0x57ac6e9d,(%rax) | |
fba: 74 0e je fca <no_context+0x2fa> | |
fbc: 48 c7 c7 00 00 00 00 mov $0x0,%rdi | |
fbf: R_X86_64_32S .rodata.str1.1+0x16c | |
fc3: 31 c0 xor %eax,%eax | |
fc5: e8 00 00 00 00 callq fca <no_context+0x2fa> | |
fc6: R_X86_64_PLT32 printk-0x4 | |
fca: 4d 89 ac 24 a8 09 00 mov %r13,0x9a8(%r12) | |
fd1: 00 | |
fd2: 49 c7 84 24 b0 09 00 movq $0xe,0x9b0(%r12) | |
fd9: 00 0e 00 00 00 | |
fde: 4d 89 bc 24 b8 09 00 mov %r15,0x9b8(%r12) | |
fe5: 00 | |
fe6: 48 c7 c7 00 00 00 00 mov $0x0,%rdi | |
fe9: R_X86_64_32S .rodata.str1.1+0x198 | |
fed: 4c 89 f6 mov %r14,%rsi | |
ff0: 4c 89 fa mov %r15,%rdx | |
ff3: e8 00 00 00 00 callq ff8 <no_context+0x328> | |
ff4: R_X86_64_PLT32 __die-0x4 | |
ff8: 31 c9 xor %ecx,%ecx | |
ffa: 85 c0 test %eax,%eax | |
ffc: 0f 94 c1 sete %cl | |
fff: 8d 1c c9 lea (%rcx,%rcx,8),%ebx | |
1002: 48 c7 c7 00 00 00 00 mov $0x0,%rdi | |
1005: R_X86_64_32S .rodata.str1.1+0x19d | |
1009: 31 c0 xor %eax,%eax | |
100b: 4c 89 ee mov %r13,%rsi | |
100e: e8 00 00 00 00 callq 1013 <no_context+0x343> | |
100f: R_X86_64_PLT32 printk-0x4 | |
1013: 48 89 ef mov %rbp,%rdi | |
1016: 4c 89 f6 mov %r14,%rsi | |
1019: 89 da mov %ebx,%edx | |
101b: e8 00 00 00 00 callq 1020 <no_context+0x350> | |
101c: R_X86_64_PLT32 oops_end-0x4 | |
1020: e9 59 fe ff ff jmpq e7e <no_context+0x1ae> | |
1025: c6 04 25 00 00 00 00 movb $0x1,0x0 | |
102c: 01 | |
1028: R_X86_64_32S .data..read_mostly | |
102d: 48 c7 c7 00 00 00 00 mov $0x0,%rdi | |
1030: R_X86_64_32S .rodata+0x10 | |
1034: 31 c0 xor %eax,%eax | |
1036: e8 00 00 00 00 callq 103b <no_context+0x36b> | |
1037: R_X86_64_PLT32 printk-0x4 | |
103b: e9 37 fe ff ff jmpq e77 <no_context+0x1a7> | |
1040: e8 00 00 00 00 callq 1045 <no_context+0x375> | |
1041: R_X86_64_PLT32 __stack_chk_fail-0x4 | |
1045: 66 66 2e 0f 1f 84 00 data16 nopw %cs:0x0(%rax,%rax,1) | |
104c: 00 00 00 00 | |
0000000000001050 <mm_fault_error>: | |
1050: 41 57 push %r15 | |
1052: 41 56 push %r14 | |
1054: 53 push %rbx | |
1055: 48 83 ec 10 sub $0x10,%rsp | |
1059: 49 89 d6 mov %rdx,%r14 | |
105c: 49 89 f7 mov %rsi,%r15 | |
105f: 65 48 8b 04 25 28 00 mov %gs:0x28,%rax | |
1066: 00 00 | |
1068: 48 89 44 24 08 mov %rax,0x8(%rsp) | |
106d: 65 48 8b 1c 25 00 00 mov %gs:0x0,%rbx | |
1074: 00 00 | |
1072: R_X86_64_32S current_task | |
1076: 48 0f ba 23 02 btq $0x2,(%rbx) | |
107b: 0f 92 44 24 07 setb 0x7(%rsp) | |
1080: 80 7c 24 07 00 cmpb $0x0,0x7(%rsp) | |
1085: 74 22 je 10a9 <mm_fault_error+0x59> | |
1087: 41 f6 c7 04 test $0x4,%r15b | |
108b: 0f 94 c0 sete %al | |
108e: 75 20 jne 10b0 <mm_fault_error+0x60> | |
1090: 48 8b 93 b0 06 00 00 mov 0x6b0(%rbx),%rdx | |
1097: 81 e2 00 01 00 00 and $0x100,%edx | |
109d: 48 85 d2 test %rdx,%rdx | |
10a0: 74 0e je 10b0 <mm_fault_error+0x60> | |
10a2: 31 c9 xor %ecx,%ecx | |
10a4: 45 31 c0 xor %r8d,%r8d | |
10a7: eb 31 jmp 10da <mm_fault_error+0x8a> | |
10a9: 41 f6 c7 04 test $0x4,%r15b | |
10ad: 0f 94 c0 sete %al | |
10b0: f6 c1 01 test $0x1,%cl | |
10b3: 75 16 jne 10cb <mm_fault_error+0x7b> | |
10b5: f6 c1 32 test $0x32,%cl | |
10b8: 74 34 je 10ee <mm_fault_error+0x9e> | |
10ba: 84 c0 test %al,%al | |
10bc: 74 44 je 1102 <mm_fault_error+0xb2> | |
10be: b9 07 00 00 00 mov $0x7,%ecx | |
10c3: 41 b8 02 00 00 00 mov $0x2,%r8d | |
10c9: eb 0f jmp 10da <mm_fault_error+0x8a> | |
10cb: 84 c0 test %al,%al | |
10cd: 74 18 je 10e7 <mm_fault_error+0x97> | |
10cf: b9 0b 00 00 00 mov $0xb,%ecx | |
10d4: 41 b8 01 00 00 00 mov $0x1,%r8d | |
10da: 4c 89 fe mov %r15,%rsi | |
10dd: 4c 89 f2 mov %r14,%rdx | |
10e0: e8 eb fb ff ff callq cd0 <no_context> | |
10e5: eb 62 jmp 1149 <mm_fault_error+0xf9> | |
10e7: e8 00 00 00 00 callq 10ec <mm_fault_error+0x9c> | |
10e8: R_X86_64_PLT32 pagefault_out_of_memory-0x4 | |
10ec: eb 5b jmp 1149 <mm_fault_error+0xf9> | |
10ee: f6 c1 40 test $0x40,%cl | |
10f1: 75 4b jne 113e <mm_fault_error+0xee> | |
10f3: 0f 0b ud2 | |
10f5: 66 66 2e 0f 1f 84 00 data16 nopw %cs:0x0(%rax,%rax,1) | |
10fc: 00 00 00 00 | |
1100: eb fe jmp 1100 <mm_fault_error+0xb0> | |
1102: 4c 89 fe mov %r15,%rsi | |
1105: e8 46 02 00 00 callq 1350 <is_prefetch> | |
110a: 85 c0 test %eax,%eax | |
110c: 75 3b jne 1149 <mm_fault_error+0xf9> | |
110e: 4c 89 b3 a8 09 00 00 mov %r14,0x9a8(%rbx) | |
1115: 4c 89 bb b8 09 00 00 mov %r15,0x9b8(%rbx) | |
111c: 48 c7 83 b0 09 00 00 movq $0xe,0x9b0(%rbx) | |
1123: 0e 00 00 00 | |
1127: bf 07 00 00 00 mov $0x7,%edi | |
112c: be 02 00 00 00 mov $0x2,%esi | |
1131: 4c 89 f2 mov %r14,%rdx | |
1134: 48 89 d9 mov %rbx,%rcx | |
1137: e8 00 00 00 00 callq 113c <mm_fault_error+0xec> | |
1138: R_X86_64_PLT32 force_sig_fault-0x4 | |
113c: eb 0b jmp 1149 <mm_fault_error+0xf9> | |
113e: 4c 89 fe mov %r15,%rsi | |
1141: 4c 89 f2 mov %r14,%rdx | |
1144: e8 a7 f9 ff ff callq af0 <bad_area_nosemaphore> | |
1149: 65 48 8b 04 25 28 00 mov %gs:0x28,%rax | |
1150: 00 00 | |
1152: 48 3b 44 24 08 cmp 0x8(%rsp),%rax | |
1157: 75 0a jne 1163 <mm_fault_error+0x113> | |
1159: 48 83 c4 10 add $0x10,%rsp | |
115d: 5b pop %rbx | |
115e: 41 5e pop %r14 | |
1160: 41 5f pop %r15 | |
1162: c3 retq | |
1163: e8 00 00 00 00 callq 1168 <mm_fault_error+0x118> | |
1164: R_X86_64_PLT32 __stack_chk_fail-0x4 | |
1168: 0f 1f 84 00 00 00 00 nopl 0x0(%rax,%rax,1) | |
116f: 00 | |
0000000000001170 <__bad_area_nosemaphore>: | |
1170: 55 push %rbp | |
1171: 41 57 push %r15 | |
1173: 41 56 push %r14 | |
1175: 41 55 push %r13 | |
1177: 41 54 push %r12 | |
1179: 53 push %rbx | |
117a: 50 push %rax | |
117b: 45 89 c4 mov %r8d,%r12d | |
117e: 49 89 d5 mov %rdx,%r13 | |
1181: 48 89 f3 mov %rsi,%rbx | |
1184: 48 89 fd mov %rdi,%rbp | |
1187: 65 4c 8b 34 25 00 00 mov %gs:0x0,%r14 | |
118e: 00 00 | |
118c: R_X86_64_32S current_task | |
1190: f6 c3 04 test $0x4,%bl | |
1193: 75 24 jne 11b9 <__bad_area_nosemaphore+0x49> | |
1195: b9 0b 00 00 00 mov $0xb,%ecx | |
119a: 48 89 ef mov %rbp,%rdi | |
119d: 48 89 de mov %rbx,%rsi | |
11a0: 4c 89 ea mov %r13,%rdx | |
11a3: 45 89 e0 mov %r12d,%r8d | |
11a6: 48 83 c4 08 add $0x8,%rsp | |
11aa: 5b pop %rbx | |
11ab: 41 5c pop %r12 | |
11ad: 41 5d pop %r13 | |
11af: 41 5e pop %r14 | |
11b1: 41 5f pop %r15 | |
11b3: 5d pop %rbp | |
11b4: e9 17 fb ff ff jmpq cd0 <no_context> | |
11b9: 41 89 cf mov %ecx,%r15d | |
11bc: fb sti | |
11bd: 48 89 ef mov %rbp,%rdi | |
11c0: 48 89 de mov %rbx,%rsi | |
11c3: e8 88 01 00 00 callq 1350 <is_prefetch> | |
11c8: 85 c0 test %eax,%eax | |
11ca: 75 21 jne 11ed <__bad_area_nosemaphore+0x7d> | |
11cc: 48 8b 85 88 00 00 00 mov 0x88(%rbp),%rax | |
11d3: 48 83 f8 23 cmp $0x23,%rax | |
11d7: 0f 94 c1 sete %cl | |
11da: 4c 89 ea mov %r13,%rdx | |
11dd: 48 c1 ea 20 shr $0x20,%rdx | |
11e1: 74 19 je 11fc <__bad_area_nosemaphore+0x8c> | |
11e3: 83 e0 04 and $0x4,%eax | |
11e6: c1 e8 02 shr $0x2,%eax | |
11e9: 08 c1 or %al,%cl | |
11eb: 74 0f je 11fc <__bad_area_nosemaphore+0x8c> | |
11ed: 48 83 c4 08 add $0x8,%rsp | |
11f1: 5b pop %rbx | |
11f2: 41 5c pop %r12 | |
11f4: 41 5d pop %r13 | |
11f6: 41 5e pop %r14 | |
11f8: 41 5f pop %r15 | |
11fa: 5d pop %rbp | |
11fb: c3 retq | |
11fc: f6 c3 10 test $0x10,%bl | |
11ff: 74 15 je 1216 <__bad_area_nosemaphore+0xa6> | |
1201: 4c 89 e8 mov %r13,%rax | |
1204: 48 25 00 f0 ff ff and $0xfffffffffffff000,%rax | |
120a: 48 3d 00 00 60 ff cmp $0xffffffffff600000,%rax | |
1210: 0f 84 1a 01 00 00 je 1330 <__bad_area_nosemaphore+0x1c0> | |
1216: 48 b8 ff ef ff ff ff movabs $0x7fffffffefff,%rax | |
121d: 7f 00 00 | |
1220: 31 c9 xor %ecx,%ecx | |
1222: 49 39 c5 cmp %rax,%r13 | |
1225: 0f 97 c1 seta %cl | |
1228: 48 09 d9 or %rbx,%rcx | |
122b: 48 89 0c 24 mov %rcx,(%rsp) | |
122f: 83 3c 25 00 00 00 00 cmpl $0x0,0x0 | |
1236: 00 | |
1232: R_X86_64_32S show_unhandled_signals | |
1237: 74 3b je 1274 <__bad_area_nosemaphore+0x104> | |
1239: 41 83 be 88 04 00 00 cmpl $0x1,0x488(%r14) | |
1240: 01 | |
1241: 48 c7 c0 00 00 00 00 mov $0x0,%rax | |
1244: R_X86_64_32S .rodata.str1.1+0x80 | |
1248: 48 c7 c3 00 00 00 00 mov $0x0,%rbx | |
124b: R_X86_64_32S .rodata.str1.1+0x83 | |
124f: 48 0f 4f d8 cmovg %rax,%rbx | |
1253: be 0b 00 00 00 mov $0xb,%esi | |
1258: 4c 89 f7 mov %r14,%rdi | |
125b: e8 00 00 00 00 callq 1260 <__bad_area_nosemaphore+0xf0> | |
125c: R_X86_64_PLT32 unhandled_signal-0x4 | |
1260: 84 c0 test %al,%al | |
1262: 74 10 je 1274 <__bad_area_nosemaphore+0x104> | |
1264: 48 c7 c7 00 00 00 00 mov $0x0,%rdi | |
1267: R_X86_64_32S .rodata.str1.1+0x86 | |
126b: e8 00 00 00 00 callq 1270 <__bad_area_nosemaphore+0x100> | |
126c: R_X86_64_PLT32 __printk_ratelimit-0x4 | |
1270: 85 c0 test %eax,%eax | |
1272: 75 4f jne 12c3 <__bad_area_nosemaphore+0x153> | |
1274: 4d 89 ae a8 09 00 00 mov %r13,0x9a8(%r14) | |
127b: 48 8b 04 24 mov (%rsp),%rax | |
127f: 49 89 86 b8 09 00 00 mov %rax,0x9b8(%r14) | |
1286: 49 c7 86 b0 09 00 00 movq $0xe,0x9b0(%r14) | |
128d: 0e 00 00 00 | |
1291: 41 83 fc 04 cmp $0x4,%r12d | |
1295: 75 0b jne 12a2 <__bad_area_nosemaphore+0x132> | |
1297: 4c 89 ef mov %r13,%rdi | |
129a: 44 89 fe mov %r15d,%esi | |
129d: e8 00 00 00 00 callq 12a2 <__bad_area_nosemaphore+0x132> | |
129e: R_X86_64_PLT32 force_sig_pkuerr-0x4 | |
12a2: bf 0b 00 00 00 mov $0xb,%edi | |
12a7: 44 89 e6 mov %r12d,%esi | |
12aa: 4c 89 ea mov %r13,%rdx | |
12ad: 4c 89 f1 mov %r14,%rcx | |
12b0: 48 83 c4 08 add $0x8,%rsp | |
12b4: 5b pop %rbx | |
12b5: 41 5c pop %r12 | |
12b7: 41 5d pop %r13 | |
12b9: 41 5e pop %r14 | |
12bb: 41 5f pop %r15 | |
12bd: 5d pop %rbp | |
12be: e9 00 00 00 00 jmpq 12c3 <__bad_area_nosemaphore+0x153> | |
12bf: R_X86_64_PLT32 force_sig_fault-0x4 | |
12c3: 4c 89 f2 mov %r14,%rdx | |
12c6: 48 81 c2 30 06 00 00 add $0x630,%rdx | |
12cd: 41 8b 8e 88 04 00 00 mov 0x488(%r14),%ecx | |
12d4: 4c 8b 8d 80 00 00 00 mov 0x80(%rbp),%r9 | |
12db: 48 c7 c7 00 00 00 00 mov $0x0,%rdi | |
12de: R_X86_64_32S .rodata.str1.1+0x96 | |
12e2: b8 00 00 00 00 mov $0x0,%eax | |
12e7: 48 89 de mov %rbx,%rsi | |
12ea: 4d 89 e8 mov %r13,%r8 | |
12ed: ff 34 24 pushq (%rsp) | |
12f0: ff b5 98 00 00 00 pushq 0x98(%rbp) | |
12f6: e8 00 00 00 00 callq 12fb <__bad_area_nosemaphore+0x18b> | |
12f7: R_X86_64_PLT32 printk-0x4 | |
12fb: 48 83 c4 10 add $0x10,%rsp | |
12ff: 48 8b b5 80 00 00 00 mov 0x80(%rbp),%rsi | |
1306: 48 c7 c7 00 00 00 00 mov $0x0,%rdi | |
1309: R_X86_64_32S .rodata.str1.1+0xc8 | |
130d: e8 00 00 00 00 callq 1312 <__bad_area_nosemaphore+0x1a2> | |
130e: R_X86_64_PLT32 print_vma_addr-0x4 | |
1312: 48 c7 c7 00 00 00 00 mov $0x0,%rdi | |
1315: R_X86_64_32S .rodata.str1.1+0xcf | |
1319: 31 c0 xor %eax,%eax | |
131b: e8 00 00 00 00 callq 1320 <__bad_area_nosemaphore+0x1b0> | |
131c: R_X86_64_PLT32 printk-0x4 | |
1320: 48 89 ef mov %rbp,%rdi | |
1323: 48 89 de mov %rbx,%rsi | |
1326: e8 00 00 00 00 callq 132b <__bad_area_nosemaphore+0x1bb> | |
1327: R_X86_64_PLT32 show_opcodes-0x4 | |
132b: e9 44 ff ff ff jmpq 1274 <__bad_area_nosemaphore+0x104> | |
1330: 48 89 ef mov %rbp,%rdi | |
1333: 4c 89 ee mov %r13,%rsi | |
1336: e8 00 00 00 00 callq 133b <__bad_area_nosemaphore+0x1cb> | |
1337: R_X86_64_PLT32 emulate_vsyscall-0x4 | |
133b: 84 c0 test %al,%al | |
133d: 0f 85 aa fe ff ff jne 11ed <__bad_area_nosemaphore+0x7d> | |
1343: e9 ce fe ff ff jmpq 1216 <__bad_area_nosemaphore+0xa6> | |
1348: 0f 1f 84 00 00 00 00 nopl 0x0(%rax,%rax,1) | |
134f: 00 | |
0000000000001350 <is_prefetch>: | |
1350: 55 push %rbp | |
1351: 41 57 push %r15 | |
1353: 41 56 push %r14 | |
1355: 41 55 push %r13 | |
1357: 41 54 push %r12 | |
1359: 53 push %rbx | |
135a: 48 83 ec 10 sub $0x10,%rsp | |
135e: 65 48 8b 04 25 28 00 mov %gs:0x28,%rax | |
1365: 00 00 | |
1367: 48 89 44 24 08 mov %rax,0x8(%rsp) | |
136c: 45 31 f6 xor %r14d,%r14d | |
136f: 40 f6 c6 10 test $0x10,%sil | |
1373: 0f 85 4f 01 00 00 jne 14c8 <is_prefetch+0x178> | |
1379: 49 89 fc mov %rdi,%r12 | |
137c: 65 48 8b 3c 25 00 00 mov %gs:0x0,%rdi | |
1383: 00 00 | |
1381: R_X86_64_32S current_task | |
1385: 4c 89 e6 mov %r12,%rsi | |
1388: e8 00 00 00 00 callq 138d <is_prefetch+0x3d> | |
1389: R_X86_64_PLT32 convert_ip_to_linear-0x4 | |
138d: 48 89 c5 mov %rax,%rbp | |
1390: 41 f6 84 24 88 00 00 testb $0x3,0x88(%r12) | |
1397: 00 03 | |
1399: 0f 94 c0 sete %al | |
139c: 48 b9 00 f0 ff ff ff movabs $0x7ffffffff000,%rcx | |
13a3: 7f 00 00 | |
13a6: 48 39 cd cmp %rcx,%rbp | |
13a9: 0f 92 c1 setb %cl | |
13ac: 08 c1 or %al,%cl | |
13ae: 80 f9 01 cmp $0x1,%cl | |
13b1: 0f 85 11 01 00 00 jne 14c8 <is_prefetch+0x178> | |
13b7: 4c 8d 6d 0f lea 0xf(%rbp),%r13 | |
13bb: 49 39 ed cmp %rbp,%r13 | |
13be: 0f 86 04 01 00 00 jbe 14c8 <is_prefetch+0x178> | |
13c4: 4c 8d 7c 24 06 lea 0x6(%rsp),%r15 | |
13c9: 0f 1f 80 00 00 00 00 nopl 0x0(%rax) | |
13d0: ba 01 00 00 00 mov $0x1,%edx | |
13d5: 4c 89 ff mov %r15,%rdi | |
13d8: 48 89 ee mov %rbp,%rsi | |
13db: e8 00 00 00 00 callq 13e0 <is_prefetch+0x90> | |
13dc: R_X86_64_PLT32 probe_kernel_read-0x4 | |
13e0: 48 85 c0 test %rax,%rax | |
13e3: 0f 85 df 00 00 00 jne 14c8 <is_prefetch+0x178> | |
13e9: 48 83 c5 01 add $0x1,%rbp | |
13ed: 0f b6 44 24 06 movzbl 0x6(%rsp),%eax | |
13f2: 88 44 24 07 mov %al,0x7(%rsp) | |
13f6: 89 c1 mov %eax,%ecx | |
13f8: 80 c1 10 add $0x10,%cl | |
13fb: c0 e9 04 shr $0x4,%cl | |
13fe: 80 f9 04 cmp $0x4,%cl | |
1401: 7f 1d jg 1420 <is_prefetch+0xd0> | |
1403: 89 ca mov %ecx,%edx | |
1405: 80 c2 fd add $0xfd,%dl | |
1408: 80 fa 02 cmp $0x2,%dl | |
140b: 73 43 jae 1450 <is_prefetch+0x100> | |
140d: 24 07 and $0x7,%al | |
140f: 3c 06 cmp $0x6,%al | |
1411: 74 6d je 1480 <is_prefetch+0x130> | |
1413: e9 b0 00 00 00 jmpq 14c8 <is_prefetch+0x178> | |
1418: 0f 1f 84 00 00 00 00 nopl 0x0(%rax,%rax,1) | |
141f: 00 | |
1420: 80 f9 07 cmp $0x7,%cl | |
1423: 74 48 je 146d <is_prefetch+0x11d> | |
1425: 80 f9 05 cmp $0x5,%cl | |
1428: 0f 85 97 00 00 00 jne 14c5 <is_prefetch+0x175> | |
142e: 49 8b 84 24 88 00 00 mov 0x88(%r12),%rax | |
1435: 00 | |
1436: a8 03 test $0x3,%al | |
1438: 0f 94 c1 sete %cl | |
143b: 48 83 f8 33 cmp $0x33,%rax | |
143f: eb 21 jmp 1462 <is_prefetch+0x112> | |
1441: 66 66 2e 0f 1f 84 00 data16 nopw %cs:0x0(%rax,%rax,1) | |
1448: 00 00 00 00 | |
144c: 0f 1f 40 00 nopl 0x0(%rax) | |
1450: 89 c3 mov %eax,%ebx | |
1452: 80 e3 0f and $0xf,%bl | |
1455: 84 c9 test %cl,%cl | |
1457: 75 32 jne 148b <is_prefetch+0x13b> | |
1459: 84 db test %bl,%bl | |
145b: 0f 94 c1 sete %cl | |
145e: 24 0e and $0xe,%al | |
1460: 3c 02 cmp $0x2,%al | |
1462: 0f 94 c0 sete %al | |
1465: 08 c8 or %cl,%al | |
1467: 3c 01 cmp $0x1,%al | |
1469: 74 15 je 1480 <is_prefetch+0x130> | |
146b: eb 5b jmp 14c8 <is_prefetch+0x178> | |
146d: 24 0c and $0xc,%al | |
146f: 3c 04 cmp $0x4,%al | |
1471: 75 55 jne 14c8 <is_prefetch+0x178> | |
1473: 66 66 2e 0f 1f 84 00 data16 nopw %cs:0x0(%rax,%rax,1) | |
147a: 00 00 00 00 | |
147e: 66 90 xchg %ax,%ax | |
1480: 4c 39 ed cmp %r13,%rbp | |
1483: 0f 82 47 ff ff ff jb 13d0 <is_prefetch+0x80> | |
1489: eb 3d jmp 14c8 <is_prefetch+0x178> | |
148b: 80 f9 01 cmp $0x1,%cl | |
148e: 75 35 jne 14c5 <is_prefetch+0x175> | |
1490: 48 8d 7c 24 07 lea 0x7(%rsp),%rdi | |
1495: ba 01 00 00 00 mov $0x1,%edx | |
149a: 48 89 ee mov %rbp,%rsi | |
149d: e8 00 00 00 00 callq 14a2 <is_prefetch+0x152> | |
149e: R_X86_64_PLT32 probe_kernel_read-0x4 | |
14a2: 45 31 f6 xor %r14d,%r14d | |
14a5: 48 85 c0 test %rax,%rax | |
14a8: 75 1e jne 14c8 <is_prefetch+0x178> | |
14aa: 80 fb 0f cmp $0xf,%bl | |
14ad: 75 19 jne 14c8 <is_prefetch+0x178> | |
14af: 8a 44 24 07 mov 0x7(%rsp),%al | |
14b3: 3c 0d cmp $0xd,%al | |
14b5: 0f 94 c1 sete %cl | |
14b8: 3c 18 cmp $0x18,%al | |
14ba: 0f 94 c0 sete %al | |
14bd: 08 c8 or %cl,%al | |
14bf: 44 0f b6 f0 movzbl %al,%r14d | |
14c3: eb 03 jmp 14c8 <is_prefetch+0x178> | |
14c5: 45 31 f6 xor %r14d,%r14d | |
14c8: 65 48 8b 04 25 28 00 mov %gs:0x28,%rax | |
14cf: 00 00 | |
14d1: 48 3b 44 24 08 cmp 0x8(%rsp),%rax | |
14d6: 75 12 jne 14ea <is_prefetch+0x19a> | |
14d8: 44 89 f0 mov %r14d,%eax | |
14db: 48 83 c4 10 add $0x10,%rsp | |
14df: 5b pop %rbx | |
14e0: 41 5c pop %r12 | |
14e2: 41 5d pop %r13 | |
14e4: 41 5e pop %r14 | |
14e6: 41 5f pop %r15 | |
14e8: 5d pop %rbp | |
14e9: c3 retq | |
14ea: e8 00 00 00 00 callq 14ef <is_prefetch+0x19f> | |
14eb: R_X86_64_PLT32 __stack_chk_fail-0x4 | |
14ef: 90 nop | |
00000000000014f0 <dump_pagetable>: | |
14f0: 41 57 push %r15 | |
14f2: 41 56 push %r14 | |
14f4: 53 push %rbx | |
14f5: 48 83 ec 10 sub $0x10,%rsp | |
14f9: 65 48 8b 04 25 28 00 mov %gs:0x28,%rax | |
1500: 00 00 | |
1502: 48 89 44 24 08 mov %rax,0x8(%rsp) | |
1507: 0f 20 d8 mov %cr3,%rax | |
150a: 48 b9 00 f0 ff ff ff movabs $0x7ffffffffffff000,%rcx | |
1511: ff ff 7f | |
1514: 48 21 c1 and %rax,%rcx | |
1517: 48 03 0c 25 00 00 00 add 0x0,%rcx | |
151e: 00 | |
151b: R_X86_64_32S page_offset_base | |
151f: 49 89 fe mov %rdi,%r14 | |
1522: 48 89 fb mov %rdi,%rbx | |
1525: 48 c1 eb 24 shr $0x24,%rbx | |
1529: 81 e3 f8 0f 00 00 and $0xff8,%ebx | |
152f: 48 01 cb add %rcx,%rbx | |
1532: 48 89 e7 mov %rsp,%rdi | |
1535: ba 08 00 00 00 mov $0x8,%edx | |
153a: 48 89 de mov %rbx,%rsi | |
153d: e8 00 00 00 00 callq 1542 <dump_pagetable+0x52> | |
153e: R_X86_64_PLT32 probe_kernel_read-0x4 | |
1542: 85 c0 test %eax,%eax | |
1544: 0f 85 59 01 00 00 jne 16a3 <dump_pagetable+0x1b3> | |
154a: 48 8b 33 mov (%rbx),%rsi | |
154d: 48 c7 c7 00 00 00 00 mov $0x0,%rdi | |
1550: R_X86_64_32S .rodata.str1.1+0x10c | |
1554: 31 c0 xor %eax,%eax | |
1556: e8 00 00 00 00 callq 155b <dump_pagetable+0x6b> | |
1557: R_X86_64_PLT32 printk-0x4 | |
155b: 48 89 e7 mov %rsp,%rdi | |
155e: ba 08 00 00 00 mov $0x8,%edx | |
1563: 48 89 de mov %rbx,%rsi | |
1566: e8 00 00 00 00 callq 156b <dump_pagetable+0x7b> | |
1567: R_X86_64_PLT32 probe_kernel_read-0x4 | |
156b: 85 c0 test %eax,%eax | |
156d: 0f 85 30 01 00 00 jne 16a3 <dump_pagetable+0x1b3> | |
1573: 48 8b 33 mov (%rbx),%rsi | |
1576: 48 c7 c7 00 00 00 00 mov $0x0,%rdi | |
1579: R_X86_64_32S .rodata.str1.1+0x117 | |
157d: 31 c0 xor %eax,%eax | |
157f: e8 00 00 00 00 callq 1584 <dump_pagetable+0x94> | |
1580: R_X86_64_PLT32 printk-0x4 | |
1584: 48 8b 03 mov (%rbx),%rax | |
1587: a8 01 test $0x1,%al | |
1589: 75 0c jne 1597 <dump_pagetable+0xa7> | |
158b: 48 c7 c7 00 00 00 00 mov $0x0,%rdi | |
158e: R_X86_64_32S .rodata.str1.1+0xcf | |
1592: e9 13 01 00 00 jmpq 16aa <dump_pagetable+0x1ba> | |
1597: 49 bf 00 f0 ff ff ff movabs $0xffffffffff000,%r15 | |
159e: ff 0f 00 | |
15a1: 4c 21 f8 and %r15,%rax | |
15a4: 48 03 04 25 00 00 00 add 0x0,%rax | |
15ab: 00 | |
15a8: R_X86_64_32S page_offset_base | |
15ac: 4c 89 f3 mov %r14,%rbx | |
15af: 48 c1 eb 1b shr $0x1b,%rbx | |
15b3: 81 e3 f8 0f 00 00 and $0xff8,%ebx | |
15b9: 48 01 c3 add %rax,%rbx | |
15bc: 48 89 e7 mov %rsp,%rdi | |
15bf: ba 08 00 00 00 mov $0x8,%edx | |
15c4: 48 89 de mov %rbx,%rsi | |
15c7: e8 00 00 00 00 callq 15cc <dump_pagetable+0xdc> | |
15c8: R_X86_64_PLT32 probe_kernel_read-0x4 | |
15cc: 85 c0 test %eax,%eax | |
15ce: 0f 85 cf 00 00 00 jne 16a3 <dump_pagetable+0x1b3> | |
15d4: 48 8b 33 mov (%rbx),%rsi | |
15d7: 48 c7 c7 00 00 00 00 mov $0x0,%rdi | |
15da: R_X86_64_32S .rodata.str1.1+0x122 | |
15de: 31 c0 xor %eax,%eax | |
15e0: e8 00 00 00 00 callq 15e5 <dump_pagetable+0xf5> | |
15e1: R_X86_64_PLT32 printk-0x4 | |
15e5: 48 8b 03 mov (%rbx),%rax | |
15e8: a8 01 test $0x1,%al | |
15ea: 74 9f je 158b <dump_pagetable+0x9b> | |
15ec: 89 c1 mov %eax,%ecx | |
15ee: 81 e1 81 00 00 00 and $0x81,%ecx | |
15f4: 48 81 f9 81 00 00 00 cmp $0x81,%rcx | |
15fb: 74 8e je 158b <dump_pagetable+0x9b> | |
15fd: 49 8d 8f 00 10 00 c0 lea -0x3ffff000(%r15),%rcx | |
1604: 84 c0 test %al,%al | |
1606: 49 0f 49 cf cmovns %r15,%rcx | |
160a: 48 21 c1 and %rax,%rcx | |
160d: 48 03 0c 25 00 00 00 add 0x0,%rcx | |
1614: 00 | |
1611: R_X86_64_32S page_offset_base | |
1615: 4c 89 f3 mov %r14,%rbx | |
1618: 48 c1 eb 12 shr $0x12,%rbx | |
161c: 81 e3 f8 0f 00 00 and $0xff8,%ebx | |
1622: 48 01 cb add %rcx,%rbx | |
1625: 48 89 e7 mov %rsp,%rdi | |
1628: ba 08 00 00 00 mov $0x8,%edx | |
162d: 48 89 de mov %rbx,%rsi | |
1630: e8 00 00 00 00 callq 1635 <dump_pagetable+0x145> | |
1631: R_X86_64_PLT32 probe_kernel_read-0x4 | |
1635: 85 c0 test %eax,%eax | |
1637: 75 6a jne 16a3 <dump_pagetable+0x1b3> | |
1639: 48 8b 33 mov (%rbx),%rsi | |
163c: 48 c7 c7 00 00 00 00 mov $0x0,%rdi | |
163f: R_X86_64_32S .rodata.str1.1+0x12d | |
1643: 31 c0 xor %eax,%eax | |
1645: e8 00 00 00 00 callq 164a <dump_pagetable+0x15a> | |
1646: R_X86_64_PLT32 printk-0x4 | |
164a: 48 8b 03 mov (%rbx),%rax | |
164d: a9 81 01 00 00 test $0x181,%eax | |
1652: 0f 84 33 ff ff ff je 158b <dump_pagetable+0x9b> | |
1658: 84 c0 test %al,%al | |
165a: 0f 88 2b ff ff ff js 158b <dump_pagetable+0x9b> | |
1660: 4c 21 f8 and %r15,%rax | |
1663: 48 03 04 25 00 00 00 add 0x0,%rax | |
166a: 00 | |
1667: R_X86_64_32S page_offset_base | |
166b: 49 c1 ee 09 shr $0x9,%r14 | |
166f: 41 81 e6 f8 0f 00 00 and $0xff8,%r14d | |
1676: 49 01 c6 add %rax,%r14 | |
1679: 48 89 e7 mov %rsp,%rdi | |
167c: ba 08 00 00 00 mov $0x8,%edx | |
1681: 4c 89 f6 mov %r14,%rsi | |
1684: e8 00 00 00 00 callq 1689 <dump_pagetable+0x199> | |
1685: R_X86_64_PLT32 probe_kernel_read-0x4 | |
1689: 85 c0 test %eax,%eax | |
168b: 75 16 jne 16a3 <dump_pagetable+0x1b3> | |
168d: 49 8b 36 mov (%r14),%rsi | |
1690: 48 c7 c7 00 00 00 00 mov $0x0,%rdi | |
1693: R_X86_64_32S .rodata.str1.1+0x138 | |
1697: 31 c0 xor %eax,%eax | |
1699: e8 00 00 00 00 callq 169e <dump_pagetable+0x1ae> | |
169a: R_X86_64_PLT32 printk-0x4 | |
169e: e9 e8 fe ff ff jmpq 158b <dump_pagetable+0x9b> | |
16a3: 48 c7 c7 00 00 00 00 mov $0x0,%rdi | |
16a6: R_X86_64_32S .rodata.str1.1+0x142 | |
16aa: 31 c0 xor %eax,%eax | |
16ac: e8 00 00 00 00 callq 16b1 <dump_pagetable+0x1c1> | |
16ad: R_X86_64_PLT32 printk-0x4 | |
16b1: 65 48 8b 04 25 28 00 mov %gs:0x28,%rax | |
16b8: 00 00 | |
16ba: 48 3b 44 24 08 cmp 0x8(%rsp),%rax | |
16bf: 75 0a jne 16cb <dump_pagetable+0x1db> | |
16c1: 48 83 c4 10 add $0x10,%rsp | |
16c5: 5b pop %rbx | |
16c6: 41 5e pop %r14 | |
16c8: 41 5f pop %r15 | |
16ca: c3 retq | |
16cb: e8 00 00 00 00 callq 16d0 <dump_pagetable+0x1e0> | |
16cc: R_X86_64_PLT32 __stack_chk_fail-0x4 | |
Disassembly of section .init.text: | |
0000000000000000 <trace_event_define_fields_x86_exceptions>: | |
0: 53 push %rbx | |
1: 48 89 fb mov %rdi,%rbx | |
4: 48 c7 c6 00 00 00 00 mov $0x0,%rsi | |
7: R_X86_64_32S .rodata.str1.1 | |
b: 48 c7 c2 00 00 00 00 mov $0x0,%rdx | |
e: R_X86_64_32S .rodata.str1.1+0xe | |
12: b9 08 00 00 00 mov $0x8,%ecx | |
17: 41 b8 08 00 00 00 mov $0x8,%r8d | |
1d: 45 31 c9 xor %r9d,%r9d | |
20: 6a 00 pushq $0x0 | |
22: e8 00 00 00 00 callq 27 <trace_event_define_fields_x86_exceptions+0x27> | |
23: R_X86_64_PLT32 trace_define_field-0x4 | |
27: 48 83 c4 08 add $0x8,%rsp | |
2b: 85 c0 test %eax,%eax | |
2d: 75 58 jne 87 <trace_event_define_fields_x86_exceptions+0x87> | |
2f: 48 c7 c6 00 00 00 00 mov $0x0,%rsi | |
32: R_X86_64_32S .rodata.str1.1 | |
36: 48 c7 c2 00 00 00 00 mov $0x0,%rdx | |
39: R_X86_64_32S .rodata.str1.1+0x16 | |
3d: b9 10 00 00 00 mov $0x10,%ecx | |
42: 41 b8 08 00 00 00 mov $0x8,%r8d | |
48: 45 31 c9 xor %r9d,%r9d | |
4b: 48 89 df mov %rbx,%rdi | |
4e: 6a 00 pushq $0x0 | |
50: e8 00 00 00 00 callq 55 <trace_event_define_fields_x86_exceptions+0x55> | |
51: R_X86_64_PLT32 trace_define_field-0x4 | |
55: 48 83 c4 08 add $0x8,%rsp | |
59: 85 c0 test %eax,%eax | |
5b: 75 2a jne 87 <trace_event_define_fields_x86_exceptions+0x87> | |
5d: 48 c7 c6 00 00 00 00 mov $0x0,%rsi | |
60: R_X86_64_32S .rodata.str1.1 | |
64: 48 c7 c2 00 00 00 00 mov $0x0,%rdx | |
67: R_X86_64_32S .rodata.str1.1+0x19 | |
6b: b9 18 00 00 00 mov $0x18,%ecx | |
70: 41 b8 08 00 00 00 mov $0x8,%r8d | |
76: 45 31 c9 xor %r9d,%r9d | |
79: 48 89 df mov %rbx,%rdi | |
7c: 6a 00 pushq $0x0 | |
7e: e8 00 00 00 00 callq 83 <trace_event_define_fields_x86_exceptions+0x83> | |
7f: R_X86_64_PLT32 trace_define_field-0x4 | |
83: 48 83 c4 08 add $0x8,%rsp | |
87: 5b pop %rbx | |
88: c3 retq | |
Disassembly of section .altinstr_replacement: | |
0000000000000000 <.altinstr_replacement>: | |
0: 41 0f 0d 4c 24 70 prefetchw 0x70(%r12) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment