Date: Wed, 12 Dec 2007 10:12:27 +0100 From: Alexander Leidinger <Alexander@Leidinger.net> To: David Schultz <das@FreeBSD.ORG> Cc: Daniel Eischen <deischen@FreeBSD.ORG>, Kostik Belousov <kostikbel@gmail.com>, freebsd-arch@FreeBSD.ORG Subject: Re: RFC: libkse*.a in 7.0 Message-ID: <20071212101227.jl3lqsypnowww044@webmail.leidinger.net> In-Reply-To: <20071211233301.GA22692@VARK.MIT.EDU> References: <20071128211022.GA74762@lor.one-eyed-alien.net> <20071128213947.Q7555@fledge.watson.org> <20071210192533.GA15728@VARK.MIT.EDU> <20071210220854.07e02f1f@deskjail> <20071210223838.GB16598@VARK.MIT.EDU> <20071211080216.pb3b95teoggko00o@webmail.leidinger.net> <20071211112150.GA1214@deviant.kiev.zoral.com.ua> <Pine.GSO.4.64.0712110845370.1059@sea.ntplx.net> <20071211233301.GA22692@VARK.MIT.EDU>
next in thread | previous in thread | raw e-mail | index | archive | help
Quoting David Schultz <das@FreeBSD.ORG> (from Tue, 11 Dec 2007 =20 18:33:01 -0500): > On Tue, Dec 11, 2007, Daniel Eischen wrote: >> On Tue, 11 Dec 2007, Kostik Belousov wrote: >> >> >On Tue, Dec 11, 2007 at 08:02:16AM +0100, Alexander Leidinger wrote: >> >>I work in the office of SUN in Luxembourg, and one of our ideas for a >> >>client was to run a Solaris 8/9 in a zone of a Solaris 10 as a >> >>replacement for machines with Solaris 8/9. As we have a service >> >>contract with our client, we have to take some business constraints >> >>into account. And one of those business constraints is that Solaris >> >>8/9 in a zone of Solaris 10 is not supported, as the kernel interface >> >>(syscalls) changed in an incompatible way. >> > >> >Look at the project Etude. >> >> The syscalls are only exposed in an ABI compliant way through the >> libraries, which is what we should do also. But I think if you >> were to plop the Solaris 10 libraries (at least the symbol-versioned >> ones) over the Solaris 8/9 image, it might have a chance of working >> for you. Hmm, unless the Sun private symbols in Solaris 8/9 were >> not versioned and kept as compatible versions in Solaris 10. >> It might be interesting to try it and see what happens ;-) > > I'm not so sure about that. The truth is that they *do* make > plenty of incompatible changes (referred to internally as "flag > days"), but they ensure that apps linked against the new kernel > and the new libc don't notice. They guarantee the stability of the > ABI between the app and libc, not the stability of the ABI between > libc and the kernel. > > There's an orthogonal issue of "branded zones," which are a new > feature in Solaris 10; they're essentially jails with a different > syscall vector, similar to what is done in the linuxulator. The > original goal was to support Linux binaries and libraries running > in Solaris, but it's also possible to have a Solaris 8 branded > zone running in Solaris 10. In the latter case, you actually *are* > using all the old Solaris 8 libraries in the jail, and there are a > few more caveats in terms of what is supported, as I > understand. This may be what Alex was referring to. Yes and no. Yes regarding using old libraries on a new system. No =20 regarding having this feature only in a jail. Currently we have this =20 feature in the entire system, without the need to tag something as =20 "old" (note: we don't brandelf linux libs, we just load them in the =20 linuxulator, and playing with the syscall vector instead of keeping =20 the current level of backward compatibility in the kernel opens up a =20 can of worms; everyone thinking this is exaggerated is free to head =20 over to the linuxulator and fix the corresponding problems we have =20 with libs there). Bye, Alexander. --=20 Look before you leap. =09=09-- Samuel Butler http://www.Leidinger.net Alexander @ Leidinger.net: PGP ID =3D B0063FE7 http://www.FreeBSD.org netchild @ FreeBSD.org : PGP ID =3D 72077137
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20071212101227.jl3lqsypnowww044>