On 22.12.2016 19:47, Kamil Rytarowski wrote: > On 16.12.2016 18:35, Kamil Rytarowski wrote: >> Hello, >> >> My initial goal is to copy the Linux Process Plugin and add minimal >> functional support for NetBSD. It will be followed with running and >> passing some tests from the lldb-server test-suite. >> > > Summary for check-lldb target in wip/lldb-netbsd as of 2016-12-21 > pkgsrc-wip git revision f1105fa7a9f6d7b014dbe272c789c43472a63e92 > > =================== > Test Result Summary > =================== > Test Methods: 1197 > Reruns: 1 > Success: 252 > Expected Failure: 20 > Failure: 307 > Error: 162 > Exceptional Exit: 1 > Unexpected Success: 1 > Skip: 436 > Timeout: 18 > Expected Timeout: 0 > > More detailed results: > http://netbsd.org/~kamil/lldb/check-lldb-r289997-2016-12-22.txt > NetBSD can now catch and properly distinguish the following events in NativeProcessNetBSD::MonitorCallback: - process termination - execve(2) - software breakpoint - single step - fork - vfork done - thread creation - thread termination - other signal passed to tracee Currently unimplemented on NetBSD, but initial code in LLDB added: - vfork There is code-path added, but untested, as currently not trivial to check: - hw watchpoint fired At the moment there are no other events known that need to be handled. Update of the "check-lldb" result (diff too 2016-12-22): pkgsrc-wip revision 149def4215b894a97a9bcdc06120d6381237335b llvm+clang+lldb svn r. 289997 The result is similar, as the process after distinguishing the exact event type, that stopped the child, it still hangs. =================== Test Result Summary =================== -Test Methods: 1197 +Test Methods: 1195 Reruns: 1 -Success: 252 +Success: 256 Expected Failure: 20 -Failure: 307 -Error: 162 +Failure: 290 +Error: 159 Exceptional Exit: 1 Unexpected Success: 1 -Skip: 436 -Timeout: 18 +Skip: 440 +Timeout: 28 Expected Timeout: 0 More detailed results http://netbsd.org/~kamil/lldb/check-lldb-r289997-2017-01-18.txt To finish the stage I, I still need to: 1. Determine why LLDB hangs after finishing NativeProcessNetBSD::MonitorCallback for signals and fix it. 2. Add support for resuming the tracee after interruption. Once finished, I will publish an entry on the NetBSD Foundation Blog with a summary and move on to Stage II. I'm planning a lighter set of few tasks that need to be done at some point to finish the overall LLDB task and to reduce the complexity of NetBSD porting later.
Attachment:
signature.asc
Description: OpenPGP digital signature