6.2-PRE, AGP X800, and Modular Xorg == No DRI?

Marat N.Afanasyev amarat at ksu.ru
Thu Jan 4 06:43:56 PST 2007


Isaac Waldron wrote:
>> 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

this patch seems to hang my x700 again :( but< if I set 
LD_PRELOAD=/usr/local/lib/libdrm.so before starting xorg, direct 
rendering works at least for 'root'. Any other user cannot use DRI at all.

-- 
SY, Marat


More information about the freebsd-x11 mailing list