Messages in this thread Patch in this message | | | From | marshall.shao@dell ... | Subject | [PATCH] Fix kernel panic issue after removing igb driver | Date | Fri, 11 Aug 2023 20:02:25 +0800 |
| |
From: Marshall Shao <Marshall.Shao@dell.com>
This patch fixes a kernel panic issue after removing the igb driver from the usermode.
A delayed work will be schedule in igb_ptp_init(),
if (adapter->ptp_flags & IGB_PTP_OVERFLOW_CHECK) INIT_DELAYED_WORK(&adapter->ptp_overflow_work, igb_ptp_overflow_check);
If CONFIG_PTP_1588_CLOCK is not enabled, the delayed work cannot be cancelled when igb_ptp_suspend is called.
Signed-off-by: Marshall Shao <Marshall.Shao@dell.com> --- drivers/net/ethernet/intel/igb/igb_ptp.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/drivers/net/ethernet/intel/igb/igb_ptp.c b/drivers/net/ethernet/intel/igb/igb_ptp.c index 405886ee5261..b21822ea1c7d 100644 --- a/drivers/net/ethernet/intel/igb/igb_ptp.c +++ b/drivers/net/ethernet/intel/igb/igb_ptp.c @@ -1435,12 +1435,12 @@ void igb_ptp_sdp_init(struct igb_adapter *adapter) */ void igb_ptp_suspend(struct igb_adapter *adapter) { - if (!(adapter->ptp_flags & IGB_PTP_ENABLED)) - return; - if (adapter->ptp_flags & IGB_PTP_OVERFLOW_CHECK) cancel_delayed_work_sync(&adapter->ptp_overflow_work); + if (!(adapter->ptp_flags & IGB_PTP_ENABLED)) + return; + cancel_work_sync(&adapter->ptp_tx_work); if (adapter->ptp_tx_skb) { dev_kfree_skb_any(adapter->ptp_tx_skb); -- 2.34.1
| |