#
a52be0cc |
| 28-Jun-2024 |
Santhosh Kumar Ellendula <quic_sellendu@quicinc.com> |
[lldb-dap] Added "port" property to vscode "attach" command. (#91570)
Adding a "port" property to the VsCode "attach" command likely extends
the functionality of the debugger configuration to allow
[lldb-dap] Added "port" property to vscode "attach" command. (#91570)
Adding a "port" property to the VsCode "attach" command likely extends
the functionality of the debugger configuration to allow attaching to a
process using PID or PORT number.
Currently, the "Attach" configuration lets the user specify a pid. We
tell the user to use the attachCommands property to run "gdb-remote ".
Followed the below conditions for "attach" command with "port" and "pid"
We should add a "port" property. If port is specified and pid is not,
use that port to attach. If both port and pid are specified, return an
error saying that the user can't specify both pid and port.
Ex - launch.json
{
"version": "0.2.0",
"configurations": [
{
"name": "lldb-dap Debug",
"type": "lldb-dap",
"request": "attach",
"gdb-remote-port":1234,
"program": "${workspaceFolder}/a.out",
"args": [],
"stopOnEntry": false,
"cwd": "${workspaceFolder}",
"env": [],
}
]
}
---------
Co-authored-by: Santhosh Kumar Ellendula <sellendu@hu-sellendu-hyd.qualcomm.com>
Co-authored-by: Santhosh Kumar Ellendula <sellendu@hu-sellendu-lv.qualcomm.com>
show more ...
|
Revision tags: llvmorg-18.1.8, llvmorg-18.1.7, llvmorg-18.1.6, llvmorg-18.1.5, llvmorg-18.1.4, llvmorg-18.1.3, llvmorg-18.1.2, llvmorg-18.1.1, llvmorg-18.1.0, llvmorg-18.1.0-rc4, llvmorg-18.1.0-rc3, llvmorg-18.1.0-rc2, llvmorg-18.1.0-rc1, llvmorg-19-init, llvmorg-17.0.6, llvmorg-17.0.5, llvmorg-17.0.4, llvmorg-17.0.3, llvmorg-17.0.2, llvmorg-17.0.1, llvmorg-17.0.0, llvmorg-17.0.0-rc4, llvmorg-17.0.0-rc3, llvmorg-17.0.0-rc2, llvmorg-17.0.0-rc1, llvmorg-18-init, llvmorg-16.0.6, llvmorg-16.0.5 |
|
#
2238dcc3 |
| 25-May-2023 |
Jonas Devlieghere <jonas@devlieghere.com> |
[NFC][Py Reformat] Reformat python files in lldb
This is an ongoing series of commits that are reformatting our Python code. Reformatting is done with `black` (23.1.0).
If you end up having problem
[NFC][Py Reformat] Reformat python files in lldb
This is an ongoing series of commits that are reformatting our Python code. Reformatting is done with `black` (23.1.0).
If you end up having problems merging this commit because you have made changes to a python file, the best way to handle that is to run `git checkout --ours <yourfile>` and then reformat it with black.
RFC: https://discourse.llvm.org/t/rfc-document-and-standardize-python-code-style
Differential revision: https://reviews.llvm.org/D151460
show more ...
|
Revision tags: llvmorg-16.0.4, llvmorg-16.0.3, llvmorg-16.0.2, llvmorg-16.0.1, llvmorg-16.0.0, llvmorg-16.0.0-rc4, llvmorg-16.0.0-rc3, llvmorg-16.0.0-rc2, llvmorg-16.0.0-rc1, llvmorg-17-init, llvmorg-15.0.7, llvmorg-15.0.6, llvmorg-15.0.5, llvmorg-15.0.4, llvmorg-15.0.3, working, llvmorg-15.0.2, llvmorg-15.0.1, llvmorg-15.0.0, llvmorg-15.0.0-rc3 |
|
#
193259cb |
| 12-Aug-2022 |
David Spickett <david.spickett@linaro.org> |
[LLDB] Remove __future__ imports from tests
Not needed now that we require python 3.
Reviewed By: kastiglione, JDevlieghere
Differential Revision: https://reviews.llvm.org/D131761
|
Revision tags: llvmorg-15.0.0-rc2, llvmorg-15.0.0-rc1, llvmorg-16-init, llvmorg-14.0.6 |
|
#
4cc8f2a0 |
| 17-Jun-2022 |
Dave Lee <davelee.com@gmail.com> |
[lldb][tests] Automatically call compute_mydir (NFC)
Eliminate boilerplate of having each test manually assign to `mydir` by calling `compute_mydir` in lldbtest.py.
Differential Revision: https://r
[lldb][tests] Automatically call compute_mydir (NFC)
Eliminate boilerplate of having each test manually assign to `mydir` by calling `compute_mydir` in lldbtest.py.
Differential Revision: https://reviews.llvm.org/D128077
show more ...
|
Revision tags: llvmorg-14.0.5, llvmorg-14.0.4, llvmorg-14.0.3, llvmorg-14.0.2, llvmorg-14.0.1, llvmorg-14.0.0, llvmorg-14.0.0-rc4, llvmorg-14.0.0-rc3, llvmorg-14.0.0-rc2, llvmorg-14.0.0-rc1, llvmorg-15-init, llvmorg-13.0.1, llvmorg-13.0.1-rc3, llvmorg-13.0.1-rc2, llvmorg-13.0.1-rc1, llvmorg-13.0.0, llvmorg-13.0.0-rc4, llvmorg-13.0.0-rc3, llvmorg-13.0.0-rc2, llvmorg-13.0.0-rc1, llvmorg-14-init, llvmorg-12.0.1, llvmorg-12.0.1-rc4, llvmorg-12.0.1-rc3, llvmorg-12.0.1-rc2, llvmorg-12.0.1-rc1 |
|
#
872b1da6 |
| 13-Apr-2021 |
Pavel Labath <pavel@labath.sk> |
[lldb/test] s/add_no_ack_remote_stream/do_handshake
These two functions are doing the same thing, only one of them is sending the packets immediately and the other "queues" them to be sent later. Th
[lldb/test] s/add_no_ack_remote_stream/do_handshake
These two functions are doing the same thing, only one of them is sending the packets immediately and the other "queues" them to be sent later. The first one is better as in case of errors, the backtrace will point straight to the place that caused them.
Modify the first method to avoid duplication, and ten standardize on it.
show more ...
|
Revision tags: llvmorg-12.0.0, llvmorg-12.0.0-rc5, llvmorg-12.0.0-rc4, llvmorg-12.0.0-rc3, llvmorg-12.0.0-rc2 |
|
#
a63daf69 |
| 09-Feb-2021 |
Pavel Labath <pavel@labath.sk> |
[lldb] Remote leftover _llgs from TestGdbRemoteConnection.py
the suffix will be added when the test is instantiated for llgs and debugserver.
|
#
85f025e5 |
| 08-Feb-2021 |
Pavel Labath <pavel@labath.sk> |
[lldb/test] Test lldb-server named pipe functionality on windows
lldb-server can use a named pipe to communicate the port number it is listening on. This windows bits of this are already implemented
[lldb/test] Test lldb-server named pipe functionality on windows
lldb-server can use a named pipe to communicate the port number it is listening on. This windows bits of this are already implemented, but we did not have a test for that, most likely because python does not have native pipe functionality.
This patch implements the windows bits necessary to test this. I'm using the ctypes package to call the native APIs directly to avoid a dependency to non-standard python packages. This introduces some amount of boilerplate, but our named pipe use case is fairly limited, so we should not end up needing to wrap large chunks of windows APIs.
Surprisingly to changes to lldb-server were needed to make the test pass.
Differential Revision: https://reviews.llvm.org/D96260
show more ...
|
Revision tags: llvmorg-11.1.0, llvmorg-11.1.0-rc3, llvmorg-12.0.0-rc1, llvmorg-13-init, llvmorg-11.1.0-rc2, llvmorg-11.1.0-rc1 |
|
#
76a718ee |
| 19-Dec-2020 |
Pavel Labath <pavel@labath.sk> |
[lldb] Deduplicate some lldb-server tests
Merge llgs and debugserver flavours
|
#
bd39a5cb |
| 18-Dec-2020 |
Pavel Labath <pavel@labath.sk> |
[lldb/test] Automatically skip remote lldb-server tests when applicable
The tests don't work with remote debugservers. This isn't a problem with any particular test, but the test infrastructure itse
[lldb/test] Automatically skip remote lldb-server tests when applicable
The tests don't work with remote debugservers. This isn't a problem with any particular test, but the test infrastructure itself, which is why each of these tests has a @skipIfDarwinEmbedded decorator.
This patch replaces that with a central category-based solution. It also moves the ad-hoc windows skipping mechanism there too.
show more ...
|
Revision tags: llvmorg-11.0.1, llvmorg-11.0.1-rc2 |
|
#
c15c2965 |
| 10-Dec-2020 |
Pavel Labath <pavel@labath.sk> |
[lldb/test] Reduce boilerplate in lldb-server tests
Nearly all of our lldb-server tests have two flavours (lldb-server and debugserver). Each of them is tagged with an appropriate decorator, and eac
[lldb/test] Reduce boilerplate in lldb-server tests
Nearly all of our lldb-server tests have two flavours (lldb-server and debugserver). Each of them is tagged with an appropriate decorator, and each of them starts with a call to a matching "init" method. The init calls are mandatory, and it's not possible to meaningfully combine them with a different decorator.
This patch leverages the existing decorators to also tag the tests with the appropriate debug server tag, similar to how we do with debug info flavours. This allows us to make the "init" calls from inside the common setUp method.
show more ...
|
Revision tags: llvmorg-11.0.1-rc1 |
|
#
8cc49bec |
| 28-Oct-2020 |
Pavel Labath <pavel@labath.sk> |
[lldb] Use reverse connection method for lldb-server tests
This fixes an flakyness is all gdb-remote tests. These tests have been (mildly) flaky since we started using "localhost" instead of 127.0.0
[lldb] Use reverse connection method for lldb-server tests
This fixes an flakyness is all gdb-remote tests. These tests have been (mildly) flaky since we started using "localhost" instead of 127.0.0.1 in the test suite. The reason is that lldb-server needs to create two sockets (v4 and v6) to listen for localhost connections. The algorithm it uses first tries to select a random port (bind(localhost:0)) for the first address, and then bind the same port for the second one.
The creating of the second socket can fail as there's no guarantee that port will be available -- it seems that the (linux) kernel tries to choose an unused port for the first socket (I've had to create thousands of sockets to reproduce this reliably), but this can apparantly fail when the system is under load (and our test suite creates a _lot_ of sockets).
The socket creationg operation is considered successful if it creates at least one socket is created, but the test harness has no way of knowing which one it is, so it can end up connecting to the wrong address.
I'm not aware of a way to atomically create two sockets bound to the same port. One way to fix this would be to make lldb-server report the address is it listening on instead of just the port. However, this would be a breaking change and it's not clear to me that's worth it (the algorithm works pretty well under normal circumstances).
Instead, this patch sidesteps that problem by using "reverse" connections. This way, the test harness is responsible for creating the listening socket so it can pass the address that it has managed to open. It also results in much simpler code overall.
To preserve test coverage for the named pipe method, I've moved the relevant code to a dedicated test. To avoid original problem, this test passes raw addresses (as obtained by getaddrinfo(localhost)) instead of "localhost".
Differential Revision: https://reviews.llvm.org/D90313
show more ...
|