This is the mail archive of the libc-hacker@sources.redhat.com mailing list for the glibc project.

Note that libc-hacker is a closed list. You may look at the archives of this list, but subscription and posting are not open.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] Fix bug with popen/pthread_create


Jakub Jelinek <jakub@redhat.com> writes:

|> --- libc/linuxthreads/sysdeps/unix/sysv/linux/i386/vfork.S.jj	2003-01-09 15:27:26.000000000 -0500
|> +++ libc/linuxthreads/sysdeps/unix/sysv/linux/i386/vfork.S	2003-02-06 13:31:43.000000000 -0500
|> @@ -31,7 +31,19 @@ ENTRY (__vfork)
|>  
|>  #ifdef __NR_vfork
|>  
|> -	SINGLE_THREAD_P
|> +# ifdef SHARED
|> +#  if !defined HAVE_HIDDEN || !USE___THREAD
|> +	SETUP_PIC_REG (cx)
|> +#  else
|> +	call	__i686.get_pc_thunk.cx
|> +#  endif
|> +	addl	$_GLOBAL_OFFSET_TABLE_, %ecx
|> +	cmpl	$0, __libc_pthread_functions@GOTOFF(%ecx)
|> +# else
|> +	.weak	__pthread_fork
|> +	movl	$__pthread_fork, %eax
|> +	testl	%eax, %eax
|> +# endif
|>  	jne	HIDDEN_JUMPTARGET (__fork)
|>  
|>  	/* Pop the return PC value into ECX.  */

Shouldn't that be moved outside of #ifdef __NR_vfork, so that __fork is
used even if compiling with kernel headers that do not define vfork?  The
minimum for i386 is still 2.0.10.

Andreas.

-- 
Andreas Schwab, SuSE Labs, schwab@suse.de
SuSE Linux AG, Deutschherrnstr. 15-19, D-90429 Nürnberg
Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]