From: Jia-Ju Bai <baijiaju1...@gmail.com>
Date: Tue,  8 Jan 2019 20:45:18 +0800

> In drivers/net/ethernet/nvidia/forcedeth.c, the functions
> nv_start_xmit() and nv_start_xmit_optimized() can be concurrently
> executed with nv_poll_controller().
> 
> nv_start_xmit
>   line 2321: prev_tx_ctx->skb = skb;
> 
> nv_start_xmit_optimized
>   line 2479: prev_tx_ctx->skb = skb;
> 
> nv_poll_controller
>   nv_do_nic_poll
>     line 4134: spin_lock(&np->lock);
>     nv_drain_rxtx
>       nv_drain_tx
>         nv_release_txskb
>           line 2004: dev_kfree_skb_any(tx_skb->skb);
> 
> Thus, two possible concurrency use-after-free bugs may occur.

I do not think so, the netif_tx_lock_bh() done will prevent the parallel
execution.

Reply via email to