I have linux-source-2.6.35 package installed. But is look like it has only compressed source. I don't know how to use is to build module. Could you suggest me what should I do to build this module using particular source? Thanks. > The "Invalid Module Format" error suggests the modules have not been > compiled correctly for the current kernel for whatever reason. > > It's probably been said before, but double-check that you have the > kernel sources installed for the currently running kernel. Kernel > headers alone may not be sufficient. > > I have no experience with these drivers on 2.6.35, as my distro is not > scheduled for a release until late spring. (I'm only on 2.6.34). > > Bjorn. > > On 01/24/2011 05:42 PM, Vitaliy Aksyonov wrote: > > Hello. > > > > I've tried to force load compiled module and got another error: > > > > $ sudo modprobe -f agrmodem > > FATAL: Error inserting agrmodem (/lib/modules/2.6.35-25-generic/updates/dkms/agrmodem.ko): Invalid module format > > > > I read in the archive that this error could appear when kernel an module compiled by different compilers, but it looks like versions are the same: > > > > $ cat /proc/version > > Linux version 2.6.35-25-generic (buildd@roseapple) (gcc version 4.4.5 (Ubuntu/Linaro 4.4.4-14ubuntu5) ) #43-Ubuntu SMP Thu Jan 6 22:25:16 UTC 2011 > > $ gcc --version > > gcc (Ubuntu/Linaro 4.4.4-14ubuntu5) 4.4.5 > > Copyright (C) 2010 Free Software Foundation, Inc. > > This is free software; see the source for copying conditions. There is NO > > warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. > > > > Could you please suggest something else? > > > > Thanks, > > Vitaliy > > > >> This happens on some systems -- you can try to manually load the driver > >> with modprobe, and use the -f flag to force (since we don't use the USB > >> parts anyway. (i.e. modprobe -f agrmodem). > >> > >> Beware that it may crash your system, so don't leave anything important > >> running for this test! > >> > >> Alas it's been a while since I've dealt with the agrsm code (we now have > >> high-speed here), so I'm afraid I probably won't be of much help. > >> > >> Bjorn. > >> > >> > >> On 01/21/2011 10:19 AM, Marvin Stodolsky wrote: > >>> Bjorn > >>> > >>> Could you perhaps help with the required fix > >>> > >>> MarvS > >>> > >>> On Tue, Jan 18, 2011 at 1:46 PM, Vitaliy Aksyounov > >>> <vitaliy.aksyonov@xxxxxxxxx> wrote: > >>>> Ubuntu 10.10 has linux-headers-2.6.35-24-generic > >>>> (http://packages.ubuntu.com/maverick/linux-headers-generic) which is almost > >>>> the same as 25 version. > >>>> 'usb_buffer_alloc' and 'usb_buffer_free' functions were renamed in 2.6.35 > >>>> kernel version > >>>> (http://www.kernel.org/pub/linux/kernel/v2.6/ChangeLog-2.6.35). > >>>> You can get 25 version of headers here: > >>>> http://archive.ubuntu.com/ubuntu/pool/main/l/linux/linux-headers-2.6.35-25-generic_2.6.35-25.43_i386.deb > >>>> > >>>> I tried to fix errors and this is what I got. > >>>> > >>>> When I renamed these usb functions ('usb_buffer_alloc' and > >>>> 'usb_buffer_free') in source, I got another error: > >>>> FATAL: modpost: GPL-incompatible module agrmodem.ko uses GPL-only symbol > >>>> 'usb_put_dev' > >>>> > >>>> OK. Patching... > >>>> patch < patches/GPL.patch > >>>> > >>>> It looks like compiled, but with warnings and this module couldn't be > >>>> loaded. Warnings are following: > >>>> > >>>> $ sudo make > >>>> make -C /lib/modules/2.6.35-25-generic/build > >>>> M=/usr/src/agrsm-11c11040-2.1.80 modules > >>>> make[1]: ÐÑÐÐ Ð ÐÐÑÐÐÐÐ `/usr/src/linux-headers-2.6.35-25-generic' > >>>> CC [M] /usr/src/agrsm-11c11040-2.1.80/agrsoftmodem.o > >>>> /usr/src/agrsm-11c11040-2.1.80/agrsoftmodem.c: In function > >>>> âx_linux_dbg_print_critâ: > >>>> /usr/src/agrsm-11c11040-2.1.80/agrsoftmodem.c:358: warning: the frame size > >>>> of 1540 bytes is larger than 1024 bytes > >>>> /usr/src/agrsm-11c11040-2.1.80/agrsoftmodem.c: In function > >>>> âx_linux_dbg_printâ: > >>>> /usr/src/agrsm-11c11040-2.1.80/agrsoftmodem.c:346: warning: the frame size > >>>> of 1540 bytes is larger than 1024 bytes > >>>> SHIPPED /usr/src/agrsm-11c11040-2.1.80/agrmodemlib.o > >>>> CC [M] /usr/src/agrsm-11c11040-2.1.80/HDA.o > >>>> CC [M] /usr/src/agrsm-11c11040-2.1.80/serial26.o > >>>> LD [M] /usr/src/agrsm-11c11040-2.1.80/agrmodem.o > >>>> LD [M] /usr/src/agrsm-11c11040-2.1.80/agrserial.o > >>>> Building modules, stage 2. > >>>> MODPOST 2 modules > >>>> WARNING: could not find /usr/src/agrsm-11c11040-2.1.80/.agrmodemlib.o.cmd > >>>> for /usr/src/agrsm-11c11040-2.1.80/agrmodemlib.o > >>>> WARNING: "x_usb_buffer_alloc_atomic" > >>>> [/usr/src/agrsm-11c11040-2.1.80/agrmodem.ko] undefined! > >>>> WARNING: "x_usb_buffer_free" [/usr/src/agrsm-11c11040-2.1.80/agrmodem.ko] > >>>> undefined! > >>>> WARNING: "x_usb_buffer_free_ext" > >>>> [/usr/src/agrsm-11c11040-2.1.80/agrmodem.ko] undefined! > >>>> WARNING: "x_usb_buffer_alloc_kernel" > >>>> [/usr/src/agrsm-11c11040-2.1.80/agrmodem.ko] undefined! > >>>> CC /usr/src/agrsm-11c11040-2.1.80/agrmodem.mod.o > >>>> LD [M] /usr/src/agrsm-11c11040-2.1.80/agrmodem.ko > >>>> CC /usr/src/agrsm-11c11040-2.1.80/agrserial.mod.o > >>>> LD [M] /usr/src/agrsm-11c11040-2.1.80/agrserial.ko > >>>> make[1]: ÐÑÑÐÐ ÐÐ ÐÐÑÐÐÐÐÐ `/usr/src/linux-headers-2.6.35-25-generic' > >>>> > >>>> > >>>> > >>>> Error during modprobe: > >>>> $ sudo modprobe agrmodem > >>>> FATAL: Error inserting agrmodem > >>>> (/lib/modules/2.6.35-25-generic/extra/agrmodem.ko): Unknown symbol in > >>>> module, or unknown parameter (see dmesg) > >>>> > >>>> And from dmesg: > >>>> [ 1519.990664] agrmodem: Unknown symbol x_usb_buffer_alloc_kernel (err 0) > >>>> [ 1519.990925] agrmodem: Unknown symbol x_usb_buffer_free_ext (err 0) > >>>> [ 1519.991027] agrmodem: Unknown symbol x_usb_buffer_free (err 0) > >>>> [ 1519.991467] agrmodem: Unknown symbol x_usb_buffer_alloc_atomic (err 0) > >>>> > >>>> > >>>> I hope you help me build this driver. > >>>> > >>>> Regards, > >>>> Vitaliy > >>>> > >>>> > >>>> 18.01.2011 9:38, Vitaliy Aksyounov ÐÐÑÐÑ: > >>>> > >>>> This is from maverick-proposed repo. I'll try to disable this repo and > >>>> rollback to older kernel. > >>>> > >>>> 18.01.2011 3:37, Marvin Stodolsky ÐÐÑÐÑ: > >>>> > >>>> 2.6.35-25-generic, > >>>> > >>>> Where did you get the linux-headers-2.6.35-25-generic from. > >>>> I cannot find them through packages.ubuntu.com > >>>> > >>>> 2011/1/17 Vitaliy Aksyonov <gbmr@xxxx>: > >>>>> Hi all! > >>>>> > >>>>> I'm trying to install drivers for agrsm-11c11040 in Ubuntu 10.10 > >>>>> > >>>>> $ uname -a > >>>>> Linux ulaptop 2.6.35-25-generic #43-Ubuntu SMP Thu Jan 6 22:25:16 UTC 2011 > >>>>> i686 GNU/Linux > >>>>> > >>>>> I downloaded agrsm-11c11040_20091225_i386.deb, but when I'm trying to > >>>>> install it, I'm getting compilation error. > >>>>> Could you please help me? > >>>>> Thanks in advance. > >>>>> > >>>>> Output is following: > >>>>> > >>>>> $ sudo dpkg -i agrsm-11c11040_20091225_i386.deb > >>>>> [sudo] password for boomer: > >>>>> ÐÑÐÐÑ ÑÐÐÐÐ ÐÐ ÐÑÐÑÐÐÐÐÐÐ ÐÐÐÐÑÐ agrsm-11c11040. > >>>>> (ÐÑÐÐÐÐ ÐÐÐÑ ÐÐÐÐÑÑ ... ÐÐ ÐÐÐÐÑÐ ÐÐÐÐÐÑ ÑÑÑÐÐÐÐÐÐÐÐ 242817 ÑÐÐÐÐÐ Ð > >>>>> ÐÐÑÐÐÐÐÐÐ.) > >>>>> ÐÐÑÐÐÐÐÐÑÐÐÐÑÑÑ ÐÐÐÐÑ agrsm-11c11040 (ÐÐ ÑÐÐÐÐ > >>>>> agrsm-11c11040_20091225_i386.deb)... > >>>>> > >>>>> The DKMS driver autocompiling package is installed. > >>>>> The drivers source code is being installed to the folder > >>>>> /usr/src/agrsm-11c11040-2.1.80 > >>>>> Then the drivers will be compiled and installed by the dkms tool > >>>>> provided that your System has adequate compiling support. > >>>>> Following kernel upgrades, complementary drivers will be > >>>>> automatically compiled and installed. > >>>>> > >>>>> ÐÐÑÑÑÐÐÐÐÐÑÑÑ ÐÐÐÐÑ agrsm-11c11040 (20091225) ... > >>>>> > >>>>> kboot=2.6.35-25-generic > >>>>> > >>>>> DKMS support found. Attempting drivers compilation and installation using > >>>>> DKMS actions on: > >>>>> > >>>>> Creating symlink /var/lib/dkms/agrsm-11c11040/2.1.80/source -> > >>>>> /usr/src/agrsm-11c11040-2.1.80 > >>>>> > >>>>> DKMS: add Completed. > >>>>> > >>>>> Kernel preparation unnecessary for this kernel. Skipping... > >>>>> applying patch GPL.patch...patching file agrsoftmodem.c > >>>>> > >>>>> > >>>>> Building module: > >>>>> cleaning build area.... > >>>>> make KERNELRELEASE=2.6.35-25-generic -C > >>>>> /lib/modules/2.6.35-25-generic/build > >>>>> M=/var/lib/dkms/agrsm-11c11040/2.1.80/build....(bad exit status: 2) > >>>>> > >>>>> Error! Bad return status for module build on kernel: 2.6.35-25-generic > >>>>> (i686) > >>>>> Consult the make.log in the build directory > >>>>> /var/lib/dkms/agrsm-11c11040/2.1.80/build/ for more information. > >>>>> 0 > >>>>> 0 > >>>>> Traceback (most recent call last): > >>>>> File "/usr/share/apport/package-hooks/dkms.py", line 47, in <module> > >>>>> report['SourcePackage'] = apport.packaging.get_source(package) > >>>>> File "/usr/lib/python2.6/dist-packages/apport/packaging_impl.py", line > >>>>> 106, in get_source > >>>>> if self._apt_pkg(package).installed: > >>>>> File "/usr/lib/python2.6/dist-packages/apport/packaging_impl.py", line > >>>>> 66, in _apt_pkg > >>>>> raise ValueError, 'package does not exist' > >>>>> ValueError: package does not exist > >>>>> > >>>>> Error! Could not locate agrmodem.ko for module agrsm-11c11040 in the DKMS > >>>>> tree. > >>>>> You must run a dkms build for kernel 2.6.35-25-generic (i686) first. > >>>>> Installation of the agrsm-tools package is recommended, > >>>>> to set symbolic links and early testing. Obtain from > >>>>> http://linmodems.technion.ac.il/packages/ltmodem/11c11040/ > >>>>> > >>>>> > >>>>> ================================================================================================ > >>>>> $cd /var/lib/dkms/agrsm-11c11040/2.1.80/build > >>>>> $ cat make.log > >>>>> DKMS make.log for agrsm-11c11040-2.1.80 for kernel 2.6.35-25-generic > >>>>> (i686) > >>>>> ÐÑÐ ÐÐÐ 18 00:10:38 EET 2011 > >>>>> make: ÐÑÐÐ Ð ÐÐÑÐÐÐÐ `/usr/src/linux-headers-2.6.35-25-generic' > >>>>> LD /var/lib/dkms/agrsm-11c11040/2.1.80/build/built-in.o > >>>>> CC [M] /var/lib/dkms/agrsm-11c11040/2.1.80/build/agrsoftmodem.o > >>>>> /var/lib/dkms/agrsm-11c11040/2.1.80/build/agrsoftmodem.c: In function > >>>>> âx_usb_buffer_alloc_atomicâ: > >>>>> /var/lib/dkms/agrsm-11c11040/2.1.80/build/agrsoftmodem.c:586: error: > >>>>> implicit declaration of function âusb_buffer_allocâ > >>>>> /var/lib/dkms/agrsm-11c11040/2.1.80/build/agrsoftmodem.c:586: warning: > >>>>> return makes pointer from integer without a cast > >>>>> /var/lib/dkms/agrsm-11c11040/2.1.80/build/agrsoftmodem.c: In function > >>>>> âx_usb_buffer_alloc_kernelâ: > >>>>> /var/lib/dkms/agrsm-11c11040/2.1.80/build/agrsoftmodem.c:590: warning: > >>>>> return makes pointer from integer without a cast > >>>>> /var/lib/dkms/agrsm-11c11040/2.1.80/build/agrsoftmodem.c: In function > >>>>> âx_usb_buffer_freeâ: > >>>>> /var/lib/dkms/agrsm-11c11040/2.1.80/build/agrsoftmodem.c:595: error: > >>>>> implicit declaration of function âusb_buffer_freeâ > >>>>> make[1]: *** [/var/lib/dkms/agrsm-11c11040/2.1.80/build/agrsoftmodem.o] > >>>>> ÐÑÐÐÐÐ 1 > >>>>> make: *** [_module_/var/lib/dkms/agrsm-11c11040/2.1.80/build] ÐÑÐÐÐÐ 2 > >>>>> make: ÐÑÑÐÐ ÐÐ ÐÐÑÐÐÐÐÐ `/usr/src/linux-headers-2.6.35-25-generic' > >>>>> > >>>>> -- ÑÐÐÐÐÐÐ ----------------------------------------------------------- > >>>>> ÐÑÐ ÑÐÐÑÐÑ Ð ÐÐÐÐÑÐÐÑÑÐÑ? - http://kino.i.ua/ > >>>>> > >>>>> > >>>> > >>>> > >>>> > >>>> > >>> > > > > -- ÑÐÐÐÐÐÐ ----------------------------------------------------------- > > ÐÐÐÐÐÐÐ ÐÐ ÐÐÐÑÐÐÐÐ Ð ÐÐÑÐÑÐÐÑÐ? > > ÐÑÑÑÐÐ ÐÐÑÑÐ ÐÐÑ ÐÐÐÑÐÐÐ ÐÐÐÐÐÐ - http://aukro.ua > > > > -- ÑÐÐÐÐÐÐ ----------------------------------------------------------- ÐÐÐÐÐÐÐ ÐÐ ÐÐÐÑÐÐÐÐ Ð ÐÐÑÐÑÐÐÑÐ? ÐÑÑÑÐÐ ÐÐÑÑÐ ÐÐÑ ÐÐÐÑÐÐÐ ÐÐÐÐÐÐ - http://aukro.ua