https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79200

            Bug ID: 79200
           Summary: Race-Condition in Address Santitizer
           Product: gcc
           Version: 5.3.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: sanitizer
          Assignee: unassigned at gcc dot gnu.org
          Reporter: tommapson at gmx dot de
                CC: dodji at gcc dot gnu.org, dvyukov at gcc dot gnu.org,
                    jakub at gcc dot gnu.org, kcc at gcc dot gnu.org
  Target Milestone: ---

Multiple concurrent executables hang when being built by gcc-6.3.0 (as well as
gcc-5.3.0) with -fsanitize=address.

To reproduce this bug, you may use the following trivial C program:

----- main.c ----
int main(int ac, char** av)
{
  return 0;
}
-----

Compile with
  gcc -fsanitize=address main.c -o main

Run multiple instances concurrently (bash on Debian Wheezy or Jessie):
  for i in $(seq 20000) ; do ( ./main >/dev/null 2>&1 & ) ; done ; echo
"SLEEPING..." ; sleep 120

Some of the executables hang as can be seen using ps or top. The processes are
reported to have state "T" (stopped, either by a job control signal or because
it is being traced).

If compiled without -fsanitize=address, the above loop does not cause any of
the processes to hang.

Reply via email to