From owner-freebsd-x11@FreeBSD.ORG Sun Jul 3 14:04:05 2011 Return-Path: Delivered-To: freebsd-x11@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 5BB5C106564A for ; Sun, 3 Jul 2011 14:04:05 +0000 (UTC) (envelope-from kostikbel@gmail.com) Received: from mail.zoral.com.ua (mx0.zoral.com.ua [91.193.166.200]) by mx1.freebsd.org (Postfix) with ESMTP id EE3518FC15 for ; Sun, 3 Jul 2011 14:04:04 +0000 (UTC) Received: from deviant.kiev.zoral.com.ua (root@deviant.kiev.zoral.com.ua [10.1.1.148]) by mail.zoral.com.ua (8.14.2/8.14.2) with ESMTP id p63E41VW058422 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Sun, 3 Jul 2011 17:04:01 +0300 (EEST) (envelope-from kostikbel@gmail.com) Received: from deviant.kiev.zoral.com.ua (kostik@localhost [127.0.0.1]) by deviant.kiev.zoral.com.ua (8.14.4/8.14.4) with ESMTP id p63E416G010198; Sun, 3 Jul 2011 17:04:01 +0300 (EEST) (envelope-from kostikbel@gmail.com) Received: (from kostik@localhost) by deviant.kiev.zoral.com.ua (8.14.4/8.14.4/Submit) id p63E40bI010197; Sun, 3 Jul 2011 17:04:00 +0300 (EEST) (envelope-from kostikbel@gmail.com) X-Authentication-Warning: deviant.kiev.zoral.com.ua: kostik set sender to kostikbel@gmail.com using -f Date: Sun, 3 Jul 2011 17:04:00 +0300 From: Kostik Belousov To: bf1783@gmail.com Message-ID: <20110703140400.GO48734@deviant.kiev.zoral.com.ua> References: <4E0FCDD1.7050809@missouri.edu> <4E0FD8DC.20700@missouri.edu> <20110703114104.GK48734@deviant.kiev.zoral.com.ua> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="nXucBt6eH9hBxxTS" Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.4.2.3i X-Virus-Scanned: clamav-milter 0.95.2 at skuns.kiev.zoral.com.ua X-Virus-Status: Clean X-Spam-Status: No, score=-3.3 required=5.0 tests=ALL_TRUSTED,AWL,BAYES_00, DNS_FROM_OPENWHOIS autolearn=no version=3.2.5 X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on skuns.kiev.zoral.com.ua Cc: "freebsd-x11@FreeBSD.org" Subject: Re: x11/nvidia-driver incompatible with portmaster? X-BeenThere: freebsd-x11@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: X11 on FreeBSD -- maintaining and support List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 03 Jul 2011 14:04:05 -0000 --nXucBt6eH9hBxxTS Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Sun, Jul 03, 2011 at 12:45:50PM +0000, b. f. wrote: > On 7/3/11, Kostik Belousov wrote: > > On Sun, Jul 03, 2011 at 03:54:15AM +0000, b. f. wrote: > >> On 7/3/11, Stephen Montgomery-Smith wrote: > >> > On 07/02/2011 09:02 PM, Stephen Montgomery-Smith wrote: > >> >> On 07/02/2011 08:39 PM, b. f. wrote: > ... > > > > That said, there is absolutely no need in any static linker tricks, > > esp. a heavy one like filters or linker scripts. A symlink named >=20 > What is the overhead of rtld filtering? The first binding of the filtered symbol causes the load of the filtee library, with all associated cost. Further binding of the symbols from the same filter/filtee pair has an overhead of one more symbol lookup. >=20 > > libGL.so would be enough for the static linker, pointing to any > > of two libraries. And symlink libGL.so.1 would be also enough > > for dynamic linker. > > > > The real issue with xorg-server, mesa and nvidia driver is only > > the overwrite of extensions/libglx.so and lib/libGL.so.1. If > > this can be somewhat solved by the packaging system, that would > > be great. On my hybrid laptop I have to manually manage the > > said symlinks (actually, with the rc script that verifies > > the list of pci devices and arranges the symlinks). >=20 > So basically, you would prefer that we: >=20 > patch xorg-server so that it installs, e.g., > ${PREFIX}/lib/xorg/modules/extensions/libglx-xorg.so.1 instead of > ${PREFIX}/lib/xorg/modules/extensions/libglx.so.1, and points the > symlink ${PREFIX}/lib/xorg/modules/extensions/libglx-xorg.so at the > former; >=20 > patch libGL so that it installs, e.g., ${PREFIX}/lib/libGL-mesa.so.1 > instead of ${PREFIX}/lib/libGL.so.1, and points the symlink > ${PREFIX}/lib/libGL.so at the former; >=20 > and patch nvidia-driver so that it installs, e.g., > ${PREFIX}/lib/xorg/modules/extensions/libglx-nvidia.so.1 instead of > ${PREFIX}/lib/xorg/modules/extensions/libglx.so.1, and > ${PREFIX}/lib/libGL-nvidia.so.1 instead of ${PREFIX}/lib/libGL.so.1; > and during installation it overwrites the > ${PREFIX}/lib/xorg/modules/extensions/libglx-xorg.so and > ${PREFIX}/lib/libGL.so symlinks, redirecting them to the corresponding > nvidia libraries; while during deinstallation it changes them to point > to the mesa/xorg libraries? Yes. >=20 > And corresponding redirection to handle the libtool archive file? I do not think this is needed. First, I believe .la files are only installed by the Xorg ports. Second, as I described, libGL.so from Xorg and from NVidia should be replacable for the static linking purposes. Third, libglx.la is not used at all. >=20 > b. On Sun, Jul 03, 2011 at 01:33:09PM +0000, b. f. wrote: > On second thought the renaming of these libraries is not very > convenient, since they are built by nvidia, and not necessary if their > mesa/xorg counterparts already have different names. As I said, it is useful for me on the hybrid laptop, where a switch selects the GPU attached to the panel. The startup script then would only need to create proper symlink, instead of delicate renaming of the libraries. --nXucBt6eH9hBxxTS Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.11 (FreeBSD) iEYEARECAAYFAk4QdtAACgkQC3+MBN1Mb4i9iQCfeo3LLQGBb5amGN8jw91B89PS ro4AnjtIT4tC0W7xLjgwPQ+GiWgcmVg7 =HOYH -----END PGP SIGNATURE----- --nXucBt6eH9hBxxTS--