Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 31 Oct 2002 22:15:51 +1100 (EST)
From:      Bruce Evans <bde@zeta.org.au>
To:        Alfred Perlstein <alfred@FreeBSD.org>
Cc:        Peter Wemm <peter@wemm.org>, <cvs-committers@FreeBSD.org>, <cvs-all@FreeBSD.org>
Subject:   Re: cvs commit: src/lib/libc/stdio findfp.c
Message-ID:  <20021031220322.Y9371-100000@gamplex.bde.org>
In-Reply-To: <20021031095115.GW24139@elvis.mu.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, 31 Oct 2002, Alfred Perlstein wrote:

> * Bruce Evans <bde@zeta.org.au> [021031 01:25] wrote:
> > On Wed, 30 Oct 2002, Peter Wemm wrote:
> >
> > > Alfred Perlstein wrote:
> > > > alfred      2002/10/30 17:54:27 PST
> > > >
> > > >   Modified files:
> > > >     lib/libc/stdio       findfp.c
> > > >   Log:
> > > >   Make __sF static.  This can not be allowed to exist in 5.x.
> > >
> > > Heh, I so badly wanted to do this, but couldn't quite work up the nerve.
> >
> > You already did, but thought better of it.
> >
> > "Fixing" signal handling broke even more things here.  Old kernels can no
> > longer run many new binaries because new binaries use the new sigaction()
> > syscall just to select the type of signal context passed to signal handlers,
> > most of which don't care about the type.
>
> While this is true and you are correct, I don't see how this
> reflects negatively on the decision to statisize __sF.

It reflects positively (unfortunately).  Almost everything is incompatible
unless they were compiled at the same time.  OTOH, recompiling all
applications to make them stop using __sF makes them not work on yesterday's
kernel.  I require more backwards compatibility than that for regression
testing, so i don't use the new sigaction() or the staticized __sF.

> The idea it to get rid of this in a fashion that while somewhat
> aburbt saves us from pain later if we choose to resize the
> struct FILE (which would cause much weirder breakage).

Staticizing it doesn't actually fix anything.  It just breaks applications
that are linked with old versions of libc and forces owners of these
applications to recompile them before they want to.

Bruce


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe cvs-all" in the body of the message




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