Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 9 Jun 2004 18:52:41 -0400 (EDT)
From:      Hiten Pandya <hmp@freebsd.org>
To:        Andre Oppermann <andre@freebsd.org>
Cc:        cvs-all@freebsd.org
Subject:   Re: cvs commit: src/lib/libc/stdio fclose.c
Message-ID:  <20040609184556.N14244@fledge.watson.org>
In-Reply-To: <40C78104.F12A8948@freebsd.org>
References:  <200406091924.i59JOM9g016284@repoman.freebsd.org> <40C78104.F12A8948@freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, 9 Jun 2004, Andre Oppermann wrote:

 :Hiten Pandya wrote:
 :>
 :> hmp         2004-06-09 19:24:22 UTC
 :>
 :>   FreeBSD src repository
 :>
 :>   Modified files:        (Branch: RELENG_4)
 :>     lib/libc/stdio       fclose.c
 :>   Log:
 :>   Revert previous commit regarding FUNLOCKFILE(fp), it has ill effects.
 :
 :What ill effects does it have?  I've "make world" a couple of server
 :with this in.  Do I have to remake them again or is it unlikely that
 :I run across the probems?

	Well, the ill effects that I came across was that people
	reported Mozilla and net/freeradius hanging with this change

	As to why it was happening; that's because of inappropriate
	logic employed in lib/libc_r/uthread/uthread_file.c, i.e.,
	in the implementation of the funlockfile() function; it
	checks wether FILE->_file >= 0.  By moving the call to
	FUNLOCKFILE below modification of file flags, it got
	confused because fclose(3) was setting FILE->_file to -1,
	thus leading to a confused FUNLOCKFILE.

	With regard to the problems, you can just recompile your
	libc and it should go away.

	Regards,

	Hiten Pandya
	hmp at freebsd.org



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20040609184556.N14244>