This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [PATCH] BZ #14782 system async cancellation
- From: Andreas Schwab <schwab at linux-m68k dot org>
- To: Rich Felker <dalias at aerifal dot cx>
- Cc: libc-alpha at sourceware dot org
- Date: Thu, 01 Nov 2012 08:31:02 +0100
- Subject: Re: [PATCH] BZ #14782 system async cancellation
- References: <20121101025034.GA6015@brightrain.aerifal.cx>
Rich Felker <dalias@aerifal.cx> writes:
> -/* We have to and actually can handle cancelable system(). The big
> - problem: we have to kill the child process if necessary. To do
> - this a cleanup handler has to be registered and is has to be able
> - to find the PID of the child. The main problem is to reliable have
> - the PID when needed. It is not necessary for the parent thread to
> - return. It might still be in the kernel when the cancellation
> - request comes. Therefore we have to use the clone() calls ability
> - to have the kernel write the PID into the user-level variable. */
> -#ifndef FORK
> -# define FORK() \
> - INLINE_SYSCALL (clone, 3, CLONE_PARENT_SETTID | SIGCHLD, 0, &pid)
> -#endif
What about the other uses?
Andreas.
--
Andreas Schwab, schwab@linux-m68k.org
GPG Key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5
"And now for something completely different."