help-make
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

HA: Why `make` could hang


From: Bely Uladzimir
Subject: HA: Why `make` could hang
Date: Fri, 1 Oct 2021 09:01:58 +0000

Additionaly, here are attaching new debug logs where filenames are mentioned.

I'll also do a core dump later.

Anyway, is there any chance to get a proper exit from `make`? So that build 
won't hang and just will finish with error?

________________________________________
От: Paul Smith [psmith@gnu.org]
Отправлено: 30 сентября 2021 г. 21:04
Кому: Bely Uladzimir; help-make@gnu.org
Тема: Re: Why `make` could hang

On Thu, 2021-09-30 at 18:56 +0300, uladzimir.bely@promwad.com wrote:
> We haven't stop the process yet, so the hanging `make` process 20421
> is still running on the server. So, we could attach again with gdb to
> it and extract any useful information that could help to understand
> what had happened.

I won't have time to look at this until the weekend at the earliest.

However, it seems that make believes that one of the jobs it started is
still running, since it goes through the:

54           DBF (DB_VERBOSE, _("Still updating file '%s'.\n"));

over and over.

You would probably find some interesting information by examining (via
the debugger) _which_ file this is; when you hit this line, print out
the value if file->name, or even the entire *file structure.  Do that a
few times in a row and see if the file changes or if it's always the
same one.

You should probably also take a gcore of the running process before you
kill it; in some ways it's simpler to debug a running process but
having a coredump of the process is the next best thing.

FYI, I haven't seen anything like this.  However I know there are
issues with make's handling of fatal signals such as SIGINT, etc.
especially if >1 of them is received by the same make process.  That's
a difficult problem to solve; I have a kind of sample solution that
doesn't quite work but have not had a chance to complete it.

Attachment: gdb_steps_2.txt
Description: gdb_steps_2.txt

Attachment: gdb_steps_2_file_names.txt
Description: gdb_steps_2_file_names.txt


reply via email to

[Prev in Thread] Current Thread [Next in Thread]