El mié, 08-10-2008 a las 20:23 -0400, Marvin Stodolsky escribió: > RE: Invalid module format > This is unusally do to a mismatch between compilers used to assemble > the kernel and modules. Compare the versions reported by: > $ gcc --version > and > $ cat /proc/version ---- root@emma:/usr/src/agrsm-20080808# gcc --version gcc (Ubuntu 4.3.2-1ubuntu9) 4.3.2 ... root@emma:/usr/src/agrsm-20080808# cat /proc/version Linux version 2.6.27-6-generic (buildd@palmer) (gcc version 4.3.2 (Ubuntu 4.3.2-1ubuntu9) ) #1 SMP Tue Oct 7 04:15:04 UTC 2008 ---- As shown I'm using for building agrsoftmodem the exact version of gcc that was used for build the current kernel. In fact, I had to build the alsa modules to patch hda_codec.c and the patches modules are workig ok, ie: I'm hearing music and modinfo snd-hda-intel refers to the patched version. ¿Do you think it has something to do with the included agrmodemlib.o? Regards, maykel PD: Find attached a little patch to make agrsm-20080808 build for 2.6.27. For the replacement for kill_proc I follow the patch attached in http://tinyshell.be/aircrackng/forum/index.php?topic=1824.msg23612#msg23612
--- agrsm-20080808.orig/agrsoftmodem.c 2008-09-26 14:55:53.000000000 -0400 +++ agrsm-20080808/agrsoftmodem.c 2008-10-08 20:04:54.000000000 -0400 @@ -316,7 +316,7 @@ fnatr int x_memcmp (const void *ptr1, const void *ptr2, int len) { return (memcmp (ptr1, ptr2, len)); } fnatr unsigned char x_isprint (char c) { return(isprint (c)); } fnatr unsigned char x_toupper (char c) { return toupper (c); } -fnatr int kill_proc_wrap(pid_t pid, int sig, int opt) { return (kill_proc(pid, sig, opt));} +fnatr int kill_proc_wrap(pid_t pid, int sig, int opt) { return (send_sig(sig, pid, opt));} fnatr int x_sprintf(char * buf, const char * fmt, ...) { va_list args; --- agrsm-20080808.orig/serial26.c 2008-07-09 08:54:17.000000000 -0400 +++ agrsm-20080808/serial26.c 2008-10-08 20:06:16.000000000 -0400 @@ -987,7 +987,7 @@ static _INLINE_ void receive_chars(struct uart_8250_port *up, int *status, struct pt_regs *regs) { - struct tty_struct *tty = up->port.info->tty; + struct tty_struct *tty = up->port.info->port.tty; unsigned char ch, lsr = *status; int max_count = 256; char flag;