From owner-freebsd-x11@FreeBSD.ORG Sun Dec 17 16:30:12 2006 Return-Path: X-Original-To: freebsd-x11@freebsd.org Delivered-To: freebsd-x11@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 1472D16A494 for ; Sun, 17 Dec 2006 16:30:11 +0000 (UTC) (envelope-from isaac.waldron@gmail.com) Received: from nf-out-0910.google.com (nf-out-0910.google.com [64.233.182.189]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1065643CA9 for ; Sun, 17 Dec 2006 16:30:09 +0000 (GMT) (envelope-from isaac.waldron@gmail.com) Received: by nf-out-0910.google.com with SMTP id x37so1602010nfc for ; Sun, 17 Dec 2006 08:30:08 -0800 (PST) DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com; h=received:message-id:date:from:to:subject:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=en3gaw3XNjnsKxV4TjE4uBMo1kUTXhQNFmOYFVsi7SuyePYDnQafAzlWBHM11WxZZhVPeX1ZVfYTjkeiIlHMj02PPj7KJ1Ch1yobsF6+gatfnEthlERzn3GqMg+K3IwfInfJYmd14EFg0xt05LSBEsLBeCZB7dy9iG0hJP9j7Ug= Received: by 10.82.184.2 with SMTP id h2mr391111buf.1166373008502; Sun, 17 Dec 2006 08:30:08 -0800 (PST) Received: by 10.82.157.1 with HTTP; Sun, 17 Dec 2006 08:30:08 -0800 (PST) Message-ID: <9c16502b0612170830i429441f7j78b955ffa1a50de4@mail.gmail.com> Date: Sun, 17 Dec 2006 11:30:08 -0500 From: "Isaac Waldron" To: freebsd-x11@freebsd.org In-Reply-To: <45853109.5040208@alqualonde.org> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <9c16502b0612131708r365b8ccew72e936bc67dada60@mail.gmail.com> <4581AA17.3080501@gaspode.franken.de> <4581B846.50200@voicenet.com> <9c16502b0612141458o75c27495k4b72bd1f56b21f55@mail.gmail.com> <9c16502b0612160910g5eba0982sbc4c52306e0d1b89@mail.gmail.com> <45853109.5040208@alqualonde.org> Subject: Re: 6.2-PRE, AGP X800, and Modular Xorg == No DRI? 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, 17 Dec 2006 16:30:12 -0000 Yongjhen, Your patch worked for me. This is the patch I applied to get radeon_drv to report that it couldn't find drmAvailable: --- src/radeon_dri.c.orig Tue Oct 3 10:49:13 2006 +++ src/radeon_dri.c Sun Dec 17 10:57:43 2006 @@ -1215,8 +1215,18 @@ /* Check that the GLX, DRI, and DRM modules have been loaded by testing * for known symbols in each module. */ - if (!xf86LoaderCheckSymbol("GlxSetVisualConfigs")) return FALSE; - if (!xf86LoaderCheckSymbol("drmAvailable")) return FALSE; + if (!xf86LoaderCheckSymbol("GlxSetVisualConfigs")) { + xf86DrvMsg(pScrn->scrnIndex, X_ERROR, + "[dri] RADEONDRIGetVersion failed (libglx.a too old)\n" + "[dri] Disabling DRI.\n"); + return FALSE; + } + if (!xf86LoaderCheckSymbol("drmAvailable")) { + xf86DrvMsg(pScrn->scrnIndex, X_ERROR, + "[dri] RADEONDRIGetVersion failed (libdrm.a too old)\n" + "[dri] Disabling DRI.\n"); + return FALSE; + } if (!xf86LoaderCheckSymbol("DRIQueryVersion")) { xf86DrvMsg(pScrn->scrnIndex, X_ERROR, "[dri] RADEONDRIGetVersion failed (libdri.a too old)\n" Isaac On 12/17/06, Yong-Jhen Hong wrote: > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA1 > > Isaac Waldron wrote: > > Upon further debugging, it appears that RADEONDRIGetVersion is failing > > due to symbol "drmAvailable" not being found. This was silently > > failing, so I added a call to xf86DrvMsg to make it speak up. > > > > Now, drmAvailable appears to be part of the libdrm port, of which I > > have version 2.3.0 installed. Apparently, Xorg is not loading > > libdrm.so for some reason? libdrm.so is located in /usr/local/lib, is > > there something special I need to do to get Xorg to pull this in? > > > > Isaac > > > > I have similar problem. > I find that after X server dlopen(3) the extension libdri.so with > option RTLD_GLOBAL, the symbols in libdrm.so which it depends on > cannot be accessed using dlsym(3), neither via the reference to > libdri.so, nor the reference to the global scope. > > I have this little patch to make it work, but it seems not a best > way to do so. > > - --- hw/xfree86/loader/dlloader.c.orig Sun Dec 10 20:07:20 2006 > +++ hw/xfree86/loader/dlloader.c Sun Dec 10 20:07:38 2006 > @@ -120,7 +120,7 @@ > } > > if (!global_scope) > - - global_scope = dlopen(NULL, DLOPEN_LAZY | DLOPEN_GLOBAL); > + global_scope = RTLD_DEFAULT; > > if (global_scope) > return dlsym(global_scope, name); > > > Regards, > yongjhen > -----BEGIN PGP SIGNATURE----- > Version: GnuPG v1.4.6 (FreeBSD) > Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org > > iD8DBQFFhTEIMczB8rP/pbkRAu7jAJ4+QLaYkNNZyGnWZh0xsG2vk4C3TgCfWvn+ > v3rOMZIBs1CFlOaKDID8WU0= > =odwC > -----END PGP SIGNATURE----- > -- Isaac Waldron isaac.waldron@gmail.com home: 781-365-0272 mobile: 1-508-353-3453