[Bug 577804] Re: function with attribute((noreturn)) never called in cdebootstrap

Launchpad Bug Tracker 577804 at bugs.launchpad.net
Sun May 9 04:17:34 UTC 2021


[Expired for gcc-defaults (Ubuntu) because there has been no activity
for 60 days.]

** Changed in: gcc-defaults (Ubuntu)
       Status: Incomplete => Expired

-- 
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to gcc-defaults in Ubuntu.
https://bugs.launchpad.net/bugs/577804

Title:
  function with attribute((noreturn)) never called in cdebootstrap

Status in gcc-defaults package in Ubuntu:
  Expired

Bug description:
  Binary package hint: gcc

  cdebootstrap on x86_64 hangs whenever it tries to fork/exec a child
  process. It appears that this is miscompiled:

    if (pid <= 0)
    {
      close (fds_status[0]);
      close (fds_stdout[0]);
      close (fds_stderr[0]);
    }

    if (pid == 0)
      internal_di_exec_child (filename, argv, envp, pid, child_prepare_handler, child_prepare_user_data, fds_status[1], fd_null, fds_stdout[1], fds_stderr[1]);

    close (fd_null);

  strace shows that the child process gets to the close(fd_null) without
  executing any of the statements inside internal_di_exec_child().

  The later function is marked attribute((noreturn)). If I remove that
  attribute, then things work properly.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/gcc-defaults/+bug/577804/+subscriptions



More information about the foundations-bugs mailing list