mirror of
https://sourceware.org/git/glibc.git
synced 2024-11-21 12:30:06 +00:00
Fix WAIT_FOR_DEBUGGER for container tests.
For container tests, gdb needs to set the sysroot to the corresponding
testroot.root directory. The assumption was that PIDs < 3 means that
we are running within a container.
Starting with commit 2fe64148a8
"Allow for unpriviledged nested containers", the default is to use
the PID namespace of the parent. Thus support_test_main.c does not
recognize our container anymore.
This patch now assumes that we are running inside a container if
test-container.c has set PID_OUTSIDE_CONTAINER and always uses this
PID independent of having a new PID namespace or not.
Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org>
This commit is contained in:
parent
69239bd7a2
commit
4a829d70ab
@ -195,16 +195,14 @@ run_test_function (int argc, char **argv, const struct test_config *config)
|
||||
char *gdb_script_name;
|
||||
int inside_container = 0;
|
||||
|
||||
mypid = getpid();
|
||||
if (mypid < 3)
|
||||
const char *outside_pid = getenv("PID_OUTSIDE_CONTAINER");
|
||||
if (outside_pid)
|
||||
{
|
||||
const char *outside_pid = getenv("PID_OUTSIDE_CONTAINER");
|
||||
if (outside_pid)
|
||||
{
|
||||
mypid = atoi (outside_pid);
|
||||
inside_container = 1;
|
||||
}
|
||||
mypid = atoi (outside_pid);
|
||||
inside_container = 1;
|
||||
}
|
||||
else
|
||||
mypid = getpid();
|
||||
|
||||
gdb_script_name = (char *) xmalloc (strlen (argv[0]) + strlen (".gdb") + 1);
|
||||
sprintf (gdb_script_name, "%s.gdb", argv[0]);
|
||||
|
Loading…
Reference in New Issue
Block a user