labath added a comment.
Thank you for jumping onto this. I've tried the patch out on linux, and the
stop-hook-threads.test now passes. However, the basic test now fails for me
because the stop hook isn't fired in the "run" command. it is caused by the "is
hijacked" check in `ProcessEventData::DoOnRemoval`, as removing that condition
causes to hook to fire, but that's probably not the right thing to do here. The
difference here is probably caused by PlatformLinux hijacking the process
events during the launch sequence
https://github.com/llvm-mirror/lldb/blob/76c0545e7f24cd6636df61292472df64cfa2900e/source/Plugins/Platform/Linux/PlatformLinux.cpp#L337,
but I am not sure where is the error here. I definitely know that there is
something fishy going on in PlatformLinux, as e.g. we don't get a "Process XXX
stopped" message when launching with the --stop-at-entry flag, so it's quite
possible the error is there. If you think that the general behavior is right
there, then we can just XFAIL this test for linux, and one of us will get to
fixing PlatformLinux eventually.
================
Comment at: lit/ExecControl/StopHook/stop-hook-threads.test:36
# When we don't filter, we expect to count 12 stopped threads in the thread
list output
-# CHECK-NO-FILTER-COUNT-12: at stop-hook-threads.cpp{{.*}} stop reason =
breakpoint
\ No newline at end of file
+# CHECK-NO-FILTER-COUNT-12: , stop reason = breakpoint 3.1
----------------
BTW, this check is fairly dodgy, because in the case of two threads hitting a
breakpoint simultaneously, we will get 4 stop reasons instead of two ("thread
list" will be executed twice, and each instance will print the stop reason for
both threads). It might be better to replace "thread list" with a different
command, or add synchronization to the test to prevent two threads from hitting
the breakpoint at once, depending on what we want to test.
Repository:
rLLDB LLDB
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D58394/new/
https://reviews.llvm.org/D58394
_______________________________________________
lldb-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits