https://github.com/DavidSpickett created
https://github.com/llvm/llvm-project/pull/212256
This test has been flaky on x86 Github CI. It expects:
[ 0] {{.*}} 0x0000000000ee0000 {{.*}}module_load
[ 1] {{.*}} 0x0000000000ef0000 {{.*}}[vdso]
However in one run it got:
[ 0] 98FC07B8 0x0000000000ef0000 [vdso] (0xef0000)
[ 1] 75B11BBB-EF8B-5645-B9B1-A7261EC8ABCF-05413284 0x0000000000ed8ed0
/home/gha/actions-runner/bin/Runner.Worker
This happened because the responder says it's debugging PID 0x47, which is
usually some root process that we cannot read the /proc/pid/exe link for.
However when it is readable, we will assume that is the program file and it
replaces the "module_load" entry.
In the failing case, 0x47 happened to be a github runner process that lldb
could get the exe for.
I was able to reproduce this by putting a long sleep in the background and
replacing 0x47 with that sleep's PID.
The test does not need to give a PID to check what it's checking, so I've
removed it and now there's no PID to clash with.
>From 56ecb67e4f049dc7c7bd41b1e5cec87aec38c8db Mon Sep 17 00:00:00 2001
From: David Spickett <[email protected]>
Date: Mon, 27 Jul 2026 13:44:04 +0000
Subject: [PATCH] [lldb][test] Do not return a PID in TestGdbClientModuleLoad
This test has been flaky on x86 Github CI. It expects:
VDSO: [ 0] {{.*}} 0x0000000000ee0000 {{.*}}module_load
VDSO: [ 1] {{.*}} 0x0000000000ef0000 {{.*}}[vdso]
However in one run it got:
[ 0] 98FC07B8 0x0000000000ef0000 [vdso] (0xef0000)
[ 1] 75B11BBB-EF8B-5645-B9B1-A7261EC8ABCF-05413284 0x0000000000ed8ed0
/home/gha/actions-runner/bin/Runner.Worker
This happened because the responder says it's debugging PID
0x47, which is usually some root process that we cannot read
the /proc/pid/exe link for. However when it is readable, we
will assume that is the program file and it replaces the
"module_load" entry.
In the failing case, 0x47 happened to be a github runner process
that lldb could get the exe for.
I was able to reproduce this by putting a long sleep in the
background and replacing 0x47 with that sleep's PID.
The test does not need to give a PID to check what it's
checking, so I've removed it and now there's no PID to clash
with.
---
.../gdb_remote_client/TestGdbClientModuleLoad.py | 10 +---------
1 file changed, 1 insertion(+), 9 deletions(-)
diff --git
a/lldb/test/API/functionalities/gdb_remote_client/TestGdbClientModuleLoad.py
b/lldb/test/API/functionalities/gdb_remote_client/TestGdbClientModuleLoad.py
index 2286c384d2320..8c7a1239ebe18 100644
--- a/lldb/test/API/functionalities/gdb_remote_client/TestGdbClientModuleLoad.py
+++ b/lldb/test/API/functionalities/gdb_remote_client/TestGdbClientModuleLoad.py
@@ -59,16 +59,8 @@ def qXferRead(self, obj, annex, offset, length):
else:
return None, False
- def qfThreadInfo(self):
- return "m47"
-
- def qsThreadInfo(self):
- return "l"
-
def qProcessInfo(self):
- return "pid:47;ptrsize:8;endian:little;triple:%s;" % hex_encode_bytes(
- self._triple
- )
+ return "ptrsize:8;endian:little;triple:%s;" %
hex_encode_bytes(self._triple)
def setBreakpoint(self, packet):
return "OK"
_______________________________________________
lldb-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits