pixman [LSARC/2008/637 FastTrack timeout 10/22/2008]
Alan Coopersmith
Alan.Coopersmith at sun.com
Wed Oct 15 16:28:19 PDT 2008
James Carlson wrote:
> Alan Coopersmith writes:
>> This ensures that binary incompatible versions can be installed
>> in parallel. See http://www106.pair.com/rhp/parallel.html for
>> more information
>
> That doesn't work as a precedent for Solaris (and probably not for any
> other OS with dynamic linking). The problem is that it runs right
> into the well-known single application address space problems. An
> application can easily end up with a melange of library versions
> colliding with each other through no fault of its own, and this scheme
> just enables that failure mode.
>
> I hope we're not really planning to apply it here.
Fully understood, and we already argued that with the maintainer when he
implemented this scheme last year. His answer was:
* Linking two incompatible versions of pixman into the same process
can *never* work. It's retarded and irrelevant to the issue. I am
not listening about obscure ELF and ld.so features.
* Two incompatible versions of a library can be *installed* at the
same time and linked to two different executables if the libraries
have different names. This is useful and required so that separate
projects can upgrade at separate times.
[ http://lists.freedesktop.org/archives/xorg/2007-August/026876.html ]
Certainly if there is ever a libpixman-2, we will have to be very careful
about how it's integrated, but having Cairo on the client side link against
libpixman-2 while Xorg links against libpixman-1 on the server side should
work - it's just situations like Xorg using libpixman-1 while an Xorg
driver links to libpixman-2 that we have to avoid.
>> /usr/lib/libpixman-1.so.0 Volatile
>
> Wouldn't we ordinarily call this something like "libpixman.so.1"? (It
> looks like this is an Ubuntuism, and other systems have it installed
> differently ... *sigh*.)
Yes, but this is the name from upstream that will be used on all other OS'es,
due to the above mentioned plan for allowing parallel versions to be installed.
We've already got plenty of precedent for these in the GNOME libraries (since
the referenced URL promoting this scheme comes from GNOME developer Havoc
Pennington, who used it heavily in GNOME).
--
-Alan Coopersmith- alan.coopersmith at sun.com
Sun Microsystems, Inc. - X Window System Engineering
More information about the opensolaris-arc
mailing list