On Wed, Mar 22, 2006 at 06:57:17PM -0800, Mark Vojkovich wrote: > I can't get CVS to load NVIDIA's GLX module. It complains: > >(II) Loading /usr/X11R6/lib/modules/extensions/libglx.so >(EE) LoadModule: Module glx does not have a glxModuleData data object. >(II) UnloadModule: "glx" > >Did something change with regards to this? It was working before >I updated. dlopen modules have always had different semantics than XFree86 modules. These differences will only get greater as additional features are added to the XFree86 loader and as the newly added features are used more widely. The following (untested) patch may solve this particular problem. Let me know how it goes. David -- David Dawes X-Oz Technologies www.XFree86.org/~dawes www.x-oz.com
Index: loadmod.c =================================================================== RCS file: /home/x-cvs/xc/programs/Xserver/hw/xfree86/loader/loadmod.c,v retrieving revision 1.78 diff -u -r1.78 loadmod.c --- loadmod.c 16 Mar 2006 16:50:34 -0000 1.78 +++ loadmod.c 23 Mar 2006 03:29:57 -0000 @@ -1084,6 +1084,10 @@ ret->filename = xstrdup(found); + /* This is needed for dlopen modules. */ + if (!initdata) + initdata = LoaderSymbol(MODULE_DATA_NAME); + if (initdata) { ModuleSetupProc setup; ModuleTearDownProc teardown;