<div>Hi, all</div>
<div> </div>
<div>I tried to use strace-4.5.15(and .20) on linux-2.6.29.4, arm-cortex-a8.</div>
<div> </div>
<div>but strace was detached as soon as was attached one process.</div>
<div> </div>
<div># strace -p 1711 -d<br>Process 1711 attached - interrupt to quit<br> [wait(0x137f) = 1711]<br>pid 1711 stopped, [SIGSTOP]<br> [wait(0x57f) = 1711]<br>pid 1711 stopped, [SIGTRAP]<br>Process 1711 detached</div>
<div> </div>
<div>So, I debuged strace.</div>
<div>After attach, strace try to ptrace(PTRACE_PEEKTEXT) and input param is kernel space's address(0xFFFFxxxx).</div>
<div>This kernel space address's data is scno(restart_syscall).</div>
<div> </div>
<div>address = 0xffff051c, data = 0xef900000(restart_syscall)</div>
<div> </div>
<div>This command is sent kernel mode.</div>
<div>and than, arch_ptrace,kernel function, try to get data this address.</div>
<div>so this function call access_process_vm() -> get_user_pages().</div>
<div> </div>
<div>get_user_pages() function make error because start address param is kernel space's address.</div>
<div>so strace is detached.<br></div>
<div>I think that it is bug to need fix.</div>
<div>If address to want to get data is in kernel space, access_process_vm() just read data. don't call get_user_pages().</div>
<div>Or</div>
<div>strace have not try to peek data, if address is in kernel space.</div>
<div> </div>
<div>How do you think about this problem?</div>