strange behavior of sk_rmem_alloc

sugnan prabhu sugnan.prabhu at
Tue Dec 28 23:36:04 EST 2010


    The issue got resolved the skb references were not handled properly, now
its working fine after correcting few handling. Thank you

On Wed, Dec 29, 2010 at 9:34 AM, sugnan prabhu <sugnan.prabhu at>wrote:

> Hello all,
>        I have written a network driver, address family and a protocol
> family, when i create a socket in a user space program to my PF and AF, it
> receives only first 300 packets and i see that all the packets are being
> received till the function sk_recieve_skb() is called.
>       When i tried searching for the root of the cause, i found that *sk_rcvqueues_full(sk,skb)
> *returns true after receiving 300 packets, further observing the cause i
> found that the variable *sk_rmem_alloc* which is being checked in the
> function in never getting decremented.
> <>In
> the above link i found that some one had similar problem, and as it says
> calling *skb_copy_datagram_iovec()* should decrement the *sk_rmem_alloc*,
> am even doing that. So can some suggest what can be the problem. One more
> strange thing is *sk_queue_empty(&sk->receive_queue)* start returning true
> after 300 packet.
> ---------------------------------------------------
> Thanking You,
> Sugnan Prabhu S
-------------- next part --------------
An HTML attachment was scrubbed...

More information about the Kernelnewbies mailing list