Because the system does not set the Core File Size
[1, 828] [@ zw_52_72 iproxy] # ulimit-
Core File size (blocks,-C) 0
Data seg size (Kbytes,-d) Unlimited
Scheduling Priority (-e) 0
File size (blocks,-f) Unlimited
Pending signals (-I) 1056768
Max locked memory (Kbytes,-l) 32
Max memory size (Kbytes,-m) Unlimited
Open File (-N) 1000000
Pipe size (512 bytes,-p) 8
POSIX message queues (bytes,-q) 819200
Real-time priority (-R) 0
Stack size (Kbytes,-S) 10240
CPU time (seconds,-T) Unlimited
Max user processes (-u) 16384
Virtual Memory (Kbytes,-v) Unlimited
File locks (-x) Unlimited
Therefore, the Service core does not generate core files.
View the system log as follows:
Aug 11 18:50:06 zw_52_72 kernel: iproxy [18518]: segfault at 1272aad40a28000 rip 00000000004113a0 RSP 0000000043152000 error 4
Aug 11 18:50:08 zw_52_72 kernel: Trying to vfree () nonexistent VM area (ffff8101e16fc000)
Aug 11 18:50:08 zw_52_72 kernel: Warning: At mm/vmalloc. C: 329 _ vunmap ()
Aug 11 18:50:08 zw_52_72 kernel:
Aug 11 18:50:08 zw_52_72 kernel: Call trace:
Aug 11 18:50:08 zw_52_72 kernel: [<ffffff800454e4>] _ free_fdtable + 0x10/0x30
Aug 11 18:50:08 zw_52_72 kernel: [<ffffff800efd9a>] free_fdtable_work + 0x36/0x43
Aug 11 18:50:08 zw_52_72 kernel: [<ffffff8004d311>] run_workqueue + 0x9e/0xfb
Aug 11 18:50:08 zw_52_72 kernel: [<ffffff80049b20>] worker_thread + 0x0/0x122
Aug 11 18:50:08 zw_52_72 kernel: [<ffffff80049c10>] worker_thread + 0xf0/0x122
Aug 11 18:50:08 zw_52_72 kernel: [<ffffff8008e857>] default_wake_function + 0x0/0xe
Aug 11 18:50:08 zw_52_72 kernel: [<ffffff80032722>] kthread + 0xfe/0x132
Aug 11 18:50:08 zw_52_72 kernel: [<ffffff8005dfb1>] child_rip + 0xa/0x11
Aug 11 18:50:08 zw_52_72 kernel: [<ffffff80032624>] kthread + 0x0/0x132
Aug 11 18:50:08 zw_52_72 kernel: [<ffffff8005dfa7>] child_rip + 0x0/0x11
Use objdump to decompile iproxy (I disassembled it .)
Objdump-A./iproxy> disassembled_log
Find segfault at least 2aad40a28000 rip 000000000000004113a0 RSP 0000000043152000 error 4 in disassembled_log
Stack address marked in red. If it cannot be found, you can find the address close to this address. Check whether the Assembly Code nearby belongs to that function.
For example, if the address belongs to the _ zn13iproxyprocess7ifoxa2tepk4_a2t call, the Service core is located.
4111c4: E8 A7 99 FF callq 40ab70 <[email protected]>
4111c9: 8B 85 A0 F2 FF mov 0xfffffffffffff2a0 (% RBP), % eax
4111cf: 48 81 C4 78 0d 00 00 add $0xd78, % RSP
4111d6: 5B pop % RBx
4111d7: C9 leaveq
4111d8: C3 retq
4111d9: 90 NOP
201710000004111da <_ zn13iproxyprocess7ifoxa2tepk4_a2t>:
4111da: 55 push % RBP
4111db: 48 89 E5 mov % RSP, % RBP
4111de: 48 81 EC F0 0b 00 00 sub $0xbf0, % RSP
4111e5: 48 89 Bd 28 F4 FF mov % RDI, 0xfffffffffffff428 (% RBP)
4111ec: 48 89 B5 20 F4 FF mov % RSI, 0xfffffffffffff420 (% RBP)
4111f3: 48 8B 85 28 F4 FF mov 0xfffffffffffff428 (% RBP), % Rax
4111fa: 48 8B 80 90 00 00 00 mov 0x90 (% Rax), % Rax
411201: 48 85 C0 test % rax, % Rax
411204: 75 38 JNE 41123e <_ zn13iproxyprocess7ifoxa2tepk4_a2t + 0x64>
411206: 4C 8d 05 6B 02 0C 00 Lea 787051 (% rip), % R8 #4d1478 <_ zzn11proxyserveri12iproxyworkere5starteippce8 _ FUNC _ + 0x141>
41120d: 48 8d 0d FC 06 0C 00 Lea 788220 (% rip), % rcX #4d1910 <_ zzn13iproxyprocess7ifoxa2tepk4_a2te8 _ FUNC __>
411214: ba cf 02 00 00 mov $ 0x2cf, % edX
411219: 48 8d 35 30 02 0C 00 Lea 786992 (% rip), % RSI #4d1450 <_ zzn11proxyserveri12iproxyworkere5starteippce8 _ FUNC _ + 0x119>
411220: BF 02 00 00 00 mov $0x2, % EDI
411225: B8 00 00 00 mov $0x0, % eax
41122a: E8 AB 63 02 00 callq 4375da <_ zn6logger3logeipkcjs1_s1_z>
41131c: 66 89 50 24 mov % dx, 0x24 (% Rax)
411320: 48 8B 85 20 F4 FF mov 0xfffffffffffff420 (% RBP), % Rax
411327: 8B 50 1E mov 0x1e (% Rax), % edX
41132a: 48 8B 45 F8 mov 0xfffffffffffff8 (% RBP), % Rax
41132e: 89 50 26 mov % edX, 0x26 (% Rax)
411331: 48 8B 85 20 F4 FF mov 0xfffffffffffff420 (% RBP), % Rax
411338: 0f B7 50 22 movzwl 0x22 (% Rax), % edX
41133c: 48 8B 45 F8 mov 0xfffffffffffff8 (% RBP), % Rax
411340: 66 89 50 2a mov % dx, 0x2a (% Rax)
411344: 48 8B 85 28 F4 FF mov 0xfffffffffffff428 (% RBP), % Rax
41134b: 48 8B 80 90 00 00 00 mov 0x90 (% Rax), % Rax
411352: 8B 90 2C 01 00 00 mov 0x12c (% Rax), % edX
411358: 48 8B 45 F8 mov 0xfffffffffffff8 (% RBP), % Rax
41135c: 89 50 2C mov % edX, 0x2c (% Rax)
41135f: 48 8B 85 28 F4 FF mov 0xfffffffffffff428 (% RBP), % Rax
411366: 48 8B 80 90 00 00 00 mov 0x90 (% Rax), % Rax
41136d: 0f B6 90 30 01 00 00 movzbl 0x130 (% Rax), % edX
411374: 48 8B 45 F8 mov 0xfffffffffffff8 (% RBP), % Rax
411378: 88 50 30 mov % DL, 0x30 (% Rax)
41137b: 48 8B 45 F0 mov 0xfffffffffffff0 (% RBP), % Rax
41137f: 66 C7 00 39 00 movw $0x39, (% Rax)
411384: 48 8B 45 F0 mov 0xfffffffffffff0 (% RBP), % Rax
411388: 0f B7 00 movzwl (% Rax), % eax
41138b: 0f B7 C8 movzwl % ax, % ECx
41138e: 4C 8d 8d 30 F4 FF Lea 0xfffffffffffff430 (% RBP), % R9
411395: 48 8B 55 E8 mov 0xffffffffffffe8 (% RBP), % RDX
411399: 48 8B 85 20 F4 FF mov 0xfffffffffffff420 (% RBP), % Rax
4113a0: 44 8B 54 D0 26 mov 0x26 (% rax, % RDX, 8), % r10d
4113a5: 48 8B 55 E8 mov 0xffffffffffffffe8 (% RBP), % RDX
4113a9: 48 8B 85 20 F4 FF mov 0xfffffffffffff420 (% RBP), % Rax
4113b0: 8B 74 D0 2a mov 0x2a (% rax, % RDX, 8), % ESI
4113b4: 48 8B Bd 28 F4 FF mov 0xfffffffffffff428 (% RBP), % RDI
4113bb: 41 89 C8 mov % ECx, % r8d
4113be: 4C 89 C9 mov % R9, % rcX
4113c1: 44 89 D2 mov % r10d, % edX
4113c4: E8 71 8e 05 00 callq 46a23a <_ zn12proxyprocess111_ssproxyejjpkhj>
4113c9: 48 83 45 E8 01 addq $0x1, 0xffffffffffffffe8 (% RBP)
4113ce: 48 8B 85 20 F4 FF mov 0xfffffffffffff420 (% RBP), % Rax
4113d5: 0f B7 40 24 movzwl 0x24 (% Rax), % eax