public inbox for cygwin@cygwin.com
 help / color / mirror / Atom feed
* how to make sure subprocesses die?
@ 2015-08-18 14:11 Noel Grandin
  2015-08-18 14:31 ` Warren Young
  0 siblings, 1 reply; 4+ messages in thread
From: Noel Grandin @ 2015-08-18 14:11 UTC (permalink / raw)
  To: cygwin

Hi

When running GNU make from the cygwin bash prompt and killing it with CTRL-C, the children don't seem to be dying properly.
I have to hit CTRL-C have a dozen times to kill everything off.

Could anyone give me some clues about where to look to solve this?

I'm actually hoping that fixing this simpler case will solve the similar problem we have with runaway jobs not dying
properly on our LibreOffice tinderboxes.

Thanks,
     Noel Grandin


--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: how to make sure subprocesses die?
  2015-08-18 14:11 how to make sure subprocesses die? Noel Grandin
@ 2015-08-18 14:31 ` Warren Young
  2015-08-19  9:09   ` Noel Grandin
  0 siblings, 1 reply; 4+ messages in thread
From: Warren Young @ 2015-08-18 14:31 UTC (permalink / raw)
  To: The Cygwin Mailing List

On Aug 18, 2015, at 8:11 AM, Noel Grandin <noelgrandin@gmail.com> wrote:
> 
> When running GNU make from the cygwin bash prompt and killing it with CTRL-C, the children don't seem to be dying properly.

  $ svn checkout svn://svn.code.sf.net/p/ctags/code/trunk ctags
  $ cd ctags
  $ autoconf && autoheader && ./configure
  $ make -j3
  gcc -I. -I. -DHAVE_CONFIG_H -g -O2 -c args.c
  gcc -I. -I. -DHAVE_CONFIG_H -g -O2 -c ant.c
  gcc -I. -I. -DHAVE_CONFIG_H -g -O2 -c asm.c
  gcc -I. -I. -DHAVE_CONFIG_H -g -O2 -c asp.c
  gcc -I. -I. -DHAVE_CONFIG_H -g -O2 -c awk.c
  gcc -I. -I. -DHAVE_CONFIG_H -g -O2 -c basic.c
  gcc -I. -I. -DHAVE_CONFIG_H -g -O2 -c beta.c
  gcc -I. -I. -DHAVE_CONFIG_H -g -O2 -c c.c
  <Ctrl-C>
  make: *** Deleting file 'basic.o'
  Makefile:220: recipe for target 'beta.o' failed
  make: *** [beta.o] Interrupt
  Makefile:220: recipe for target 'basic.o' failed
  make: *** [basic.o] Interrupt
  $

Works for me.

Disagree?  Provide a replicable, simple test case to show it.
--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: how to make sure subprocesses die?
  2015-08-18 14:31 ` Warren Young
@ 2015-08-19  9:09   ` Noel Grandin
  2015-08-19 19:02     ` Warren Young
  0 siblings, 1 reply; 4+ messages in thread
From: Noel Grandin @ 2015-08-19  9:09 UTC (permalink / raw)
  To: cygwin



On 2015-08-18 04:31 PM, Warren Young wrote:
> Works for me.
>
> Disagree?  Provide a replicable, simple test case to show it.
> --

Ah, sorry, I didn't mean to imply I thought it was a bug, I'm sure it's something we're doing, I was just wondering if 
anyone had any hints about debugging.

This is the main LibreOffice build, and it's a multi-million line codebase, so shrinking the problem is my first 
priority :-)

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: how to make sure subprocesses die?
  2015-08-19  9:09   ` Noel Grandin
@ 2015-08-19 19:02     ` Warren Young
  0 siblings, 0 replies; 4+ messages in thread
From: Warren Young @ 2015-08-19 19:02 UTC (permalink / raw)
  To: The Cygwin Mailing List

On Aug 19, 2015, at 3:09 AM, Noel Grandin <noelgrandin@gmail.com> wrote:
> 
> On 2015-08-18 04:31 PM, Warren Young wrote:
>> Works for me.
>> 
>> Disagree?  Provide a replicable, simple test case to show it.
> 
> This is the main LibreOffice build, and it's a multi-million line codebase, so shrinking the problem is my first priority :-)

So on the one hand, you have one of the simplest real-world build systems (Exuberant Ctags’) and it works fine, and you have one of the most complicated (LO’s) and it doesn’t work as expected.

Somewhere in that vast gap is your answer.

Instead of trying to shrink LO, what happens if you build LO to completion, then touch a common header file that causes another dozen or so files to need rebuilding?  Does it recur?  What happens if that header file spans multiple subsystems within LO, vs being confined in its effects to just one subsystem?

What I’m getting at is, maybe your problem is in the way one make(1) instance spawns another, something that doesn’t happen in non-nested build systems, as with ctags.  If it all works fine when you’re only rebuilding one subsystem with a single make(1) instance, but fails with nested make(1) calls...
--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2015-08-19 19:02 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-08-18 14:11 how to make sure subprocesses die? Noel Grandin
2015-08-18 14:31 ` Warren Young
2015-08-19  9:09   ` Noel Grandin
2015-08-19 19:02     ` Warren Young

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).