Subject: Re: compat_linux on amd64 report
To: Emmanuel Dreyfus <manu@NetBSD.org>
From: Nicolas Joly <njoly@pasteur.fr>
List: port-amd64
Date: 11/23/2005 19:00:56
--fdj2RfSjLxBAspz7
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline

On Wed, Nov 23, 2005 at 04:22:56PM +0000, Emmanuel Dreyfus wrote:
> On Mon, Nov 21, 2005 at 01:36:49PM +0100, Nicolas Joly wrote:
> > I'm getting bad behaviour with small threaded programs (not really
> > linux java related, but ...).
> 
> It's fixed in -current. Thanks for the bug report, and don't hesitate to 
> report more bugs.

Thanks.

Unfortunately, i cannot run this sample program twice. The first time,
it works fine; but the second time, it does not give the prompt back
and hangs ...

njoly@lanfeust [tmp/threads]> uname -a
NetBSD lanfeust.sis.pasteur.fr 3.99.11 NetBSD 3.99.11 (LANFEUST) #4: Wed Nov 23 17:26:15 CET 2005  njoly@lanfeust.sis.pasteur.fr:/local/src/NetBSD/obj/amd64/sys/arch/amd64/compile/LANFEUST amd64
njoly@lanfeust [tmp/threads]> sysctl -a | grep linux
emul.linux.kern.ostype = Linux
emul.linux.kern.osrelease = 2.6.9
emul.linux.kern.osversion = #0 Wed Feb 20 20:00:02 CET 2002

njoly@lanfeust [tmp/threads]> ./thr_linux
thread hello world
main hello world
njoly@lanfeust [tmp/threads]> ./thr_linux
main hello world
thread hello world
[... hang here ...]

Attached the 2 ktrace outputs (ktrace.1st = ok, ktrace.2nd = hang) for
review.

Thanks again.

-- 
Nicolas Joly

Biological Software and Databanks.
Institut Pasteur, Paris.

--fdj2RfSjLxBAspz7
Content-Type: text/plain; charset=us-ascii
Content-Disposition: attachment; filename="ktrace.1st"

   430 ktrace   EMUL  "netbsd"
   430 ktrace   CALL  execve(0x7f7fffffece7,0x7f7fffffeb48,0x7f7fffffeb58)
   430 ktrace   NAMI  "./thr_linux"
   430 ktrace   NAMI  "/emul/linux/lib64/ld-linux-x86-64.so.2"
   430 ktrace   NAMI  "/emul/linux"
   430 ktrace   NAMI  "/emul/linux/lib64/ld-linux-x86-64.so.2"
   430 thr_linux EMUL  "linux"
   430 thr_linux RET   execve -1 errno -2 No such file or directory
   430 thr_linux CALL  uname(0x7f7fffffe028)
   430 thr_linux RET   uname 0
   430 thr_linux CALL  brk(0)
   430 thr_linux RET   brk 5246976/0x501000
   430 thr_linux CALL  mmap(0,0x1000,3,0x22,0xffffffff,0)
   430 thr_linux RET   mmap 8596316160/0x200616000
   430 thr_linux CALL  open(0x7f7fffffdf88,0,3)
   430 thr_linux NAMI  "/emul/linux/etc/ld.so.preload"
   430 thr_linux NAMI  "/etc/ld.so.preload"
   430 thr_linux RET   open -1 unknown errno 2
   430 thr_linux CALL  open(0x2005123e1,0,1)
   430 thr_linux NAMI  "/emul/linux/etc/ld.so.cache"
   430 thr_linux NAMI  "/emul/linux"
   430 thr_linux NAMI  "/emul/linux/etc/ld.so.cache"
   430 thr_linux RET   open 3
   430 thr_linux CALL  fstat64(3,0x7f7fffffd7c8)
   430 thr_linux RET   fstat64 0
   430 thr_linux CALL  mmap(0,0x1a54,1,2,3,0)
   430 thr_linux RET   mmap 8596320256/0x200617000
   430 thr_linux CALL  close(3)
   430 thr_linux RET   close 0
   430 thr_linux CALL  open(0x200617e96,0,0x303)
   430 thr_linux NAMI  "/emul/linux/lib64/tls/libpthread.so.0"
   430 thr_linux NAMI  "/emul/linux"
   430 thr_linux NAMI  "/emul/linux/lib64/tls/libpthread.so.0"
   430 thr_linux RET   open 3
   430 thr_linux CALL  read(3,0x7f7fffffd930,0x280)
   430 thr_linux GIO   fd 3 read 640 bytes
       "\^?ELF\^B\^A\^A\0\0\0\0\0\0\0\0\0\^C\0>\0\^A\0\0\0\M-`X\0\0\0\0\0\0@\0\0\0\0\0\
	\0\0000\^P\^A\0\0\0\0\0\0\0\0\0@\08\0	\0@\0!\0\^^\0\^F\0\0\0\^E\0\0\0@\0\0\0\
	\0\0\0\0@\0\0\0\0\0\0\0@\0\0\0\0\0\0\0\M-x\^A\0\0\0\0\0\0\M-x\^A\0\0\0\0\0\0\b\
	\0\0\0\0\0\0\0\^C\0\0\0\^D\0\0\0\^P\M-O\0\0\0\0\0\0\^P\M-O\0\0\0\0\0\0\^P\M-O\
	\0\0\0\0\0\0\^\\0\0\0\0\0\0\0\^\\0\0\0\0\0\0\0\^P\0\0\0\0\0\0\0\^A\0\0\0\^E\0\
	\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\240\M-U\0\0\0\0\0\0\240\
	\M-U\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^F\0\0\0\0\M-`\0\0\0\0\0\0\0\M-`\^P\
	\0\0\0\0\0\0\M-`\^P\0\0\0\0\0p\^\\0\0\0\0\0\0\M^X]\0\0\0\0\0\0\0\0\^P\0\0\0\0\
	\0\^B\0\0\0\^F\0\0\0\M-X\M-w\0\0\0\0\0\0\M-X\M-w\^P\0\0\0\0\0\M-X\M-w\^P\0\0\0\
	\0\0\M-`\^A\0\0\0\0\0\0\M-`\^A\0\0\0\0\0\0\b\0\0\0\0\0\0\0\^D\0\0\0\^D\0\0\08\
	\^B\0\0\0\0\0\08\^B\0\0\0\0\0\08\^B\0\0\0\0\0\0 \0\0\0\0\0\0\0 \0\0\0\0\0\0\0\
	\^D\0\0\0\0\0\0\0\^D\0\0\0\^D\0\0\0X\^B\0\0\0\0\0\0X\^B\0\0\0\0\0\0X\^B\0\0\0\
	\0\0\0\^X\0\0\0\0\0\0\0\^X\0\0\0\0\0\0\0\^D\0\0\0\0\0\0\0P\M-etd\^D\0\0\0,\M-O\
	\0\0\0\0\0\0,\M-O\0\0\0\0\0\0,\M-O\0\0\0\0\0\0t\^F\0\0\0\0\0\0t\^F\0\0\0\0\0\0\
	\^D\0\0\0\0\0\0\0Q\M-etd\^F\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
	\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\b\0\0\0\0\0\0\0\^D\0\0\0\^P\0\0\0\^A\0\0\
	\0GNU\0\0\0\0\0\^B\0\0\0\^F\0\0\0\^D\0\0\0\^E\0\0\0\^B\0\0\0\^A\0\0\0SuSE\0\0\
	\0\0	\^A\0\0\M-K\^A\0\0P\^A\0\0\0\0\0\0\0\0\0\0"
   430 thr_linux RET   read 640/0x280
   430 thr_linux CALL  fstat64(3,0x7f7fffffd818)
   430 thr_linux RET   fstat64 0
   430 thr_linux CALL  mmap(0,0x113d98,5,2,3,0)
   430 thr_linux RET   mmap 8596328448/0x200619000
   430 thr_linux CALL  madvise(0x200619000,0x113d98,3)
   430 thr_linux RET   madvise 0
   430 thr_linux CALL  mprotect(0x200627000,0x105d98,0)
   430 thr_linux RET   mprotect 0
   430 thr_linux CALL  mmap(0x200719000,0x10000,3,0x12,3,0)
   430 thr_linux RET   mmap 8597377024/0x200719000
   430 thr_linux CALL  mmap(0x200729000,0x3d98,3,0x32,0xffffffff,0)
   430 thr_linux RET   mmap 8597442560/0x200729000
   430 thr_linux CALL  close(3)
   430 thr_linux RET   close 0
   430 thr_linux CALL  open(0x2006183ed,0,0x303)
   430 thr_linux NAMI  "/emul/linux/lib64/tls/libc.so.6"
   430 thr_linux NAMI  "/emul/linux"
   430 thr_linux NAMI  "/emul/linux/lib64/tls/libc.so.6"
   430 thr_linux RET   open 3
   430 thr_linux CALL  read(3,0x7f7fffffd910,0x280)
   430 thr_linux GIO   fd 3 read 640 bytes
       "\^?ELF\^B\^A\^A\0\0\0\0\0\0\0\0\0\^C\0>\0\^A\0\0\0\0\M-O\^A\0\0\0\0\0@\0\0\0\0\
	\0\0\0\M-(R\^R\0\0\0\0\0\0\0\0\0@\08\0
	\0@\0?\0<\0\^F\0\0\0\^E\0\0\0@\0\0\0\0\0\0\0@\0\0\0\0\0\0\0@\0\0\0\0\0\0\0000\
	\^B\0\0\0\0\0\0000\^B\0\0\0\0\0\0\b\0\0\0\0\0\0\0\^C\0\0\0\^D\0\0\0000\^D\^P\0\
	\0\0\0\0000\^D\^P\0\0\0\0\0000\^D\^P\0\0\0\0\0\^\\0\0\0\0\0\0\0\^\\0\0\0\0\0\0\
	\0\^P\0\0\0\0\0\0\0\^A\0\0\0\^E\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
	\0\0\0\0(Q\^P\0\0\0\0\0(Q\^P\0\0\0\0\0\0\0\^P\0\0\0\0\0\^A\0\0\0\^F\0\0\0(Q\^P\
	\0\0\0\0\0(Q \0\0\0\0\0(Q \0\0\0\0\0 x\^A\0\0\0\0\0\M-@\M-<\^A\0\0\0\0\0\0\0\
	\^P\0\0\0\0\0\^B\0\0\0\^F\0\0\0x\M-B\^Q\0\0\0\0\0x\M-B!\0\0\0\0\0x\M-B!\0\0\0\
	\0\0\M-P\^A\0\0\0\0\0\0\M-P\^A\0\0\0\0\0\0\b\0\0\0\0\0\0\0\^D\0\0\0\^D\0\0\0p\
	\^B\0\0\0\0\0\0p\^B\0\0\0\0\0\0p\^B\0\0\0\0\0\0 \0\0\0\0\0\0\0 \0\0\0\0\0\0\0\
	\^D\0\0\0\0\0\0\0\^D\0\0\0\^D\0\0\0\M^P\^B\0\0\0\0\0\0\M^P\^B\0\0\0\0\0\0\M^P\
	\^B\0\0\0\0\0\0\^X\0\0\0\0\0\0\0\^X\0\0\0\0\0\0\0\^D\0\0\0\0\0\0\0\a\0\0\0\^D\
	\0\0\0\M^H\M^U\^P\0\0\0\0\0\M^H\M^U \0\0\0\0\0\M^H\M^U \0\0\0\0\0\^P\0\0\0\0\0\
	\0\0P\0\0\0\0\0\0\0\b\0\0\0\0\0\0\0P\M-etd\^D\0\0\0L\^D\^P\0\0\0\0\0L\^D\^P\0\
	\0\0\0\0L\^D\^P\0\0\0\0\0\M-\L\0\0\0\0\0\0\M-\L\0\0\0\0\0\0\^D\0\0\0\0\0\0\0Q\
	\M-etd\^F\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
	\0\0\0\0\0\0\0\0\0\b\0\0\0\0\0\0\0\^D\0\0\0\^P\0\0\0\^A\0\0\0GNU\0"
   430 thr_linux RET   read 640/0x280
   430 thr_linux CALL  lseek(3,0x270,0)
   430 thr_linux RET   lseek 624/0x270
   430 thr_linux CALL  read(3,0x7f7fffffd868,0x20)
   430 thr_linux GIO   fd 3 read 32 bytes
       "\^D\0\0\0\^P\0\0\0\^A\0\0\0GNU\0\0\0\0\0\^B\0\0\0\^F\0\0\0\^D\0\0\0"
   430 thr_linux RET   read 32/0x20
   430 thr_linux CALL  fstat64(3,0x7f7fffffd7f8)
   430 thr_linux RET   fstat64 0
   430 thr_linux CALL  mmap(0,0x1000,3,0x22,0xffffffff,0)
   430 thr_linux RET   mmap 8597458944/0x20072d000
   430 thr_linux CALL  mmap(0,0x220de8,5,2,3,0)
   430 thr_linux RET   mmap 8597463040/0x20072e000
   430 thr_linux CALL  madvise(0x20072e000,0x220de8,3)
   430 thr_linux RET   madvise 0
   430 thr_linux CALL  mprotect(0x200834000,0x11ade8,0)
   430 thr_linux RET   mprotect 0
   430 thr_linux CALL  mmap(0x20092e000,0x1d000,3,0x12,3,0x100000)
   430 thr_linux RET   mmap 8599560192/0x20092e000
   430 thr_linux CALL  mmap(0x20094b000,0x3de8,3,0x32,0xffffffff,0)
   430 thr_linux RET   mmap 8599678976/0x20094b000
   430 thr_linux CALL  close(3)
   430 thr_linux RET   close 0
   430 thr_linux CALL  mmap(0,0x1000,3,0x22,0xffffffff,0)
   430 thr_linux RET   mmap 8599695360/0x20094f000
   430 thr_linux CALL  arch_prctl(0x1002,0x20094f0a0)
   430 thr_linux RET   arch_prctl 0
   430 thr_linux CALL  munmap(0x200617000,0x1a54)
   430 thr_linux RET   munmap 0
   430 thr_linux CALL  set_tid_address(0x20094f130)
   430 thr_linux RET   set_tid_address 430/0x1ae
   430 thr_linux CALL  rt_sigaction(SIGRT0,0x7f7fffffdf98,0,8)
   430 thr_linux RET   rt_sigaction 0
   430 thr_linux CALL  rt_sigprocmask(1,0x7f7fffffe270,0,8)
   430 thr_linux RET   rt_sigprocmask 0
   430 thr_linux CALL  getrlimit(3,0x7f7fffffe258)
   430 thr_linux RET   getrlimit 0
   430 thr_linux CALL  __sysctl(0x7f7fffffdfb8)
   430 thr_linux RET   __sysctl 0
   430 thr_linux CALL  mmap(0,0x200000,3,0x62,0xffffffff,0)
   430 thr_linux RET   mmap 8599699456/0x200950000
   430 thr_linux CALL  brk(0)
   430 thr_linux RET   brk 5246976/0x501000
   430 thr_linux CALL  brk(0x522000)
   430 thr_linux RET   brk 5382144/0x522000
   430 thr_linux CALL  brk(0)
   430 thr_linux RET   brk 5382144/0x522000
   430 thr_linux CALL  mprotect(0x200950000,0x1000,0)
   430 thr_linux RET   mprotect 0
   430 thr_linux CALL  clone(0x3d0f00,0x200b4f8b0,0x200b4fa00,0x200b4fa00)
   430 thr_linux RET   clone 433/0x1b1
   430 thr_linux CALL  futex(0x20094b460,0,2,0,0x20094f0a0,0x200b4f970)
   430 thr_linux RET   futex 0
   430 thr_linux CALL  write(1,0x200b50000,0x11)
   430 thr_linux GIO   fd 1 wrote 17 bytes
       "main hello world
       "
   430 thr_linux RET   write 17/0x11
   430 thr_linux CALL  futex(0x20094b460,1,1,0,0xffffffff,0x200b4f970)
   430 thr_linux RET   futex 0
   430 thr_linux CALL  munmap(0x200b50000,0x10000)
   430 thr_linux RET   munmap 0
   430 thr_linux CALL  exit_group(0)

--fdj2RfSjLxBAspz7
Content-Type: text/plain; charset=us-ascii
Content-Disposition: attachment; filename="ktrace.2nd"

 18997 ktrace   EMUL  "netbsd"
 18997 ktrace   CALL  execve(0x7f7fffffece7,0x7f7fffffeb48,0x7f7fffffeb58)
 18997 ktrace   NAMI  "./thr_linux"
 18997 ktrace   NAMI  "/emul/linux/lib64/ld-linux-x86-64.so.2"
 18997 ktrace   NAMI  "/emul/linux"
 18997 ktrace   NAMI  "/emul/linux/lib64/ld-linux-x86-64.so.2"
 18997 thr_linux EMUL  "linux"
 18997 thr_linux RET   execve -1 errno -2 No such file or directory
 18997 thr_linux CALL  uname(0x7f7fffffe028)
 18997 thr_linux RET   uname 0
 18997 thr_linux CALL  brk(0)
 18997 thr_linux RET   brk 5246976/0x501000
 18997 thr_linux CALL  mmap(0,0x1000,3,0x22,0xffffffff,0)
 18997 thr_linux RET   mmap 8596316160/0x200616000
 18997 thr_linux CALL  open(0x7f7fffffdf88,0,3)
 18997 thr_linux NAMI  "/emul/linux/etc/ld.so.preload"
 18997 thr_linux NAMI  "/etc/ld.so.preload"
 18997 thr_linux RET   open -1 unknown errno 2
 18997 thr_linux CALL  open(0x2005123e1,0,1)
 18997 thr_linux NAMI  "/emul/linux/etc/ld.so.cache"
 18997 thr_linux NAMI  "/emul/linux"
 18997 thr_linux NAMI  "/emul/linux/etc/ld.so.cache"
 18997 thr_linux RET   open 3
 18997 thr_linux CALL  fstat64(3,0x7f7fffffd7c8)
 18997 thr_linux RET   fstat64 0
 18997 thr_linux CALL  mmap(0,0x1a54,1,2,3,0)
 18997 thr_linux RET   mmap 8596320256/0x200617000
 18997 thr_linux CALL  close(3)
 18997 thr_linux RET   close 0
 18997 thr_linux CALL  open(0x200617e96,0,0x303)
 18997 thr_linux NAMI  "/emul/linux/lib64/tls/libpthread.so.0"
 18997 thr_linux NAMI  "/emul/linux"
 18997 thr_linux NAMI  "/emul/linux/lib64/tls/libpthread.so.0"
 18997 thr_linux RET   open 3
 18997 thr_linux CALL  read(3,0x7f7fffffd930,0x280)
 18997 thr_linux GIO   fd 3 read 640 bytes
       "\^?ELF\^B\^A\^A\0\0\0\0\0\0\0\0\0\^C\0>\0\^A\0\0\0\M-`X\0\0\0\0\0\0@\0\
	\0\0\0\0\0\0000\^P\^A\0\0\0\0\0\0\0\0\0@\08\0	\0@\0!\0\^^\0\^F\0\0\0\
	\^E\0\0\0@\0\0\0\0\0\0\0@\0\0\0\0\0\0\0@\0\0\0\0\0\0\0\M-x\^A\0\0\0\0\
	\0\0\M-x\^A\0\0\0\0\0\0\b\0\0\0\0\0\0\0\^C\0\0\0\^D\0\0\0\^P\M-O\0\0\0\
	\0\0\0\^P\M-O\0\0\0\0\0\0\^P\M-O\0\0\0\0\0\0\^\\0\0\0\0\0\0\0\^\\0\0\0\
	\0\0\0\0\^P\0\0\0\0\0\0\0\^A\0\0\0\^E\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
	\0\0\0\0\0\0\0\0\0\0\0\240\M-U\0\0\0\0\0\0\240\M-U\0\0\0\0\0\0\0\0\^P\
	\0\0\0\0\0\^A\0\0\0\^F\0\0\0\0\M-`\0\0\0\0\0\0\0\M-`\^P\0\0\0\0\0\0\
	\M-`\^P\0\0\0\0\0p\^\\0\0\0\0\0\0\M^X]\0\0\0\0\0\0\0\0\^P\0\0\0\0\0\^B\
	\0\0\0\^F\0\0\0\M-X\M-w\0\0\0\0\0\0\M-X\M-w\^P\0\0\0\0\0\M-X\M-w\^P\0\
	\0\0\0\0\M-`\^A\0\0\0\0\0\0\M-`\^A\0\0\0\0\0\0\b\0\0\0\0\0\0\0\^D\0\0\
	\0\^D\0\0\08\^B\0\0\0\0\0\08\^B\0\0\0\0\0\08\^B\0\0\0\0\0\0 \0\0\0\0\0\
	\0\0 \0\0\0\0\0\0\0\^D\0\0\0\0\0\0\0\^D\0\0\0\^D\0\0\0X\^B\0\0\0\0\0\0\
	X\^B\0\0\0\0\0\0X\^B\0\0\0\0\0\0\^X\0\0\0\0\0\0\0\^X\0\0\0\0\0\0\0\^D\
	\0\0\0\0\0\0\0P\M-etd\^D\0\0\0,\M-O\0\0\0\0\0\0,\M-O\0\0\0\0\0\0,\M-O\
	\0\0\0\0\0\0t\^F\0\0\0\0\0\0t\^F\0\0\0\0\0\0\^D\0\0\0\0\0\0\0Q\M-etd\
	\^F\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
	\0\0\0\0\0\0\0\0\0\0\b\0\0\0\0\0\0\0\^D\0\0\0\^P\0\0\0\^A\0\0\0GNU\0\0\
	\0\0\0\^B\0\0\0\^F\0\0\0\^D\0\0\0\^E\0\0\0\^B\0\0\0\^A\0\0\0SuSE\0\0\0\
	\0	\^A\0\0\M-K\^A\0\0P\^A\0\0\0\0\0\0\0\0\0\0"
 18997 thr_linux RET   read 640/0x280
 18997 thr_linux CALL  fstat64(3,0x7f7fffffd818)
 18997 thr_linux RET   fstat64 0
 18997 thr_linux CALL  mmap(0,0x113d98,5,2,3,0)
 18997 thr_linux RET   mmap 8596328448/0x200619000
 18997 thr_linux CALL  madvise(0x200619000,0x113d98,3)
 18997 thr_linux RET   madvise 0
 18997 thr_linux CALL  mprotect(0x200627000,0x105d98,0)
 18997 thr_linux RET   mprotect 0
 18997 thr_linux CALL  mmap(0x200719000,0x10000,3,0x12,3,0)
 18997 thr_linux RET   mmap 8597377024/0x200719000
 18997 thr_linux CALL  mmap(0x200729000,0x3d98,3,0x32,0xffffffff,0)
 18997 thr_linux RET   mmap 8597442560/0x200729000
 18997 thr_linux CALL  close(3)
 18997 thr_linux RET   close 0
 18997 thr_linux CALL  open(0x2006183ed,0,0x303)
 18997 thr_linux NAMI  "/emul/linux/lib64/tls/libc.so.6"
 18997 thr_linux NAMI  "/emul/linux"
 18997 thr_linux NAMI  "/emul/linux/lib64/tls/libc.so.6"
 18997 thr_linux RET   open 3
 18997 thr_linux CALL  read(3,0x7f7fffffd910,0x280)
 18997 thr_linux GIO   fd 3 read 640 bytes
       "\^?ELF\^B\^A\^A\0\0\0\0\0\0\0\0\0\^C\0>\0\^A\0\0\0\0\M-O\^A\0\0\0\0\0@\
	\0\0\0\0\0\0\0\M-(R\^R\0\0\0\0\0\0\0\0\0@\08\0
	\0@\0?\0<\0\^F\0\0\0\^E\0\0\0@\0\0\0\0\0\0\0@\0\0\0\0\0\0\0@\0\0\0\0\0\
	\0\0000\^B\0\0\0\0\0\0000\^B\0\0\0\0\0\0\b\0\0\0\0\0\0\0\^C\0\0\0\^D\0\
	\0\0000\^D\^P\0\0\0\0\0000\^D\^P\0\0\0\0\0000\^D\^P\0\0\0\0\0\^\\0\0\0\
	\0\0\0\0\^\\0\0\0\0\0\0\0\^P\0\0\0\0\0\0\0\^A\0\0\0\^E\0\0\0\0\0\0\0\0\
	\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0(Q\^P\0\0\0\0\0(Q\^P\0\0\0\0\0\0\
	\0\^P\0\0\0\0\0\^A\0\0\0\^F\0\0\0(Q\^P\0\0\0\0\0(Q \0\0\0\0\0(Q \0\0\0\
	\0\0 x\^A\0\0\0\0\0\M-@\M-<\^A\0\0\0\0\0\0\0\^P\0\0\0\0\0\^B\0\0\0\^F\
	\0\0\0x\M-B\^Q\0\0\0\0\0x\M-B!\0\0\0\0\0x\M-B!\0\0\0\0\0\M-P\^A\0\0\0\
	\0\0\0\M-P\^A\0\0\0\0\0\0\b\0\0\0\0\0\0\0\^D\0\0\0\^D\0\0\0p\^B\0\0\0\
	\0\0\0p\^B\0\0\0\0\0\0p\^B\0\0\0\0\0\0 \0\0\0\0\0\0\0 \0\0\0\0\0\0\0\
	\^D\0\0\0\0\0\0\0\^D\0\0\0\^D\0\0\0\M^P\^B\0\0\0\0\0\0\M^P\^B\0\0\0\0\
	\0\0\M^P\^B\0\0\0\0\0\0\^X\0\0\0\0\0\0\0\^X\0\0\0\0\0\0\0\^D\0\0\0\0\0\
	\0\0\a\0\0\0\^D\0\0\0\M^H\M^U\^P\0\0\0\0\0\M^H\M^U \0\0\0\0\0\M^H\M^U \
	\0\0\0\0\0\^P\0\0\0\0\0\0\0P\0\0\0\0\0\0\0\b\0\0\0\0\0\0\0P\M-etd\^D\0\
	\0\0L\^D\^P\0\0\0\0\0L\^D\^P\0\0\0\0\0L\^D\^P\0\0\0\0\0\M-\L\0\0\0\0\0\
	\0\M-\L\0\0\0\0\0\0\^D\0\0\0\0\0\0\0Q\M-etd\^F\0\0\0\0\0\0\0\0\0\0\0\0\
	\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\b\0\0\0\
	\0\0\0\0\^D\0\0\0\^P\0\0\0\^A\0\0\0GNU\0"
 18997 thr_linux RET   read 640/0x280
 18997 thr_linux CALL  lseek(3,0x270,0)
 18997 thr_linux RET   lseek 624/0x270
 18997 thr_linux CALL  read(3,0x7f7fffffd868,0x20)
 18997 thr_linux GIO   fd 3 read 32 bytes
       "\^D\0\0\0\^P\0\0\0\^A\0\0\0GNU\0\0\0\0\0\^B\0\0\0\^F\0\0\0\^D\0\0\0"
 18997 thr_linux RET   read 32/0x20
 18997 thr_linux CALL  fstat64(3,0x7f7fffffd7f8)
 18997 thr_linux RET   fstat64 0
 18997 thr_linux CALL  mmap(0,0x1000,3,0x22,0xffffffff,0)
 18997 thr_linux RET   mmap 8597458944/0x20072d000
 18997 thr_linux CALL  mmap(0,0x220de8,5,2,3,0)
 18997 thr_linux RET   mmap 8597463040/0x20072e000
 18997 thr_linux CALL  madvise(0x20072e000,0x220de8,3)
 18997 thr_linux RET   madvise 0
 18997 thr_linux CALL  mprotect(0x200834000,0x11ade8,0)
 18997 thr_linux RET   mprotect 0
 18997 thr_linux CALL  mmap(0x20092e000,0x1d000,3,0x12,3,0x100000)
 18997 thr_linux RET   mmap 8599560192/0x20092e000
 18997 thr_linux CALL  mmap(0x20094b000,0x3de8,3,0x32,0xffffffff,0)
 18997 thr_linux RET   mmap 8599678976/0x20094b000
 18997 thr_linux CALL  close(3)
 18997 thr_linux RET   close 0
 18997 thr_linux CALL  mmap(0,0x1000,3,0x22,0xffffffff,0)
 18997 thr_linux RET   mmap 8599695360/0x20094f000
 18997 thr_linux CALL  arch_prctl(0x1002,0x20094f0a0)
 18997 thr_linux RET   arch_prctl 0
 18997 thr_linux CALL  munmap(0x200617000,0x1a54)
 18997 thr_linux RET   munmap 0
 18997 thr_linux CALL  set_tid_address(0x20094f130)
 18997 thr_linux RET   set_tid_address 18997/0x4a35
 18997 thr_linux CALL  rt_sigaction(SIGRT0,0x7f7fffffdf98,0,8)
 18997 thr_linux RET   rt_sigaction 0
 18997 thr_linux CALL  rt_sigprocmask(1,0x7f7fffffe270,0,8)
 18997 thr_linux RET   rt_sigprocmask 0
 18997 thr_linux CALL  getrlimit(3,0x7f7fffffe258)
 18997 thr_linux RET   getrlimit 0
 18997 thr_linux CALL  __sysctl(0x7f7fffffdfb8)
 18997 thr_linux RET   __sysctl 0
 18997 thr_linux CALL  mmap(0,0x200000,3,0x62,0xffffffff,0)
 18997 thr_linux RET   mmap 8599699456/0x200950000
 18997 thr_linux CALL  brk(0)
 18997 thr_linux RET   brk 5246976/0x501000
 18997 thr_linux CALL  brk(0x522000)
 18997 thr_linux RET   brk 5382144/0x522000
 18997 thr_linux CALL  brk(0)
 18997 thr_linux RET   brk 5382144/0x522000
 18997 thr_linux CALL  mprotect(0x200950000,0x1000,0)
 18997 thr_linux RET   mprotect 0
 18997 thr_linux CALL  clone(0x3d0f00,0x200b4f8b0,0x200b4fa00,0x200b4fa00)
 18997 thr_linux RET   clone 19126/0x4ab6
 18997 thr_linux CALL  fstat64(1,0x7f7fffffda00)
 18997 thr_linux RET   fstat64 0
 18997 thr_linux CALL  ioctl(1,_IO('T',0x1,0),0x7f7fffffd970)
 18997 thr_linux RET   ioctl 0
 18997 thr_linux CALL  mmap(0,0x10000,3,0x22,0xffffffff,0)
 18997 thr_linux RET   mmap 8601796608/0x200b50000
 18997 thr_linux CALL  write(1,0x200b50000,0x11)
 18997 thr_linux GIO   fd 1 wrote 17 bytes
       "main hello world
       "
 18997 thr_linux RET   write 17/0x11
 18997 thr_linux CALL  futex(0x20094b460,1,1,0x22,0xffffffff,0)
 18997 thr_linux RET   futex 1
 18997 thr_linux CALL  futex(0x200b4fa00,0,0x4a35,0,0,0)
 18997 thr_linux RET   futex 0
 18997 thr_linux PSIG  SIGINT SIG_DFL

--fdj2RfSjLxBAspz7--