DynamoRIO / DynamoRIO/dynamorio
ASSERT core/dispatch.c:133 on DR running with dbus-launch
- Dominant language
- C
- Stars
- 3.2k
- Forks
- 629
- Avg merge
- 2d 15h
- Merged PRs (30d)
- 31
Description
_From [zhao...@google.com](https://code.google.com/u/106321947286816917100/) on September 11, 2013 17:36:29_
What steps will reproduce the problem? 1. ./bin64/drrun -debug -loglevel 3 -- /usr/bin/dbus-launch What is the expected output? What do you see instead? > /usr/bin/dbus-launch
DBUS_SESSION_BUS_ADDRESS=unix:abstract=/tmp/dbus-iINUBoquHp,guid=fcf1805d98653d4a8cf25643002230b0
DBUS_SESSION_BUS_PID=25582
Under DR:
%r13d
00 00
0x00007fc70ff44900 64 44 8b 04 25 d4 02 mov %fs:0x000002d4 -> %r8d
00 00
0x00007fc70ff44909 44 89 c0 mov %r8d -> %eax
0x00007fc70ff4490c f7 d8 neg %eax -> %eax
0x00007fc70ff4490e 64 89 04 25 d4 02 00 mov %eax -> %fs:0x000002d4
00
0x00007fc70ff44916 64 4c 8b 0c 25 10 00 mov %fs:0x10 -> % r9 00 00
0x00007fc70ff4491f 31 d2 xor %edx %edx -> %edx
0x00007fc70ff44921 4d 8d 91 d0 02 00 00 lea 0x000002d0(% r9 ) -> % r10 0x00007fc70ff44928 31 f6 xor %esi %esi -> %esi
0x00007fc70ff4492a bf 11 00 20 01 mov $0x01200011 -> %edi
0x00007fc70ff4492f b8 38 00 00 00 mov $0x00000038 -> %eax
0x00007fc70ff44934 0f 05 syscall -> %rcx
syscall # is 56
found non-ignorable system call 0x0038
ending bb at syscall & removing the interrupt itself
end_pc = 0x00007fc70ff44936
Exit from F760(0x00007fc70ff448f7).0x00007fc690c1402b (shared)
(block ends with syscall)
Entry into do_syscall to execute a non-ignorable system call
system call 56
syscall: clone with flags = 0x0000000001200011
args: 0x0000000001200011, 0x0000000000000000, 0x0000000000000000, 0x00007fc710b989d0, 0x0000000000006339
WARNING: CLONE_VM not set!
synch with all threads my id = 25401 Giving 6 permission and seeking 4 state
Looping over all threads (1 threads)
Skipping synch with thread 25401
Finished synch with all threads: result=1
returning holding initexit_lock and all_threads_synch_lock
Exit from system call
post syscall: sysnum=0x0000000000000038, result=0x000000000000633e (25406)
syscall: clone returned 0x000000000000633e
finished handling system call
The current thread continues, but got signal quickly:
master_signal_handler: sig=17, retaddr=0x00000000712a369d
siginfo: pid = 25406, status = 255, errno = 0, si_code = 1
gs=0x0000
fs=0x0000
xdi=0x00007fc690bf08c0
xsi=0x00007fc690bef3a8
xbp=0x00007fc690c62440
xsp=0x00007fc690c62410
xbx=0x0000000000006339
xdx=0x0000000000001b68
xcx=0x00007fc690bef3a8
xax=0x00000000715b8a60 r8 =0x0000000009000600 r9 =0x0000000009000600 r10 =0x00000000712a3688 r11 =0x0000000000000246 r12 =0x000000000000633e r13 =0x0000000000006339 r14 =0x0000000000000020 r15 =0x00007fc71109b010
trapno=0x0000000000000000
err=0x0000000000000000
xip=0x00000000710ad3cf
cs=0x0033
eflags=0x0000000000000216
and then continue till fragment 1143 and exit.
While the error message seems came from the newly created thread/process, which DR fail to handle correctly.
_Original issue: http://code.google.com/p/dynamorio/issues/detail?id=1267_
Contributor guide
Assessment
This issue has not been assessed yet.