[Xorg] debrix

Jakub Piotr Cłapa loc at toya.net.pl
Mon Jun 28 08:38:11 PDT 2004


Daniel Stone wrote:
> On Mon, Jun 28, 2004 at 05:09:30PM +0200, Jakub Piotr C?apa wrote:
> 
>>I was playing a bit more with the source and found out:
>>
>>- ati tries to load fbdevhw and fails. when i comment out
>>  radeon_driver.c:3991 it complains about missing vgaHWGetHWRec.
>>  'nm Xorg | grep vga' displays nothing.
>>  I don't really understand why symbols from scanpci are exported and
>>  those from vgahw aren't... They look identical to me (If they were we
>>  could just remove the line 3991 from radeon_driver or change
>>  xf86LoadSubModule so it would return TRUE for builtin modules)
> 
> It's because unused symbols are garbage-collected; to prevent this
> happening, put SYMFUNC(foo), or SYMVAR(foo) in loader/xf86sym.c,
> depending on whether it's a function or variable.

'cd debrix; grep -R ScanPciSetupPciIds *' doesn't show anything
connected with SYMFUNC :( I would have probably figured it out if it did.
Also grep -R SYMFUNC\|SYMVAR * doesn't show anything connected with
PciIds. Is there any other place it could get protected from garbage
collection?

>>- when I remove the pcidata from the baseModules list
>>  (hw/xorg/common/xf86Init.c:120) it catches SIGSEGV in
>>  x86pciBus.c:1732 - xf86SetupPciIds == NULL.
>>  It seems to work when we remove the conditional build (that is:
>>  sed -ie '1712,1723d;1730d;' x86pciBus.c)
> 
> pcidata needs to be a module, probably. Or retain all of its symbols.

The problem is that it retains (maybe not all, but all that are used
before loading libradeon.so which fails for me). I can't figure out how
however.

#v+
bash-2.05b# nm ../BUILD/debrix/hw/xorg/Xorg |grep ScanPci
080ad280 T DoScanPci
080c25d0 T ScanPciClosePciIds
080c2930 T ScanPciDisplayPCICardInfo
080c28c0 T ScanPciFindPciClassByDevice
080c2850 T ScanPciFindPciClassBySubsys
080c25e0 T ScanPciFindPciNamesByDevice
080c27a0 T ScanPciFindPciNamesBySubsys
080c25c0 T ScanPciSetupPciIds
#v-

>>Is there any use in me playing with this apart from learning (that's me) 
>>and loosing time (that's you)? :) I would love to help and learn 
>>something new (I've only played with simpler C programs before) but 
>>maybe it is not the right moment for this?
> 
> Sure - hopefully it'll be *the* new X server. Doesn't seem like the
> worst way to get into X development, either. :)

Cool! So I will continue. Beware! :D

-- 
Regards,
Jakub Piotr Cłapa





More information about the xorg mailing list