El vie, 06-04-2012 a las 09:57 +0200, Juan Antonio escribió: > El 05/04/12 19:06, Camaleón escribió: > > El Thu, 05 Apr 2012 13:43:44 -0300, Gonzalo Rivero escribió: > > > >> El jue, 05-04-2012 a las 16:32 +0000, Camaleón escribió: > >>> El Thu, 05 Apr 2012 16:52:12 +0200, Juan Antonio escribió: > > > > (...) > > > >>>> Por último, lo que te comentaba antes era que tu misma añadieses al > >>>> parche un printk, que es un como un printf de libc de toda la vida, > >>>> > >>>> http://www.kernel-labs.org/?q=printk > >>>> > >>>> en la función init_module(), que es la que se llama cuando cargas el > >>>> módulo. > >>> > >>> Huys, no entiendo ni jota. Voy a ver si logro sacar algo útil del > >>> "objdump" que me parece más asequible :-) > >>> > >> esto entendí yo: en algún lugar del módulo hay una init_module() (man 2 > >> init_module), en ese tal lugar podés agregar algo como: > >> printk(KERN_WARNING "Hola mundo!\n"); > > > > ¿Del archivo "main.c" que tengo que modificar? > > > > No, no aparece ninguna llamada a la función "init_module", un grep me > > devuelve esa cadena ("init_module") en un archivo "*.o", binario. > > > > ¿Dónde tendría que poner el "printk"? :-? > > > >> y recompilarlo. Entonces, al cargarse, el módulo debería mostrarte en > >> dmesg (o similares) un: Hola mundo! > >> > >> Y esa sería tu huella para saber que tenés el módulo modificado > > > > Ya lo pillo... y la idea es buena pero no sé cómo llevarla a la práctica. > > Y por que no comparas el amodulo anterio con el nuevo generado, si son iguales no se aplico el parche
Podes compara los fuentes con diff o los binarios con rdiff > > Saludos, > > > > > perdona camaleon, lo de init_module parece que ha cambiado, asi lo > recordaba yo del 2.4 > > Busca en el código la llamada a module_init(). Como parámetro lleva el > numbre de una función y ahora esa función es el punto de entrada del > código del módulo. > > Por ejemplo de bsr.c > > [ código ] > > static int __init bsr_init(void) <------- * > { > struct device_node *np; > dev_t bsr_dev; > > [ mas código ] > > } > > [ mas código aun ] > > module_init(bsr_init); <----- * Esta > module_exit(bsr_exit); > > > Y dentro de la función escribes el printk que te ha dicho Gonzalo. > > Lo siento, un saludo. > > -- > "Tanto en los deportes como en todo lo demás, soy un experto. Pero para > mantener viva mi inteligencia natural y fuera de serie, tengo que comer > mucho" > > -- To UNSUBSCRIBE, email to debian-user-spanish-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/1333752643.2526.1.ca...@gabita2.angel-alvarez.com.ar