lkml.org 
[lkml]   [2016]   [Jan]   [18]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH] af_packet: Raw socket destruction warning fix
    Date
    Receieve queue is not purged when socket dectruction is called
    results in kernel warning because of non zero sk_rmem_alloc.

    WARNING: at net/packet/af_packet.c:1142 packet_sock_destruct

    Backtrace:
    WARN_ON(atomic_read(&sk->sk_rmem_alloc)
    packet_sock_destruct
    __sk_free
    sock_wfree
    skb_release_head_state
    skb_release_all
    __kfree_skb
    net_tx_action
    __do_softirq
    run_ksoftirqd

    Signed-off-by: Vaneet Narang <v.narang@samsung.com>
    Signed-off-by: Maninder Singh <maninder1.s@samsung.com>
    ---
    net/packet/af_packet.c | 1 +
    1 file changed, 1 insertion(+)

    diff --git a/net/packet/af_packet.c b/net/packet/af_packet.c
    index 81b4b81..bcb37ba 100644
    --- a/net/packet/af_packet.c
    +++ b/net/packet/af_packet.c
    @@ -1310,6 +1310,7 @@ static bool packet_rcv_has_room(struct packet_sock *po, struct sk_buff *skb)

    static void packet_sock_destruct(struct sock *sk)
    {
    + skb_queue_purge(&sk->sk_receive_queue);
    skb_queue_purge(&sk->sk_error_queue);

    WARN_ON(atomic_read(&sk->sk_rmem_alloc));
    --
    1.7.9.5

    \
     
     \ /
      Last update: 2016-01-18 07:41    [W:8.143 / U:0.008 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site