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

Re: Mint Technical Questions.........



>  Question #1
>  -----------
>  Ok.  People have told me that Mint has a blocking-fork() or something
>  and that causes problems with using pipes etc.  Namely it causes me
>  major problems when dealing with GNU configure scripts.
>
>  What are the ramifications of modifying pipefs.c and changing the
>  pipesize from 4096 to say 4*4096 or maybe 8*4096?
>
>  If this is not a good idea, is there a way to avoid this blocking
>  problem?  I primarily only care about GNU configure scripts.
>
>The blocking fork is not an issue when the child process immediately
>follows with an exec. Once the exec occurs, the parent is unblocked.
>This is the standard operation that occurs when a shell spawns a process,
>so the blocking fork is irrelevant there. What version of MiNT are you
>running? If you are having problems with pipeline processes getting
>blocked, more likely you're running into a bug in job-control handling.

There is a bug in bash 1.14.2 that makes shell scripts block when you use long
here-documents (you know : <<! ... !).  The problem is that a signal gets lost
and the shell waits forever for the death of the process that takes the here-
document as input. Because of the blocking fork, this is guaranteed to happen
on MiNT, on a regular Unix box this is very rare because the parent shell
normally has enough time to setup the signal intercept routine after the fork.

If there is interest, and I have some time, I will try to find my patch that
solves this problem.

Joris.