From owner-freebsd-current Mon Feb 12 14:20:22 2001 Delivered-To: freebsd-current@freebsd.org Received: from mass.dis.org (mass.dis.org [216.240.45.41]) by hub.freebsd.org (Postfix) with ESMTP id F035B37B491 for ; Mon, 12 Feb 2001 14:20:16 -0800 (PST) Received: from mass.dis.org (localhost [127.0.0.1]) by mass.dis.org (8.11.1/8.11.1) with ESMTP id f1CMKUm01666; Mon, 12 Feb 2001 14:20:31 -0800 (PST) (envelope-from msmith@mass.dis.org) Message-Id: <200102122220.f1CMKUm01666@mass.dis.org> X-Mailer: exmh version 2.1.1 10/15/1999 To: Daniel Eischen Cc: freebsd-current@FreeBSD.ORG Subject: Re: -CURRENT is bad for me... In-reply-to: Your message of "Mon, 12 Feb 2001 17:10:58 EST." Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Date: Mon, 12 Feb 2001 14:20:30 -0800 From: Mike Smith Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG > > Then wouldn't the "partially applied patch" rule apply? eg, back it > > out until the issues can be resolved. Breaking the upgrade path isn't > > acceptible. > > If you bump the library versions, doesn't that fix the upgrade > path? No, because the library version bump has already happened. > I can think of a gross hack that gets around the problem for > now. Allocate the FILE with enough storage for the lock, but > don't declare it in FILE. __sF[3] would still be the same > size and we could have __sF_locks[3] internally, and use these > if fp is stdin, stdout, or stderr, else the lock is at the end > of the struct. You can do better than this. Put the lock in FILE, and define a new structure FILE_old, which has the same size/layout as the old FILE structure. Now, __sF is defined as an array of FILE_old and handled specially internally (this part is gross, but necessary). You'll have to put the lock, etc. in a separate array and handle it specially, or you can have real FILE structures shadowing the FILE_old structures. Because this is a hack for binary compatibility and upgrading only, you can throw it away before we actually get to 5.0. -- ... every activity meets with opposition, everyone who acts has his rivals and unfortunately opponents also. But not because people want to be opponents, rather because the tasks and relationships force people to take different points of view. [Dr. Fritz Todt] V I C T O R Y N O T V E N G E A N C E To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message