• Jacob Keller's avatar
    fm10k: fix incorrect free on skb in ts_tx_enqueue · c23544b1
    Jacob Keller authored
    This patch resolves a bug in the ts_tx_enqueue code responsible for a
    NULL pointer dereference and invalid access of the skb list. We
    incorrectly freed the actual skb we found instead of our copy. Thus the
    skb queue is essentially invalidated. Resolve this by freeing our clone
    in the cases where we did not add it to the queue. This also avoids the
    skb memory leak caused by failure to free the clone.
    
    [  589.719320] BUG: unable to handle kernel NULL pointer dereference at           (null)
    [  589.722344] IP: [<ffffffffa0310e60>] fm10k_ts_tx_subtask+0xb0/0x160 [fm10k]
    [  589.723796] PGD 0
    [  589.725228] Oops: 0000 [#1] SMP
    Signed-off-by: default avatarJacob Keller <jacob.e.keller@intel.com>
    Tested-by: default avatarKrishneil Singh <Krishneil.k.singh@intel.com>
    Signed-off-by: default avatarJeff Kirsher <jeffrey.t.kirsher@intel.com>
    c23544b1
fm10k_ptp.c 12.7 KB