Gurol, On Mon, 01 Sep 2003, Gurol Akman wrote:
> my attempts to use 'insmod' i.s.o. 'modprobe' also fail. 'insmod -f' doesn't > help either... i know that i update my kernel image from 2.2.20 to 2.4.20 Stop right there. You upgraded a kernel on a 2.2 system to 2.4.20? You need gcc 2.95.3, make 3.77, binutils 2.9.1.0.25, util-linux 2.10o, and -- perhaps most important to your situation -- modutils 2.4.2. An old modutils would never load the newer module. Did you upgraed your tool chain as described in linux-2.4/Documentation/Changes? --brian > properly and boot from the new image but perhaps i need to do additional > things re: header files, etc. i'll check the debian forum re: kernel > upgrades. so let's put this problem on hold for the moment. > > to be able to continue my work for now, i switched from 'loadable' to > 'linked in' drivers and was able to install my streams-xyz driver w/o any > problems. but then i hit on another problem as follows... > > i have an internal library (e.g., libcmn.a) which contains a set of > kernel-space functions. since these functions are used by many of my > drivers, i link all my drivers with this library at compile/link time. if i > try to configure 2 of my drivers (i.e., streams-abc, streams-xyz) as linked > in drivers (i.e., by creating the appropriate /usr/src/LiS/pkg > sub-directories and Config, Makefile, driver.o files), and do a 'make > install' i run into multiple definition problems re: some functions listed > in the libcmn.a library. i also get additional complaints re: multiple > definition of vsprintf and sprintf functions. as a result, i'm unable to get > my 2 drivers installed at the same time. > > 1. how can resolve multiple definition problems caused by libcmn.a routines? > > 2. what causes sprintf/vsprintf multiple definition problems & how can i > alleviate them? > > thanks for any suggestions, > > gurol > > -----Original Message----- > From: Brian F. G. Bidulock [mailto:[EMAIL PROTECTED] > Sent: Sunday, August 31, 2003 12:39 AM > To: Gurol Akman > Cc: '[EMAIL PROTECTED]' > Subject: Re: [Linux-streams] dynamically loadable drivers > > > Gurol, > > Several things to check. Make sure that you have installed you kernel > and kernel modules properly. modprobe looks for modules by kernel version. > You can try 'insmod streams-xyz' instead of modprobe to see if it is > a kernel installation problem or not. If you get a version error from > 'insmod' try 'insmod -f streams-xyz'. > > --brian > > On Sat, 30 Aug 2003, Gurol Akman wrote: > > > 1. disabled the version checks and rebuilt the 2.4.20 kernel. > > 2. rebooted my machine with the new kernel. > > 3. compiled LiS 2.16.12 from scratch. > > 4. removed -DMODVERSIONS flag and recompiled my driver. > > 5. did 'streams start' > > 6. did 'modprobe streams-xyz' > > > > I still get the same complaint re: kernel version not found. This doesn't > > make sense!!! I was expecting modprobe to skip any version checks; > > apparently it doesn't. I noted that LiS detects the kernel change I made > and > > does not use the -DMODVERSIONS flag when compiling its sub components. It > > looks like 'modprobe' didn't take the change I made into account however. > > > > I looks like there's no way for me to load my driver dynamically -- > > regardless of version checks being enabled or disabled in the kernel. Any > > other suggestions to get this functionality to work? Thanks, > > > > Gurol > > > > -----Original Message----- > > From: Brian F. G. Bidulock [mailto:[EMAIL PROTECTED] > > Sent: Saturday, August 30, 2003 9:24 PM > > To: Gurol Akman > > Cc: '[EMAIL PROTECTED]' > > Subject: Re: [Linux-streams] dynamically loadable drivers > > > > > > Gurol, > > > > Do you have the following at the top of your driver? > > > > #include <linux/config.h> > > #include <linux/version.h> > > #ifdef MODVERSIONS > > #include <linux/modversions.h> > > #endif > > #include <linux/module.h> > > > > that might help. I find that kernel symbol and module versions cause more > > grief than good during developement and I usually turn them off in my > > development kernels. > > > > --brian > > > > On Sat, 30 Aug 2003, Gurol Akman wrote: > > > > > i believe so brian... > > > > > > debian 3.0 comes with 2.2.20 kernel; i then installed & compiled 2.4.20 > > > kernel under /usr/src/linux and upgraded my system from 2.2.20 to > 2.4.20. > > i > > > then compiled & installed LiS 2.16.12. finally, i compiled my driver on > > this > > > system and try to load it. this is when i get the errors listed. do you > > see > > > anything incorrect in this sequence of events? thanks, > > > > > > gurol > > > > > > -----Original Message----- > > > From: Brian F. G. Bidulock [mailto:[EMAIL PROTECTED] > > > Sent: Saturday, August 30, 2003 12:37 AM > > > To: Gurol Akman > > > Cc: '[EMAIL PROTECTED]' > > > Subject: Re: [Linux-streams] dynamically loadable drivers > > > > > > > > > Gurol, > > > > > > Did you compile your streams module with the same kernel header files as > > > you compiled the kernel? > > > > > > --brian > > > > > > On Fri, 29 Aug 2003, Gurol Akman wrote: > > > > > > > > > > > When I try to use 'modprobe' to load my driver, i get the > > following > > > > errors: > > > > > > > > > > > > > > > > couldn't find the kernel version the module was compiled for > > > > > > > > insmod /lib/modules/2.4.20/misc/streams-xyz.o failed > > > > > > > > > > > > > > > > 1. I've compiled my driver with the -DMODULE and -DMODVERSIONS > flags. > > > > > > > > 2. I have the init_module() and cleanup_module() calls defined in > > my > > > > driver code. > > > > > > > > 3. I'm using LiS 2.16.2 under Debian 3.0 with a kernel upgrade > > (i.e., > > > > 2.4.20). > > > > > > > > > > > > > > > > Any ideas about what I may be missing or doing wrong? Thanks much, > > > > > > > > > > > > > > > > Gurol > > > > > > -- > > > Brian F. G. Bidulock � The reasonable man adapts himself to the � > > > [EMAIL PROTECTED] � world; the unreasonable one persists in � > > > http://www.openss7.org/ � trying to adapt the world to himself. � > > > � Therefore all progress depends on the � > > > � unreasonable man. -- George Bernard Shaw � > > > > -- > > Brian F. G. Bidulock � The reasonable man adapts himself to the � > > [EMAIL PROTECTED] � world; the unreasonable one persists in � > > http://www.openss7.org/ � trying to adapt the world to himself. � > > � Therefore all progress depends on the � > > � unreasonable man. -- George Bernard Shaw � > > -- > Brian F. G. Bidulock � The reasonable man adapts himself to the � > [EMAIL PROTECTED] � world; the unreasonable one persists in � > http://www.openss7.org/ � trying to adapt the world to himself. � > � Therefore all progress depends on the � > � unreasonable man. -- George Bernard Shaw � -- Brian F. G. Bidulock � The reasonable man adapts himself to the � [EMAIL PROTECTED] � world; the unreasonable one persists in � http://www.openss7.org/ � trying to adapt the world to himself. � � Therefore all progress depends on the � � unreasonable man. -- George Bernard Shaw � _______________________________________________ Linux-streams mailing list [EMAIL PROTECTED] http://gsyc.escet.urjc.es/mailman/listinfo/linux-streams
