Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 8d4ade28 authored by Eric W. Biederman's avatar Eric W. Biederman
Browse files

wlags49_h2: Call dev_kfree/consume_skb_any instead of dev_kfree_skb.



Replace dev_kfree_skb with dev_consume_skb_any in wl_send and
wl_send_dma which can be called in hard irq and other contexts,
on the code paths where the skb was transmitted successfully.

Replace dev_kfree_skb with dev_kfree_skb_any in wl_send_dmay which can
be called in hard irq and other contexts, on the code path where a
skb is dropped.

Signed-off-by: default avatar"Eric W. Biederman" <ebiederm@xmission.com>
parent 979de8a0
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -715,7 +715,7 @@ int wl_send( struct wl_private *lp )

        /* Free the skb and perform queue cleanup, as the buffer was
            transmitted successfully */
        dev_kfree_skb( lp->txF.skb );
        dev_consume_skb_any( lp->txF.skb );

        lp->txF.skb = NULL;
        lp->txF.port = 0;
@@ -1730,7 +1730,7 @@ int wl_send_dma( struct wl_private *lp, struct sk_buff *skb, int port )
            WL_WDS_NETIF_STOP_QUEUE( lp );
            lp->netif_queue_on = FALSE;

            dev_kfree_skb( skb );
            dev_kfree_skb_any( skb );
            return 0;
        }
    }
@@ -1755,7 +1755,7 @@ int wl_send_dma( struct wl_private *lp, struct sk_buff *skb, int port )

    /* Free the skb and perform queue cleanup, as the buffer was
            transmitted successfully */
    dev_kfree_skb( skb );
    dev_consume_skb_any( skb );

    return TRUE;
} // wl_send_dma