2) just for the sake of deubuggin : can you allocate one skb only in
that module, comment the skb_free() call, perform insmod and
afterwards rmmod, and see if it crashes ?
Did that already ... Further more I have allocated 100 skb, did not free
them and the rmmod worked well - no crashes.
And I have also allocated the skb, and free it from the thread itself -
that also worked fine
----- Original Message -----
From: "Rami Rosen" <[EMAIL PROTECTED]>
To: "Chava Leviatan" <[EMAIL PROTECTED]>
Cc: <linux-il@linux.org.il>
Sent: Saturday, October 07, 2006 7:46 AM
Subject: Re: netif_rx and dev stack
Chava ,
, when i do the rmmod the machine crashes , i.e., performs a reset !!
1) - when there is such reset , is there antyhing written in the kernel
log ?
can you please check and post it ?
2) just for the sake of deubuggin : can you allocate one skb only in
that module, comment the skb_free() call, perform insmod and
afterwards rmmod, and see if it crashes ?
Regards,
Rami Rosen
On 10/5/06, Chava Leviatan <[EMAIL PROTECTED]> wrote:
Hello,
I have a 2.4.18 machine with 2 ethernet interfaces.
I am trying to simulate a scenario where packet has just arrived from one
interface and going to the other.
I have build a kernel module that runs a kernel thread. That kernel
thread
is invoked every second, and then
it does the following ;
- alloc_skb
- Fill the proper sk_buff fields
- Fill IP header fields
- Fill ICMP header fields
- skb_put with the data length
- call to netif_rx
I am able to see the packets with ethreal (on the correct interface). I
have
also put some debug prints into the
kernel code (dev.c) and I am able to see those packets getting into
__kfree_skb.
However, when i do the rmmod the machine crashes , i.e., performs a reset
!!
When I remove the netif_rx the rmmod returns ok.
Can anyone please explain why does it crash ??
Any help is apreciated,
Thanks,
Chava
=================================================================
To unsubscribe, send mail to [EMAIL PROTECTED] with
the word "unsubscribe" in the message body, e.g., run the command
echo unsubscribe | mail [EMAIL PROTECTED]