I am currently working on a ATM driver for a 2.4 linux kernel (2.4.0-test9). I allocate a socket buffer within my receive interrupt routine and fill the buffer with my received data. Upon finishing of the necessary processing I do a vcc->push(vcc,skb) to pass the skb to the protocol. I have a userland routine that is writing to the driver but not reading from it (my device is looped back). When I go to remove the module I get a segmentation fault. Is this due to the socket buffer never being read and my module being removed? If I never allocate the skb (i.e. essentially stub out my rx irq routine), I can unload the module with no problems.... Is there something that I need to do to fix this upon removing my module? Any insights would be greatly appreciated... Thanks, Jeff Harrell -- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Jeff Harrell Work: (801) 619-6104 Broadband Access group/TI jharrell@ti.com ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
begin:vcard n:Harrell;Jeff tel;cell:(801) 597-6268 tel;fax:(801) 619-6150 tel;work:(801) 619-6104 x-mozilla-html:TRUE url:http://www.ti.com org:Broadband Access Group version:2.1 email;internet:jharrell@ti.com title:Texas Instruments adr;quoted-printable:;;170 West Election Rd. Suite 100 =0D=0AMS 4106 ;Draper;Utah;84020-6410;USA x-mozilla-cpt:;0 fn:Jeff Harrell end:vcard