igb: Free any held skb that should have been timestamped on remove
To prevent a race condition where an skb has been saved to return the Tx timestamp later and the driver is removed, add a check to determine if we have an skb stored and, if so, free it. Cc: Richard Cochran <richardcochran@gmail.com> Signed-off-by: Matthew Vick <matthew.vick@intel.com> Acked-by: Jacob Keller <Jacob.e.keller@intel.com> Tested-by: Aaron Brown <aaron.f.brown@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
This commit is contained in:
Родитель
fc58075116
Коммит
badc26dd64
|
@ -856,6 +856,10 @@ void igb_ptp_stop(struct igb_adapter *adapter)
|
||||||
}
|
}
|
||||||
|
|
||||||
cancel_work_sync(&adapter->ptp_tx_work);
|
cancel_work_sync(&adapter->ptp_tx_work);
|
||||||
|
if (adapter->ptp_tx_skb) {
|
||||||
|
dev_kfree_skb_any(adapter->ptp_tx_skb);
|
||||||
|
adapter->ptp_tx_skb = NULL;
|
||||||
|
}
|
||||||
|
|
||||||
if (adapter->ptp_clock) {
|
if (adapter->ptp_clock) {
|
||||||
ptp_clock_unregister(adapter->ptp_clock);
|
ptp_clock_unregister(adapter->ptp_clock);
|
||||||
|
|
Загрузка…
Ссылка в новой задаче