[Lldb-commits] [PATCH] D91634: [lldb] Error when there are no ports to launch a gdbserver on
Pavel Labath via Phabricator via lldb-commits
lldb-commits at lists.llvm.org
Wed Nov 25 05:01:57 PST 2020
labath added a comment.
Looks good. Just some cosmetic details...
================
Comment at: lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServer.h:30
public:
- using PortMap = std::map<uint16_t, lldb::pid_t>;
using PacketHandler =
----------------
DavidSpickett wrote:
> Only the one in GDBRemoteCommunicationServerPlatform is/was used.
cool
================
Comment at: lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerPlatform.cpp:74
+ uint16_t port, lldb::pid_t pid) {
+ std::map<uint16_t, lldb::pid_t>::iterator pos = m_port_map.find(port);
+ if (pos != m_port_map.end()) {
----------------
`auto`, maybe
================
Comment at: lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerPlatform.h:29-30
+ public:
+ PortMap() = default;
+ PortMap(uint16_t min_port, uint16_t max_port);
+ // Add a port to the map. Does not change anything if it is already in the
----------------
Add some comments to explain what these do.
================
Comment at: lldb/tools/lldb-server/lldb-platform.cpp:234
if (ch == 'P')
- gdbserver_portmap[portnum] = LLDB_INVALID_PROCESS_ID;
+ gdbserver_portmap.AllowPort(static_cast<uint16_t>(portnum));
else if (ch == 'm')
----------------
Why the cast?
================
Comment at: lldb/unittests/tools/lldb-server/tests/PortMapTest.cpp:1
+//===-- PortMapTest.cpp ---------------------------------------------------===//
+//
----------------
Please put this under `unittests/Process/gdb-remote`. The tests in here are a failed experiment, and I'll hopefully get rid of them soon.
================
Comment at: lldb/unittests/tools/lldb-server/tests/PortMapTest.cpp:24-25
+ llvm::Expected<uint16_t> available_port = p1.GetNextAvailablePort();
+ ASSERT_THAT_EXPECTED(available_port, llvm::Succeeded());
+ ASSERT_EQ(0, *available_port);
+
----------------
ASSERT_THAT_EXPECTED(p1.GetNextAvailablePort(), llvm::HasValue(0));
================
Comment at: lldb/unittests/tools/lldb-server/tests/PortMapTest.cpp:33-34
+ available_port = p1.GetNextAvailablePort();
+ ASSERT_THAT_EXPECTED(available_port, llvm::Succeeded());
+ ASSERT_EQ(1, *available_port);
+
----------------
Same, here, and further on...
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D91634/new/
https://reviews.llvm.org/D91634
More information about the lldb-commits
mailing list